Small essay about Open Source

UNDER CONSTRUCTION

< Inicio

I dedicate this essay to Jean Jacques, who is realizing now that the world has a new light to discover and explore new paths.

Maseru, Lesotho, October 2005.


First point: I do believe in Open Source solutions. Why? because during last eight years I've been using it with nothing but benefits. I believe in Open Source, but not because I belong to any sort of sectary group of gurus sending their prays to the god of Free Software; there are many of them I don't feel like I want to join that selected but obscure group. That's why I will start with two very clear statement:

FIRST. Proprietary software works. We cannot say nothing against this fact, since for many years, proprietary solutions have ruled the software market, but...

SECOND. Free Software works better. It is important to be very cautious here: both of them will fail if certain conditions are not met. But due to the special characteristics of the Open Source paradigm, I would admit that it is a better frame for software development, software evolution, product quality assurance, equality of opportunities (fight against monopoly, fight against the digital divide), business and many other crucial subject.

From now on, I will demonstrate why the second statement holds, though I also think first one is true and that, in certain cases, they coexist pretty well. We will see where, how and why. Let's demonstrate second argument, I hope you will find it interesting, passionating, funny and serious at the same time, exactly like free software is ;-).

Many of the matter discussed here has been extensively analyzed and introduced by other authors. I am not copying, neither collecting all those ideas. I am just letting them pass through, since being ideas, no one owns them, I am just maybe becoming yet another media for them to reach you. Memes are memes...

My capability for retaining dates and numbers in memory is as good as my ability for mixing clothes colors. Therefore, any temptation to remember such king of information will be avoid. Go to Wikipedia for specific details.

In the beginning, the Earth was ruled by system administrators, en-charged for running big and expensive machines. Tasks assigned to these machines were critical, as they still do, and the only operating system (more or less), able to fit into the requirements was UNIX. The work with these machines was as any other relation with informatics: programmers were artists, and administrators, dancers in the middle of a symphonic overture. The specificity of the operations performed leaded to the development of shell scripts, and some of them became rather complicated, so it is was not seldom to share them with other administrators. Those machines were too complex for common people, so they remained accessible and handled by a selected group of gurus.

But also home and desktop computers became to increase its presence in more and more environments. For them, power, speed or storage space was not a must, they rather focused in letting people do things in an easy way. You didn't have to be an expert to write a document, to save some files, or converting a color image into black and white.

Then, home machines became more and more powerful, and some of them started to do tasks that before were assigned to UNIX platforms. And the best of both worlds met: a powerful operating system, with many people behind it, with an increasing number of users, for home computers. It was not easy at the beginning, but with time Linux based systems have reached a well matured state, enough to represent a true alternative to other operating systems dominating personal computers. But Linux started in an academic environment, and students use to share notes, books, exercises and experiences. Programs are immaterial, as ideas, so if there were a place to let them pass through different minds, then everything would be possible: the Internet had the word, and it has been the reason for free software to become what is now, as main circumstance to its existence and growth.

Open source software is developed and maintained by communities of people connected from all around the world. They organize hierarchically, often with the first author of a project as leader. When the project grows, it is subdivided into sub-projects, and development tasks are delegated to trustworthy people. In this structure fit programmers, testers, documentation authors, web masters, etc. etc.

In order for an open source project to survive, certain pre-requirements are needed:

  1. The tool must be used for a wide range of people. If the program is not demanded by a community of users, it will disappear due to the lost of interest on it.
  2. Developers must be accessible to the users. This communication is crucial, and it is a unique characteristic of open source. Users can send comments to programmers, discuss with them in a forum, test new beta releases, and so on.
  3. All information about the project must be well organized. This implies a common web site, a common repository, i.e. a virtually centralized meeting point.
  4. Some tools must be provided to the community to interact with the project: forums, bug report tools, code repositories, web sites, download places... Sourceforge is a good example of this facilities. We have seen in last years that collaborative tools play a crucial role in maintaining the community alive, that's the reason for more and more projects to include additional tools like wikis, mailing lists, etc.
  5. For all these to work, people need to get connected. The more "on-line" the community is, the more active it will be.
  6. In that community, a critical number of users and developers must be present. If a project depends on few and not too always available or active developers, even when the community of users is large, often the project will disappear or will be re-born under another name by someone more present on the net.

The fact of having all the projects open to the world, of being able to join these community of users and developers, have given to the open source software a transparency like no other software before. The continuous review of software and bug reports from the community of users guarantees a high quality of the product, in is most natural scheme where users and developers meet and the same level of relevance. With proprietary software, these characteristics of transparency, quality and excellence of communication, are somewhat difficult to assure.

Notice that we are talking here about communities of people, thus its study and analysis can sometimes be as complicated as the analysis of any other social organization. There are wide differences among several communities related to open source projects.

One of the main drawbacks attributed to open source software model is that it eliminates any opportunity for business based on software products. This is one of the bigger lies against open source software. It provides equality of opportunities to an extent unknown before. People can MAKE money with open source because:

One crucial point in this way of doing business is that you end with one of the biggest problems found in software production models so far: the monopoly. Now, even small companies can provided advanced solutions; their capability for surviving will only depend on the quality of their support. Clients will pay for real work, not for copies of programs.

This model has a even more important aside effect: it will enable undeveloped countries to join software communities and overtake the digital divide. These countries and social groups can access plenty of software solutions at no cost, with the additional benefit of being able to take part of the game, as users, as developers. Open source let you learn how things work, because of its transparency, because the documentation is public, as the code. It creates not only networks of users, but networks of knowledge, and the value of such network is enormous.

Free software is nothing but the consequence of software immateriality and social evolution: nobody has invented anything. Free software is a result, not an invention. That's why its dynamism can be extended to other digital based products: music, films, documents, pictures... only time will tell.