Over the past few years the open source software community has really taken flight, with many viable free alternatives to the commercial applications.
Open source software projects create development communities, which have tremendous support. I get the feeling from various online forum postings that, a lot of motivation is derived form wanting to code something better, and not just better that the commercial applications but better than other open source developers! This self-fueled motivation combined with careful version controlling can lead to a stable, feature packed application.
The development cycle in an open source environment is rapid. On some of the heavily supported projects a fault being posted by a user in the morning can be coded/compiled and released for everyone by the afternoon, (try this when you next find a fault in excel!). The potential size and diversity of an Open Source project team can be hard to match with closed source.
In 2005 IBM announced it would be freeing up 500 software patents into the public domain, whether this is to encourage development or get to free programmers I don’t know. However it is a sign that things are beginning to change.
I’ve now started replacing the commercial software I use at work and home wherever possible. However at the moment with closed source commercial applications being so ingrained into society it’s going to take a while for the majority to follow suit.
In many cases cross-compatibility is the key to success. Projects like OpenOffice, supported by Sun Microsystems is now very good at handling commercial formats, for example you can open an MS Word Document and then export to PDF!
Don’t be afraid to download some free open source software and join in the communities. You may even find yourself saving money. A useful resources for finding open source projects http://sourceforge.net/ the world’s largest Open Source software development web site.