Although I’m one of the greatest supporters of the opensource movement, with the many opportunities for freedom it offers, I’m starting to think that the utopia of easily accessible source code might not be all that it seems.
Having spent over thirty years working as an engineer in the broadcast industry, I have witnessed at first hand a whole plethora of vendor specific control systems that made integration very difficult and almost impossible in some instances. The first automation systems required lots of reverse engineering of protocols, which could easily change with a new software release.
Linux was my first real step into the opensource community, and I remember well the nightmare of building and installing a full Linux desktop, but this was more to do with my lack of experience in making opensource code work than any reflection on Linux itself. In the days when ISDN was considered state-of-the-art, and a 40MB disk drive was futuristic, I persevered and after many days of modprob’ing and writing obscure config files in VI, I eventually got my Linux desktop machine fully operational.
After more hours than I care to think of installing various opensource software to get only to where I had been with Windows 98, I did discover the GNU opensource tool chain allowing me to write code in C for free! No expensive proprietary compilers! I should have known by this point that the documentation would have been sparse to say the least and it took me even more hours to write the obligatory “Hello World” program.
The founder of the Free Software Foundation Dr Stallman tells us, free software is “free” as in “free speech”, not “free beer”. In my view, opensource code is all about education, learning and expanding human knowledge. Yes, the vast majority of internet servers run Linux, but it’s Linux that is heavily supported by some big vendors providing enterprise versions who not only provide an “out of the box” solution, but also make sure the code version you have is secure. When you download opensource programs, do you really check every line of code? Even if you did, would you know what a buffer overrun vulnerability looked like?
This leads us to an interesting question; what is the difference between a closed system and opensource software for businesses? I believe it's not the cost as I bet when you’ve really factored in all the hours taken to make opensource code work then it’s not going to be much different from that charged by an opensource enterprise vendors.
Why do you want the source code? To protect yourself and make your infrastructure future-proof? If you’ve ever tried compiling source code from scratch, then you’ll know the answer to this.
If, as an alternative, vendors provide routes into their designs through API’s and licensed third parties, then don’t we get the best of all worlds? You have a dedicated team of developers committed to building a small suite of broadcast applications. If they provide you with a reliable method of access through API’s, then haven’t we just reached utopia?
As I see it, in the right conditions with the right service level agreements and the right management software, then vendor specific proprietary systems certainly have their place. Especially if they provide a reliable supported door into the system to help with integration and make it easy. Audio over IP vendors have been doing this for the best part of twenty years. So, what next for Video over IP?