Free and Open Source Software

There are two kinds of good software development models: open source software and community driven software. I won’t discuss the ethical reasons since these are quite obvious (everyone has the right to learn) and I won’t discuss how you can get the most money out of a consumer. Instead I’m going to focus on this single aspect: the quality of software.

Community driven software

When a lot of advanced computer users lack a tool, they will create the software they need in a free way: everyone will be able to alter the code (and study it, use it and re-use it). As a consequence by times the code-base will be very messy and will need to be cleaned up, by times the code-base will be very neat. Yet this is the kind of software that only gets better over time. For instance emacs has been around for 40 years (In computer-terms, this is since the Big Bang), and I don’t have to convince you this is by far the best IDE, best text-editor, best irc-client, best… well… anything. Another great example is the linux kernel: around for almost 20 years and it beats any other UNIX-implementation.

The most incredible part about this «free» software is: they never got engineered. They were made from scratch step by step, function by function when those were needed to implement one or more person’s requirements. When it got too messy, a partial rewrite was done and so on. When given some time, this process delivers the best software which suits anyone’s needs.

Open source

Free and open source software (FOSS) are often mentioned in one breath, although they are not the same. Open source software is not necessarily run by a community and it can implement different degrees of freedom which in its least free form has this definition.

The advantage of the open source development model is that it allows a company to properly engineer an application from a to z, before releasing the code. The first release of the code will practically be a working product and it will produce good-quality software in a short-run. These open source end-user products are very often reusing code from community driven software and that’s the way it should be: it is even very important because when a lot of companies rely on this code, they are going to fix bugs and add features.

-Pieter — follow me on identi.ca

2 comments

  1. openuniverse

    the difference between free software and open source is that open source doesn’t do anything to represent YOUR freedom. in theory it does as much as free software does. in practice, it sells out to people that like to restrict and exploit users. i used to think this was an unfair assessment, though i’ve seen too many examples now.

    the difference is not whether software is “finished” or not. first of all, you don’t have to upload “free software” until it is just as “finished” as your definition of “open source.” the difference is NOT what it’s like during the first stage(s) of development, but how many RIGHTS people have after it’s available.

  2. Pingback: Free and Open Source Software « Bon sans nom | Open Hacking

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s