Archive

Archive for the ‘Open Source’ Category

Software Longevity

February 13th, 2007

All software has a lifespan. The three primary factors that control this lifespan are the popularity of the software; it’s usefulness, and the lifespan of the controlling company. Whilst the first two factors are common to all software, the third is one of the primary differentiating factors between proprietary and Open Source software.

A measure of the success of Open Source software is to gauge the likelihood of the software to survive, if the originating company and/or individuals suddenly ceased all support for it. Is the community surrounding the software strong enough to keep it afloat, or is the community also dependent on the software authors contributions?

Comments by Mark Shuttleworth, founder of Ubuntu Linux, whereby he states that Canonical (his company and origin of Ubuntu Linux) is now just a small part of the Ubuntu community, are a good example of how software can out-grow it’s origins and effectively sustain itself. Such a scenario is often quite difficult to achieve however, and software must certainly be both popular and useful in order to have any hope of surviving. But it is worth remembering that irregardless of how popular and/or useful proprietary software is, it’s lifespan will always be limited to that of it’s originating company. This aspect alone demonstrates that if you must be dependent on any software, a preference for Open Source software is a much safer option in the long term.

Open Source, Software

Open Source drives innovation

May 22nd, 2006

The Open Source movement has long been associated with socialist ideals such as communism – typically by companies who see Open Source as a threat to their own business. The irony is that driving factors behind Open Source are the very reason they even have a business.

In the consumer software industry the quality of software has not been the primary differentiating factor in consumer choice. As end-users we cannot see how a software title was built, what development patterns were employed, or even what language was used to build it. More importantly we cannot see how many unresolved bugs there are, for which we leave it to the discretion of the software developer to inform us (if they are even aware themselves!).

And so in the absence of a qualitative analysis of software (excluding user interface design), we must rely on a quantitative assessment, or a comparison of features. Software features have come to be known as innovation in the software industry, possibly as it conveys some kind of magical ability to invent something entirely new. In reality much of this innovation is not in fact entirely new, but rather a rehash of old ideas or, more likely, a feature copied from someone else. Now contrary to so much of the discussion surrounding software, there is nothing at all wrong with this. In fact it is in the very nature of software development to recognise a good idea and re-use it. Perhaps it is the common approach of claiming innovation, without due credit to the originator of the idea that creates so much hostility. Whatever the cause of this slightly misguided animosity, we should not deny that re-use of innovation, whether it be an idea or an actual implementation, is an integral part of software development.

Recognising that features are the differentiating factor in software, many companies have adopted a two-fold approach of adding as many features as possible, and protecting those features from getting into the hands of the competition. Now of course noone can stop another from reimplementing a feature found in competing software (although they do try!), but you can protect your own implementation, which at the very least makes it more difficult for others to duplicate. Or at least it used to. Nowadays we find large companies have vast teams of developers that can implement anything that you ask for. The hard part is knowing what you want to implement, and when all else fails, just look to a competitor for inspiration.

So whilst this feature arms-race continues amongst the largest companies, we see the intended effects of feature dominance becoming more neutralised. There is however another, possibly unintended, effect, which is that smaller companies and individuals are becoming increasingly locked out of the competition. If you cannot afford an army of programmers to keep up with the feature sets of the most popular software, how will you ever compete in a feature-dominated industry?

In the face of such marginalisation many have now put their faith in Open Source. Open Source provides individuals and smaller companies with that “army of programmers” needed to compete with the larger companies. But perhaps a more interesting aspect of Open Source is that it does not discriminate. The largest of companies are also able to incorporate Open Source software into their business model, which then begs the question, is Open Source really changing anything? To which the answer is an emphatic yes. If Open Source software is able to keep up with the feature arms-race of the largest companies, putting such features in the hands of everyone, there will no longer be a feature arms-race, or at least not on the scale that it is today.

So what does this mean for the future of software? Well for a start it means less emphasis on features, leaving room for a more qualitative analysis of software. Aside from giving equal access to feature implementations, another driving factor of Open Source is the qualitative analysis that goes with it. As financial reward is less of a concern when developing Open Source, we place greater emphasis on writing better code, so as to gain the reward of respect, recognition and popularity of our software. With quality being such a major emphasis of Open Source, proprietary software developers will be compelled to prove a similar quality of software in order to compete.

Some larger companies have suggested that by neutralising their competitive edge through feature dominance, Open Source is stifling innovation. On the contrary, by giving everyone a level playing field Open Source has once again made it possible for anyone to innovate. These larger companies seem to have the idea that they are the leaders of the industry and as such should be responsible for all innovation. In reality, as we are shown time and again, real innovation in software comes from individuals, not from task groups and think tanks. Such individuals may work for large companies, small companies or no company at all. Wherever they may be, we cannot force, or even predict, who will innovate next. All we can do is create the best possible environment for encouraging such innovation, and the best possible environment today includes Open Source.

Open Source