Monday, September 03, 2012

Cathedral or bazaar?

Many years ago I took a position against open source software. Why? well, quite simply, as a pretty much full time freelance programmer since the mid 1980s I've come to have an appreciation of the value of the effort that I put into writing code. My attitude was at the time that open-source software eroded the value of the brainpower that it took to generate an elegant algorithm and do reduced the worth of my own brain as a money-making device.

Now, people say that its very possible to make money from open source. Well, this is true, however not because open-source code is a saleable item but because a lot of it is so poorly usable that consultants make a stack just by being able to troll through and understand poorly documented and esoteric code. If open-source is so fantastic, why then is Linux in all its various forms not viable competition for Windows? A few years ago, PC manufacturers began releasing PC's without an operating system or even with Linux pre-installed. That seems to have fizzled out and now Windows 8 running on ARM chips will absolutely be king of the hill for the next little while.

I will not deny that there is open source software that is great. Unfortunately, a lot of it has been produced by big rich companies specifically to piss-off someone else. There is for example no reason whatsoever for Open-Office except that Larry Ellison wanted to erode the sales of Microsoft Office as much as possible by providing a free alternative that does pretty much exactly the same thing. Later of course he tried to cash in by making Open Office a commercial product, thereby giving the lie to all his previous open-source rhetoric.

Code released on CodePlex is generally not created by altruistic chaps starving in garrets for their art, but as a by-product of the many tracks of development effort that Microsoft starts and deprecates but decides not to waste entirely. People piggy back onto that too.

My own code released on my site at http://www.bobpowell.net was, for a decade, not entirely an altruistic effort to share my knowledge, I do enjoy doing that but I was very conscious of the fact that my efforts in that regard netted me an MVP award that didn't injure my career one iota, nor did the free access to MSDN Ultimate which is a bit outside of my pocket-depth.

Spooling forward to today then, how has my attitude to open source changed? Well, I am very interested indeed by open-source hardware and resurgence of maker culture that was an important part of my early life. When I started in programming, unless one had a rich mummy and daddy, getting a computer like an Apple II or Commodore PET to program on was not easy. I built my first Z-80 based computer from scratch on hand-soldered boards and with TTL chips that I reclaimed from boards dumped by a nearby PLESSY factory in Cowes Isle of Wight. Today, Arduino and Raspberry PI and other systems are providing a cheap and accessible doorway into a world of electronics and programming that had become progressively more closed and software-commodity based as the years rolled on. Today, you can build your own electronic gizmo again with hardware designs that are easily understood and programmed. I see that as an important form of education in a world that has bred the ultimate dumbass consumer.

My belief is that the role of the professional programmer will diminish over the next ten years as software begins to write itself using genetic algorithms. The process of specifying what is actually required by the software will become declarative and the actual process of creating the code will go away. People will need to find interesting things to do apart from work and it is important not to allow the machine to become its own closed domain. Open source as a work practice may have failed in my eyes but open source as a way to interest people and steer them away from unquestioning consumerism might just be a success.



No comments: