Open Source Software

I suppose I can say at the start that I am a fanatical supporter of open source software. For personal use, I refuse to buy any more proprietary products, although I have done so in the past.

What are the advantages? Cost of licensing is often quoted as the main reason, but I am not sure I agree with this.

The real disadvantage of proprietary software is the deliberately obscure data formats that they use as an attempt to lock customers in. They can also be used to force customers through an upgrade cycle. Further, there is a real risk that the DMCA will be used in future to prohibit reverse-engineering of these formats, and if such actions are successful, it will become an even more serious matter. Most open software products support fully open data formats, frequently based on XML in recent times. These will remain supportable for much longer periods, and are far more suitable for archiving data.

The fact that the source is widely available means it is far harder, if not impossible, for authors to include undocumented functions, such as spyware or trojan horse functions. It has long been argued that the only secure cryptographic software is open source, and where the security entirely depends on the keys. In my view, one can apply this argument more widely, and say that one can only trust software if the source can be examined. If the source code is not available for scrutiny, there is no way of judging what any given executable is capable of doing. It never ceases to amaze me that governments and major corporations are prepared to trust software that may have hidden features.

Licensing cost is certainly significant for many users, however. There is also the freedom from the possibility of legal action, as one may install as many copies as one chooses. Many businesses find it hard to control their use of licensed software, and can never be sure that they would pass an audit, even with the best of intentions by the senior managers.

Operating Systems

I mainly run FreeBSD at home, which is a less-well-known equivalent of Linux. It is a highly professional and stable product, and is used in some of the world's largest web sites and public servers. I have used it since 1997, on a variety of machines. I recommend it very highly; you can find out much more at http://www.freebsd.com.

I also run RedHat Linux 7.3 on a laptop, and a very old Caldera distribution on an ancient 486 DX33. Linux is also an excellent product, with a great reputation for stability.

Desktops

In the open-source world, there are two major competing desktops; GNOME and KDE. They both provide a visual desktop similar to Windows, and both are as easy to use as Windows. I have tried both, and currently prefer KDE, because I like the very comprehensive and well-integrated tools that come with it. (This is the stuff of flame-wars on the Internet. Abandon hope, all ye who enter here...)

Web Browsing and Mail

I usually use Mozilla, which is a fairly recent, fully open-source descendant of Netscape. It works flawlessly under FreeBSD. It provides a very usable interface for mail, and can manage several accounts in a neat and intuitive way. I have also tried the simpler, more modular components supplied as part of the KDE toolkit; Konqueror is a fully-functional web browser, and KMail is a good mail interface. I would consider KMail instead of Mozilla, but have not found how to make it work smoothly with several mail accounts.

Office Products

I don't have a frequent need for office software at home, as I spend too much of my time using the Microsoft products at work. Excellent though they may be, I need a change of pace at home. I use OpenOffice, which is the open-source spin-off of Sun Microsystems' StarOffice. OpenOffice runs very well on my fastest machine. It provides a word-processor, a spreadsheet, drawing tools, and a tool for building presentations slides. The data formats are XML-based and fully documented, which is a great advantage. OpenOffice can also read and write the proprietary Microsoft formats, and I have never experienced a problem when processing documents that I am also working on for my employer.

Databases

I run MySQL as a database product. I don't have much need for databases at home. I do store all my banking information and personal contact lists, but there is little real benefit in comparison with flat files for databases of this size. (And flat files have the advantage that you can use a version control system such as RCS to make sure you can recover from any unwanted changes).

MySQL is an excellent product, and can handle many tasks, and large databases, that are usually processed with proprietary software such as Microsoft SQL-Server and ORACLE. What is needed is a graphical interface - there are some open source products available, but I haven't yet investigated any of them.


Last updated : 2003-01-03