Recycling Software


Last week I upgraded my phone - just from an iPhone 6S to 7, so the differences are largely imperceptible. Still, I've had a week of my wife tutting me for swearing at an inanimate object as I try to come to terms with the idiosyncrasies of my new device.

At the same time we've been having a look at some issues a client was having with video playback and , just like pretty much everything else in life this days, I've come to the conclusion that you need to take your system to the tip occasionally and buy a new one, just like you do with your TV or phone, however frustrating and scary the prospect of change is.

In this instance old FFMPEG code meant that clips which were optimised six years ago are now looking pretty cruddy and not caching and rendering properly. We were able to fix the problem in a couple of hours and halved the file size for roughly the same quality, all using the latest version of the same product: that also means a substantial cost saving for the customer in storage fees.

This is the reason that we have pretty much rewritten our platform from scratch three times in nine years and will continue to do so.

The trouble is that the world doesn't sit still around you, so constant reinvention is required to take advantage of others' innovations and hard work.

Of course, this isn't always easy, especially with cloud software where you may have thousands of users live on the system you are improving. At TVE we talk about change the engines whilst the plane is still flying, and tackle it with the same diligence - safety, security and continuity of service are paramount.

But design plays its roll too. Separating out processes in a modular fashion so that they can be dismantled and rebuilt has other advantages such as being able to fix part of the system without affecting the whole. This isn't rocket science, but in reality takes a lot of thinking through to get right.

What I should have done with my phone is prepare a bit better and understood what the change would mean before diving into the EE store and then setting it up on the train on my way into London.

Thanks to using the cloud I am now able to move all of my work from one PC to another in under an hour, something that used to take me days a decade ago.

Likewise, moving your operations from desktop software into the cloud just takes some thinking through and planning and once you've done it your world will be a much better place. Until the next upgrade...