Colebrook, NH areaColebrook, NH areaColebrook, NH areaColebrook, NH areaColebrook, NH areaColebrook, NH areaColebrook, NH areaColebrook, NH areaColebrook, NH areaColebrook, NH area

GNU/Linux Software Development


Linux is a radical departure in common concepts of computer software. IBM, for example, has termed Linux a "disruptive technology." This is true because Linux and the free software movement it represents challenges fundamental ideas of how computer software is developed.

Microsoft's Bill Gates was one of the true pioneers of the modern software industry. Gates argued that the only way programmers could be paid fairly was for software companies to tightly control the source code to a computer program and keep it a secret from the users of the program. This philosophy was obviously good for Bill Gates and companies which produced computer software. Whether or not it was good for companies like yours which use computer software is a topic that is open for debate.

Using the collaborative powers of the Internet, free software and Linux bases its principle of development on cooperation, building upon the work of others, and sharing the software development costs and burdens. These concepts are truly radical to the secretive, closed development process that traditional software development uses.

Since it is based on sharing, free software does away with the concept of software piracy. Linux largely eliminates the idea of computer viruses -- if an operating system is written properly, computer viruses and worms cannot flourish. Similarly, "blue screens of death" and computer crashes are also concepts that are foreign to most Linux users.

We are often asked how a large complex program can be developed under a free software process. To illustrate this, I'll use the example of the Koha library automation package. While this example isn't using a typical business package, this will be of interest to schools and educators (and similar traditional business examples exist).

Library automation software typically involves a database to store information about books; it requires an easy to use database retrieval system so that customers can see if a book is checked out or not, a barcode reading system to allow librarians to scan books in and out, a report generation system to see who has books out late, and other assorted administrative tools for librarians. Many library automation packages also feature a web-based system so that you can search for books online from home. Another nice feature is the ability to handle multiple libraries so that I can search for books in libraries other than the one near my home.

If you think of all the above tasks and features, library automation software is a very complex set of functions. Typical packages are sold for well over $10,000. Yet the free software development process has produced the Koha systems with all of the above features and the package is free!

The Koha system was first developed by a library system near Wellington, New Zealand. Wellington had a commercial library automation system which had Y2K problems and wasn't meeting their needs. So they contracted with a local programming team to write the first version of Koha. That solved their short-term library problems. Fortunately, the programmers that wrote Koha convinced the library to license the new software under the GNU General Public License (GPL).

This was the stroke of genius which made Koha popular. It wasn't long before some libraries in other parts of the world looked at the free Koha package and a handful of those libraries started to use Koha. Some libraries found that Koha didn't meet their every need (here's one US example). But with the open, free software development process it was easy to solve this problem. If the program didn't meet your needs you could just pay a programmer to add the feature(s) you required.

If the story ended there, it'd be nice -- we would have a cheap solution. But the genius behind the GPL is that it allows others to build upon your work. Under the terms of the GPL if you distribute a modified GPL program you also have to distribute the source code to that program so that others may examine and/or use the changes which you made.

This guarantees the future freedom of the software. It also allows a rapid software development process. In the above library example, if a dozen libraries are all making changes and releasing them to the library community, only the best of those changes will be adopted by programmers working on the project. This means that we have a shared, decentralized, low-cost way to develop software. This is why Koha is now spreading rapidly, and it's why the GNU/Linux operating system has evolved so reliablity and so lightning fast.

Now, imagine if 15% of the libraries in the US were using Koha and contributing to this development process! We would all benefit by our libraries using free, feature-rich software. Remember, many hands makes the work easier!

Again, this example is oriented towards education institutions and libraries.

For traditional business needs, what if the same thing were applied to accounting software or other common business software applications?

Good news: it is! Contact Spartacus Systems for more information on how we can use this radical new software development process to liberate your company from tyrannical software licenses, unreliable proprietary software, and high software costs!