Why Use Open Source?

Reducing my reliance on closed and proprietary source products is not something I did in one swoop. I did it in stages. But, I did embrace the reasons for moving to open source very quickly. I will list some here, and then address a few of them. Some may appeal to you, and other will not. The range of opinion is wide – some people will go as far a saying close source is evil. I am not trying to convince you, but I hope I do justice to the reasons others give. I have my own opinions, which I will share in due course.
Open Source is often free. This is true, and it is a factor for me. However, all software environments require maintenance. Users need to be trained. Files and information must be able to flow from closed sources systems to open source systems and back. The cost of the the software is more than the cost of acquisition. Free is not the be all and end all, but it can be a important.
Managing licenses is a time consuming and difficult exercise. This is true, and I find that it is an important consideration. Remember, it is often illegal to install multiple copies of the same package on different computers. Even if you have a volume license, you have to keep track of how many licenses are being used on how many computers.
However, I am using Open Office as opposed to Microsoft Office. I can hire as many employees as I want and install the software without the time and expense and managing licenses. Using Open Office, I can create files that can be used and edited by people who are using Microsoft Office. Open Office is considered a very good replacement for Microsoft Office, and any other proprietary office suite.
Open Source Avoids Vendor Lock-in. Nobody controls my use of the Apache Web Server. If I want to hire somebody to alter or extend its functionality, I can do that. If I want to include Apache in a product that I develop, market and sell, I can do that without paying royalties to the owner. My use of open source software is limited by a variety of software licenses.
Anybody can hang out a shingle and offer services that include installing and supporting the Apache web server, and other open source products. In the case of proprietary products, you can never get away from the fact that the product and the company that owns it are one.
The issue of vendor locki-n deserves an entry all to itself. I will pick up there in my next installment. Later, I will address some of the other reasons to use open source.

Over the next little while, I am going to write about how you can reduce your dependence on closed source, proprietary software. I call this series Defenestration 101. I learned the word “defenestration” in high school. Defenestration is the act of throwing someone out a window, but it can also describe a rapid expulsion of a person from a group or organization.
I encountered the word again a few years ago when it was used to describe the process of getting rid of Windows servers and moving to Linux or Unix base servers. Apart from anything else, I was amused by the recursive humor of throwing Windows® out of a window.
All humor aside, it is possible to run a business without using Microsoft’s closed source, proprietary software. In series of blog entries, I am hoping to explain how I handled this change in my home and business, and explain why one would want to.
First, let me start by saying nice things about Microsoft. Twenty years ago, I built my career on Microsoft products. Back then, Microsoft published great books on the products I used and they maintained a BBS where I could download code samples and white papers. I bought Quick Basic and Quick C, and started to write programs at work, helping my employer use computers in new ways.
I was helped decision makers select software packages – basically, I cut my teeth on Microsoft products. However, by the mid to late ninties, the price of Microsoft products started to rise. One client put a project on hold because he had to upgrade to NT. In time, I could see that Microsoft was eating up a large part of the budgets that used to be available to pay me.
I also saw opportunities. There were more developers, more projects, more books, and more magazines. Selling clients on using computers was not longer a challenge – every business had computers. I had a chance to travel, and to dig into some challenging projects. For a while, I ran a company called Workflow Automation Group in Vancouver, and I can not say anything bad about that time.
Even today, there are many good reason to use Microsoft solutions. However, the world has changed, and there are alternatives. Count me as one of the many who have chosen to embrace these alternatives. This week I will explain why.
I will try to be pragmatic rather than idiological. In all probability, your business is not software. The problems you are trying to solve are not technilogical. For you, technology is a means not an end. I get that.
I’m taking a vacation – that’s what a consultant calls it when he is unemployed. For some people, that means less blogging. For me, I expect to blog more. I won’t tie my own hands by saying what I will blog about, but I plan to spend time biking and enjoying the colors of fall. I also plan to return to my work with Jython and DB4O.
I also plan to play with Django 1.0 because it is cool. But, I also plan to spend some time with the Zend Framework – I believe that it is the best choice for a church web site I am working for Faith Fellowship Christian Assembly. (Is that too much? Yes, but any time spent learning is not wasted.)
Why The Zend Framework?
The Faith Fellowship site is hosted by dreamhost, which provides good PHP support. My goal is to put Faith Fellowship in a place where anybody can easily support the site. PHP programmers are easier to come by than Python programmers who can work with Django.
So in short, the reasons are:
Does this mean I prefer the Zend Framework to others? No, it does not. But, given my hosting arrangements and all of the other considerations, I think this is the best Open Source solution for this particular client. I prefer coding in Python. If the Ruby on Rails community continues to grow, and the documentation improves, and the market is swimming in RoR programmers, I could choose RoR. (Please note: There are some fantastic RoR books, but they cost money. The free docs are not as good.)
I might also recommend Django if my client’s hosting service supported it well. The Django docs are great.
Time to go for a bike ride in the fall leaves.