IT Life: Flying Free
Cocoon’s John Berthels talks smart homes, computing languages and what influences have shaped his IT Life
Tell us about your company and your areas of expertise?
I’m part of the founding team at Cocoon. We’re getting ready to ship our first product, an intelligent all-in-one home security device that uses sound to protect the entire home. We’ve developed and patented a technology called Subsound; a combination of infrasound detection, machine learning and other sensors. Cocoon uses this to identify the sound signature of your home, only alerting when an unusual event happens – effectively eliminating false alarms.
My job is to ensure the delivery of all application software: mobile apps, cloud services and device code. Fundamentally, I’m a developer. I like to write code, but at this point in the project my role is a lot broader!
What’s the favourite IT project that you’ve ever worked on?
Building Cocoon (pictured right) has involved some amazing pieces of work. It’s great fun as it touches on machine learning, signal processing, embedded programming, video streaming, mobile app development, cloud development and cloud deployment to name but a few.
One of my favourites was when some of the Cocoon founders and I worked together at cloud storage company Humyo. Post-acquisition by Trend Micro, our team did a live migration of our data centre from Manchester to Berlin. It involved making a copy of the petabytes of data needed, physically driving them across Europe, spinning up the copy and then sorting out the deferred replication, consistency and redundancy (with no downtime). Lots of fun.
As our team used to say, “Never underestimate the bandwidth of a station wagon full of tapes hurtling down the highway“ or an articulated lorry on the autobahn full of multi-terabyte hard drives…
What technologies were you involved with 10 years ago?
Fairly typically for the time, Humyo was heavily invested in an apache/mod_perl/sharded-mysql stack. It made use of a lot of the (often perl based) technologies produced by the inestimable Brad Fitzpatrick at Danga: memcached, gearman, perlbal, mogilefs.
We saw several benefits in having a single language (perl) used in our application code and through most of our infrastructure. perl is a great language, but trends do move on in our fashion-driven tech world. It’s still great technology
What do you expect to be using in 10 years’ time?
Language wise, I’m currently excited by and using golang. It gives me a ‘better C’, a nice approach to concurrency and is a simple language that can be easily picked up by new team members in a few days. In 10 years, I’d hope to be using a pure, functional, immutable-by-default language – perhaps clojure like – but I suspect I’m not smart enough…
Infrastructure wise, I think we’ll see the continued march of infrastructure abstraction and interoperability – platform as a service on steroids. Cloud apps will neither know nor care about any arbitrary limits or sizing and will shift to a pure ‘pay as you go’ kind of model. You won’t need details of operating system, geographic location, CPU architecture, instance sizes or anything else. Just some parameters about the kind of SLAs you’d like and a monetary limit on your account for the service you use.
What do you think is the greatest challenge for an IT company or department today?
I don’t know about the greatest challenge, but a new challenge is definitely managing the plethora of SaaS systems that make the day to day running of a small business much easier. They’re a great choice for bootstrapping a business, but many lack a federated account system. This can lead to an onboarding and user management nightmare.
To cloud or not to cloud?
It has to be cloud all the way. The exceptions are few. Perhaps if you have strict data ownership requirements then ‘not to’ is an option.
If you’re are at sufficient scale then owning your own ‘base load’ infrastructure and bursting spikes of load onto the cloud can make financial sense. However businesses would need to be sure to have a good team to ensure the uptime.
Who is your tech hero?
The internet means you’re faced with incredible examples day in day out. It can be dispiriting if you let it but there are some really inspirational projects and characters out there.
Brad Fitzpatrick who I mentioned earlier has achieved a great deal, and had plenty of interesting ideas in many areas. His recent work on camlistore is intriguing, and of course he is central to the golang language.
I’m also a huge fan of Kyle Kingsbury (aphyr) for his technical brilliance and uncompromising integrity. His Jepsen work is making the world of distributed systems better day by day.
What’s your favourite device ever made and what do you use the most?
Of course I have to say Cocoon. Seeing it come alive – turning from the initial design concepts into a running system sitting on my desk is magical.
However, the last time I was shocked by a piece of technology was installing my first SSD in my laptop. The difference in performance from a spinning drive was amazing. I still remember that the physical feel in my hand reminded me of the data-dense “biosoft” modules from William Gibson’s book Count Zero, providing enough storage to model a whole personality in one dense package.
Apart from your own, which company do you admire the most and why?
I admire the stockfighter/starfighter team, they’re are trying to do something useful (fix developer hiring) in an interesting way – providing fun and challenging programming games.
The previous hiring games produced by starfighter’s Thomas Ptacek (the cryptopals exercises and the microcorruption capture the flag style exploit game) were in my opinion the most fun you can have with a compiler. I look forward to having enough time to play around with stockfighter after Cocoon has launched.
What did you want to be when you were a child?
Probably a meteorologist. I envisaged having one of those big 70s era computers with flashing lights that could predict the weather and spit out the answers on big reel of tape with holes punched in it.
Or an astronaut. Something which, excitingly, is actually a viable ambition for my children, given the recent resurgence in rocketry. I’m hoping for a postcard from Mars one day.
John Berthels is head of software engineering at Cocoon.
What do you know about the Internet of Things? Take our quiz!