Thursday, May 11, 2006

The Future is “Open Source” in Enterprise Application Arena

In a world where Microsoft increasingly threatens to dominate computing and the Internet, the strongest potential rival to its dominance is no longer its traditional commercial rivals but, surprisingly, a seemingly motley collection of free software tools and operating systems collectively dubbed “open source” software. Unlike most commercial software, the core code of such software can be easily studied by other programmers and improved upon–the only proviso being that such improvements must also be revealed publicly and distributed freely in a process that encourages continual innovation.
Most software that you buy or download only comes in the compiled ready-to-run version. Compiled means that the actual program code that the developer created, known as the source code, has run through a special program called a compiler that translates the source code into a form that the computer can understand. It is extremely difficult to modify the compiled version of most applications and nearly impossible to see exactly how the developer created different parts of the program. Most commercial software manufacturers see this as an advantage that keeps other companies from copying their code and using it in a competing product. It also gives them control over the quality and features found in a particular product.
Open source software is at the opposite end of the spectrum. The source code is included with the compiled version and modification or customization is actually encouraged. The software developers who support the open source concept believe that by allowing anyone who’s interested to modify the source code, the application will be more useful and error-free over the long term.
To be considered as open source software by the software development industry, certain criteria must be met:
The program must be freely distributed (It can be part of a package that is sold though, such as Red Hat has done with Linux).
Source code must be included.
Anyone must be allowed to modify the source code.
Modified versions can be redistributed.
The license must not require the exclusion of other software or interfere with the operation of other software.
Let’s take a look at a real world example of open source software. In 1991, Linus Torvalds, a student at theUniversity ofHelsinki inFinland, developed a new operating system based on Minix, a derivative of Unix, which he dubbed Linux. Torvalds released version 0.02 of Linux under the GNU General Public License, which provides a good legal definition of open source software. A lot of people around the world downloaded Linux and began working with it. Many of these users were programmers in their own right and made modifications to the source code that Torvalds had included. Over the next three years, Torvalds received these modified versions from the other programmers and incorporated many of the changes into the baseline version and released Linux version 1.0 in 1994.
A common concern for end-users who wish to use open source software is the lack of a warranty and technical support. Because the software’s license encourages modification and customization, it is nearly impossible to support. This is why Red Hat Software, founded in 1994, created the “Official Red Hat Linux” and is able to sell this normally “free” software. The main value that Red Hat adds to the package is a warranty and technical support. For most businesses, the assurance of technical support has been a key factor in the decision to buy Linux instead of simply downloading it for free. In addition to Red Hat, there are several other companies that have packaged Linux, usually with additional software, for resale.
Besides Linux, Mozilla (Netscape browser core), Apache (Web server), PERL (Web scripting language) and PNG (graphics file format) are all examples of very popular software that is based on open source.
So finally what is open source?
A revolutionary movement based on the belief that programmers should be able to read, redistribute and modify the source code of a piece of software. Enabling programmers to freely improve existing code design, adapt it, and fix bugs leads to astonishing speed in software evolution, code maturity and quality. In addition, this paradigm lowers the cost of software and in many cases, provides software at no cost at all. Some examples of popular open source software include Linux, Apache, MySQL, Php (collectively called the LAMP stack), Tomcat, JBoss, Firefox and CVS.
Open source in the enterprise
In recent times, there has been an increasing adoption of open source software in the enterprise world. According to Gartner Research, by 2008, open source will compete with closed source in every infrastructure market. Gartner also reports that by 2010, 75f mainstream IT shops will have a formal open source acquisition policy in place and mainstream IT shops will consider open source for 80 f their infrastructure software needs and 25f their business software needs. These numbers attest the benefits that open source software brings to an enterprise. In addition to allowing for huge cost savings by replacing expensive, proprietary counterparts, open source is superior in quality in many cases. other benefits of open source include access to the source code , ability to adapt to custom needs of the enterprise , and avoiding vendor lock-in. particularly in the Indian context ,open source has propelled �affordable computing� via initiatives such as local language applications and e-governance initiatives that take IT to the grassroots.
What does open source mean to you?
By being part of this software movement today, you will get an opportunity to be ahead of the curve and enrich your resume with skills that are sure to be in high demand tomorrow. Besides you will have access to millions of lines of great code to learn from and leverage to build applications that solve real world problems. You will also have an opportunity to become part of the amazing, innovative, technical community of open source programmers where you can contribute to the code base and define the direction of the open source software. Further, you can even create new open source software and create your mark in the software world through it! Finally, for the entrepreneur in you, there are several opportunities for establishing a profitable business based on value-adds and support services on open source software.

No comments:

Popular Posts