Introduction to Open Source (Part 3)
In part 1 and part 2 of this article I have introduced the open source concept, and discussed the reason software developers are adopting it. In the third and final part, below, we will discuss the risks of distributing the source code together with the software itself, the pros and cons of open source from the perspective of the end user, as well as, the reasons why IT giants are strategically getting involved in open source development.
Is there a risk in distributing the source code?
Over time I have encountered with several discussions over the possible risks in distributing the source code for anyone to use and redistribute. There are basically two risks that were discussed.
Legal Risks
It is argued that by distributing the source code the programmers are risking copyrights violation in regards to their application. In other words, anyone can copy a portion of the code or all the code lines and use it to sell software that he has no rights to sell. Although the open source license protects the owner of the application from this type of illegal use of the source code, it does not necessarily stop such illegal activity. Anyone involved in programming could testify that it is not an easy task to write an application. Depending on the application it may take hundreds and thousands of hard working hours to write an application. No programmer would want to risk someone taking advantage of the available source code for personal gains.
On the other hand, what advantage does the copyrights violator has in open source over proprietary software. Basically, not much.
- Most people would not know how the read the code, moreover be able to use it.
- Why does anyone need the source code if he wants to sell illegal software? All proprietary software companies are struggling, without much success, with software piracy. In many countries it is a known joke that each software title has a single legal copy, and the rest are illegal copies of it. In many places, you can purchase software, PC games, DVDs and CDs, which are illegally produced an sold, for a fraction of the official prices.
When the copyright violator copies the whole code, the owner of that open source application can easily recognize the copyright violation. However, the main risk is when someone copies a portion of the code and produces a totally new application, making some changes in the original code, which makes it even harder to detect the violation. In my opinion this is the main risk in the copyrights perspective. It seems like the advantages of open source overcome this risk.
Security Risks
The main concern is, that by enabling anyone to view the source code, it makes it easier for hackers to find security holes in the application, which potentially compromise the end user. However, there is no concrete proof that the source code facilitate finding and exploring security holes for the bad guys. Fact is, there are lot of security problems with closed source software. In any case, even if we assume that the access to the source code actually facilitates finding security holes in software application, that would be true for the bad guys and for the good guys. That means that while some bad guys will take advantage of the open source, it is also an advantage for the good guys anywhere in the world, who will search for the same security holes. When the good guys find a security hole they will publish it in order to enable the community to fix it. With the speed open source communities issue patches to newly discovered security holes, it is hard for anyone to explore these holes.
As an end user it is important, in this perspective, that you remain alert and update the application whenever such updates become available.
Is Open Source good for the end user?
Lets list the pros and cons of open source in the perspective of the end user, starting with the cons.
Cons
- Some open source projects assume the end users have more technical knowledge than they actually have. This is mainly true in earlier versions of the application development.
- Some open source projects are being abandoned in the middle of the development. This is especially true when it comes to less-than-popular projects. (see below, the advantage of open source in these cases)
- Sometimes it is hard to get support for the open source application – paid or free. Again, this is especially true for not-so-popular projects.
Pros
- Open source application are mostly distributed free of charge.
- Open source development puts the end user above any commercial considerations.
- Users can get involved in the development of their preferred software, submit bugs, request new features, etc. It is not like sending bugs and request features to a proprietary software company, if you ever tried to do it with favorite proprietary application you probably realized that you usually don’t know if and when your bugs and requests will be addressed. In open source projects you have access to the list of current bugs and requested features, as well as, to the development roadmap.
- Security holes are found and fixed generally faster than in proprietary software.
- Updates, bug fixes and new versions are available more frequently.
- Access to the source code allows the end user to customize the application as he sees appropriate, providing he has the necessary knowledge or resources to modify the code.
- The user can search for security holes or back doors by himself. There has been some concern by government agencies, as well as by private companies, that the proprietary software companies may include a back door entrance in the application. The software developer or any third party aware of the back door, may take advantage of it, enabling them access to classified information. Having access to the source code, although do not totally eliminates this possibility, gives the end user (government agencies, banks, corporations, etc) the ability to make sure such back doors do not exist, something you cannot do with proprietary software.
- If anything happens to the developer or company involved in the project, you can always ask other developers to continue the project. As a matter of fact, many projects were abandoned in the middle of development, by the founder, and were picked up by others who continued the development afterwards. If the company you bought your proprietary application goes bankrupt you can literally throw away the software and start looking for another one. This is especially true when it comes to custom built applications, developed by local, small or medium size company.
Some important points you have to take into consideration when choosing an open source application.
- Make sure the open source application, you are interested in, is popular, has an active community and is updated frequently.
- Make sure the technical knowledge requires to install, run and maintain the application is within your current knowledge or available resources.
- Make sure you get the latest stable version and that the application is in production phase and not a beta or alpha version. Due to the nature of open source, all applications are available for download from an early development stage, and they are not necessarily ready for use by the end user. As a rule any software version smaller than 1.0 (such as 0.8), does not have the full functionality implemented and may have more bugs than a production line application has. Unless you know what you are doing, or you are interested in getting involved in the project (as an end user), it is not recommended to use such applications.
What makes open source attractive for IT corporations?
As I have already mentioned earlier, many IT giants have embraced the open source movement, and support many popular projects. These companies devote programmers, funds and other resources, to open source projects. IBM for example supports open source in such way, in addition to donating many patents and source code to open source developers.
Why would they do that?
In one word – survival.
In order to survive in the ever changing IT market, with its tough competition, companies like IBM needed to look for an advantage over their competition. IBM now offers many open source applications on a service fee model. For the end user (from small to large businesses) its like taking the good things from both worlds, an open source application and a service of a well established IT corporation.
Another example is Novell, which was losing ground with its NetWare, a network administration application for the obsolete DOS operating system. It could have tried to compete with Microsoft for a share in networking for Windows, however it decided to focus on the increasingly popular Linux open source operating system, which is one of the fastest growing operating system used for networking.
This might be a rather simplistic examples, but I hope you got the point. It is strategically correct for these companies to change their business model from proprietary software business model to service-based open source business model, or some combination of both.
Is open source the future of the software industry?
That’s the one million dollar question (or rather one billion dollar question), but I would not want to predict since I have means of telling the future. I can only say that the current trend shows an increasing popularity and interest in open source from every corner of the globe. From the IT industry, from corporations and governments, not to mention from millions of individuals who knowingly or unknowingly use open source applications on a daily basis.
Conclusion
The open source movement is a fascinating subject, from social perspective, business perspective and even from political and economical perspectives. We might be experiencing a revolution in the software industry, which is likely to affect other business sectors. However, since we are in the middle of the process, it is hard to tell where all this will lead us. Only in ten or twenty years, we may have a better historical point of view to understand the phenomenon.
In this article I have only scratched the surface on most subjects I have brought up. If you are interested in more information, please refer to: OSI web site, as well as, to hundreds of articles on the subject available on the Internet.
Introduction to Open Source (Part 1)
Introduction to Open Source (Part 2)
Доброго времени суток!
На yourconditions.ru спрашивал, однако они что-то невразумительное сказали, я ничего и не понял.
Решил поделится своей проблемой. Я ищу кондиционеры. Скоро лето, я живу на последнем этаже, на южной стороне дома. Летом такая жара, что спасает исключительно холодный душ несколько раз в день. Посоветуйте который кондиционер оптимально мало жрет энергии ? А то у меня и куллер стоит дома + 3 компа…За электричество огого выходит
В общем хочется узнать мнение народа! ) Жду!
Hungreb
February 2, 2010 at 12:25 pm