Hotels and Homes
After two trips in two weeks, I've thought of a simple way to compare open source and commercial software:
The software vendor is like a hotel operator. They provide you with a set of services, and you pay them. If things break, you call them. There's a certain predictability to it. On the downside, your ability to customize is limited. It may also not always be there for you, an experience we've all had when our favorite hotel has closed or been sold to new owners.
You have a lot of control over it. You can pretty much make it do anything you want (within legal limits, of course.) Your options are more open. With your own home and with open source software, there's a full spectrum of service options available, from doing it yourself to hiring contractors to everything in between.
When are hotels and commercial software right?
Hotels and commercial software are right when:
- Your needs are fairly standard and well-addressed by existing service providers (hotel operators or software vendors.)
- You are happy with the price they charge for their services.
- You are reasonably comfortable that they'll be around (important for software) or don't really care if they aren't (usually the case with hotels.)
Like a home or its mobile cousin, the RV, open source software appeals to two distinct groups of people.
One group likes it for the low cost and don't mind either foregoing some features or doing work themselves. For example, traveling in an RV will allow you to save a lot of money, if you can do without housekeeping. Similarly, with open source software, you can save on licensing costs, if you're willing to support it yourself. Alternatively, you put together your own support package by shopping around from different vendors.
Another group has very special needs, and they can't find or don't want someone else to take care of those needs. Think about movie production trailers and surveillance vehicles--few hotels can be as accommodating. Similarly, open source software allows you to implement custom, unique, or differentiating features far better than most commercial alternatives. For many organizations which use open source software, this is a far more important reason than lower costs alone.
With the emergence of software-as-a-service (SaaS) or application service providers (ASP), will the future of software look more like hotels and homes? Will you one day "rent" generic software from SaaS or ASP providers and then use open source software as the basis for mission critical, differentiating software?