Open Source More Expensive In the Long Run?
"Here are some details for you:
I am currently doing consulting work to create a complex custom search utility for a governmental agency. The first major step was, of course, to select a Search Engine that provides as many of the custom requirement features as possible; thus reducing the amount of custom code and my expensive time. Besides high-end search features my customer also required something that was fast, easily administered and likely to be supported for a very long time. Why the last? Well, the expected lifetime of the new project is ten years and this is not out of line considering that their current system is more than a generation old!
Consider again the environment; this is a government agency and is somewhat resource starved. They have a limited number of staff and the staff must split their time among many different working areas. They must be generalists and do not have time to specialize. Plus there is some turnover, especially among the better skilled staff. These factors lead to a basic requirement that there is someone they can call for support for every product they use, preferably 24 x 7. They also need to know that this support will be available for the entire lifetime of the project -- in this case a full decade.
Now to the chase -- without going into boring details, or names, we were able to locate nearly sixty Search Engines that might be suitable. Most of these were commercial, but some were Open Source. From this list we selected eight that seemed most likely to provide all the capabilities we needed, of which one was Open Source (in fact this was actually two variations of the same project). We then performed detailed paper analyses of these products, comparing features to our requirements list and doing some estimated per-year costs to determine the lifetime costs. From the results of this we selected a smaller number for in-house evaluation and from that we selected the final recommendation.
For the commercial products the vendors could supply us with support costs, often broken down in such a way we could choose our support like a Chinese menu. But for the Open Source products this was not the case. Contacting the maintainers of the Open Source products and asking if anyone provided commercial support was fruitless; in one case the response was downright rude (basically a variation on RTFM) and in the other the response was more helpful, but still could not suggest anything other than being active on the mailing list.
So I had to figure in the cost of one of my customer's IT staff staying active on that list and learning enough about the product to provide in-house support supplemented by the email list. Estimating this at one tenth of an FTE and that FTE at a low $80,000 per year resolved to $8,000 per year. This was nearly three times the cost of the most expensive commercial product support!
When factored in with equal administration costs, adding in training and support (available from these vendors) and other one-time and yearly costs (for such things as licenses), the commercial products were more expensive for the first four to six years of lifetime costs, after which the Open Source product became more expensive. Of course the difference wasn't too great, ranging from 20% to 60% higher in a ten-year lifetime. But it was there nonetheless.
Now my customers are not averse to using an Open Source product. After all, there is no guarantee that even the most established vendor will not fall by the wayside in those ten years. They just want to have a certain comfort level, even if it is illusory. And I must admit that any commercial product will require some time from their IT staff, but because there is 'support' available this is seen as being much less important. Major fixes or changes can be dealt with by hiring consultants like myself, and lesser issues dealt with by calling customer support. They might even be right in this estimation.
My estimates might have other holes as well, but that isn't germane. The selection process is nearly complete now and, in a detailed analysis the Open Source products turned out to be missing a couple of features that would have been showstoppers even had support been available. I want to know what resources I can use to (honestly) avoid this issue the next time I am comparing Open Source to commercial software for a client!"
Well, here's why open source is still economically sound. As todays software companies start moving to timed software licenses, open source will be around. So in two years you may be writing a check every year to microsoft for the right to use Office. But if microsoft folds then you are out of your entire investment and you have no access to the data you created while using the service.
With open source if the devo team quits, folds, or stops supporting their software you still have all the information to continue to use and improve the software you're using.
I don't believe that makes open source more expensive, I believe it makes it more flexible.
Chicago2600.net more than a lifestyle, its a survival trait.
1. Be more stable and contain less bugs in the long run
2. Cost less in terms of licensing etc
3. Have projectable license costs. ie Nil. Whereas who knows how much Micro$oft will charge you in a couple of years.
4. Gain from *not* having to upgrade due to it no longer being supported. Proprietary software forces you to upgrade and infact is built into their model. If you don't buy they go bankrupt
5. Allows you to *gain* from quick bug fixes, security patches and the like
This seems like a typical TCO attack on Open Source which needs to be carefully assessed in a research setting where the differences can be clearly ascertained between proprietary and Open Source software..
---- The Open Source Record Label : : LOCARECORDS.COM
And announce you'd like to set up a long term 24x7 support contract on the project and ask for bids. Vet them properly and I'm sure you'd come away with a more reasonably priced TCO then you've calculated.
The problem with these analyses is that it often overlooks how little commercial support really gets you. Esp. if you're looking at very long duration projects with limited resources to pay somebody to support your platform long after everyone else has moved on.
Let's set the way back machine back about the same number of years, let's say to 1994. You develop an application and buy hardware....
Your Linux solution is running a pre-1.0 kernel on a box that runs under 100Mhz. If you need to recompile it to work on new hardware and OS when your old system bites it, you can.
Your Windows solution is running on Windows 3.1. Good luck getting support for it. If you are willing to pay for a whole new development cycle, you reinvented it for Windows 95. Good luck getting support for it. Ditto your upgrade to NT4, which also required all new hardware.
The cold hard truth is that when you're looking at a long window, you MUST have FULL source or you're hosed. At some point you're going to need to run on hardware that's no longer being made, or your hardware will require some driver that you can't get without upgrading your OS, etc.
For every complex problem there is an answer that is clear, simple, and wrong. -- H L Mencken
First, this sounds like a turnkey system, once installed. Your estimate of 1/10th of an fte seems a little high; once installed, the search engine shouldn't take 45 minutes a day to maintain.
But, in any case, if they have an employee who can shoulder the burden of maintaining this product without adversely impacting that employee's performance, then internal support costs nothing at all. Plus, there are very few commercial products that are guaranteed support for even a few years, let alone 10. Sure, support this year is available at a reasonable cost; but there's a good possibility any random company will go out of business within the next ten years, or they may drop support for that product.
With open/free software, you have the chance to maintain the product yourself, long after the original producer has dropped support.
Microsoft is to software what Budweiser is to beer.
Too many times we've paid for support from a vendor, only to discover that the problem(s) we've encountered are beyond their ability/desire to resolve...and we've been stuck with a useless product...
At least if the product was OpenSourced we'd have the option of subcontracting the fix to a thirdparty rather than having to dump it and find something else.
24x7 Tech Support just means they'll answer your call...not that they'll fix the problem.
Just my 0.02c
Give a hand, not a hand-out.
"Hello, welcome to Open Source Phone Support. Press One to listen to the fucken manual. Press Two to get a fax of the fucken manual. Press Three to get email of the fucken manual. Penguin T-shirts are currently on sale for five-ninety-nine. Proceeds go to improving the fucken manuals. Please stay on hold if you wish to purchase one. Oh, and by the way, don't forget to read the fucken manual before you call again. Have a nice day."
Table-ized A.I.
First, what is the probability that the commercial vendor will still be in business, supporting the version of the product that you want to use, in 5 years? 10 years? 15 years? Vendors typically have an end-of-life schedule and forced upgrades for products. Going through an upgrade, particularly an unwanted upgrade, can be just as expensive as re-writing the product from scratch.
There are a few very large systems vendors that have been in business for a long time and will commit to supporting any version of a product. Typically such contracts carry price tags that increase at least to the power of 1.5 per year. At least. Used to work for a company that paid for support on a 1950s vintage application (in the 1990s!). The cost was a significant percentage of their total revenue.
However, there is also one very large system vendor that has a habit of buying marginally successful software vendors, milking their support contracts for three years, then terminating the product. Do you have guarantees that won't happen?
Second, you make it sound as if when a problem occurs with the commercial product, you pop a punch card in a slot and *bam* a solution appears.
In fact, handling the vendor/support relationship on complex commercial products is an art and can easily become more than a full-time position. Software vendors have to be managed in much the same way that pre-teen children do: encourage them, praise them, lead them toward answers but don't do their homework, pick up their laundry off the floor, and discipline if and only if necessary. That is not an easy job, and one that generally takes a lot of time (again - just like children). Finally - what does your client do when the vendor just refuses to fix a problem? Which they will, eventually: "Sorry. Working as designed. Submit an enhancement request.". What now?
sPh
I have 6 people working for us right now, and another company that is providing support for a product that they didn't develop. It is easy and cheap to find people willing and quailified to give support.
Be careful not to get sucked into the level of support that commerical companies offer. They'll offer the world up front, but you'll have problems as time goes on. Don't forget the forced upgrades to the software and OS to keep the support going.
Give the commerical guys a call with a "tough" question, or a It's down and we need it up and have no clue as to what to do. See how they respond. I bet you'll be surprised (unless they know you are shopping, but even then)
I think you just inadvertently pointed out the key. SourceForge. Or, more generally, an active OS support community. If our valiant government consultant picks an open source package from J. Random Basement Boob, he may very well end up screwing himself.
From my reading of his explanation, he seemed intent on getting commercial support for the software, open source or not. I admit it's valid to want to pay for some assurance that if the software breaks, someone will be on hand to at least try to fix the problem. The OS movement doesn't seem to address this as much as it could; a lot of legit software mechanics could offer their services here.
The OS idea puts more stress on the fact that OS software is less likely to break because of peerage. Your support isn't supposed to have to be commercial; instead, if the software breaks, it's likely already been fixed by someone else, and you need merely get a patch from the same place you got the software. Compare this with commercial software, where you likely have to submit a bug to the company, and wait for the next version to come out, which you must pay for.
It's when your problem is not fixed, that you'll ever have a non-zero cost for OS software. The idea here is to either get your on-staff programmer to fix it, in which case it's already been budgeted - and yeah, I know in this case there isn't an on-staff programmer available - or ask for help from the community, in which case you likely spend some time waiting, and maybe feeling a little out of control.
In conclusion, it seems wise when selecting OS software to look at how "live" its support community is. SourceForge, for instance, has a nice way of telling this. Meanwhile, again, it's by all means proper to want commercial support for OS software, particularly if its vital to keep it running 24/7. If it's not as vital, and you can't or won't budget for an in-staff code wrangler, I would suggest something a bit less costly than full support - something to bail you out of that rare case of having to wait for a fix to a bug no one had seen yet. Anyone seen OS software insurance yet?
Lately democracy seems to be based on the skybox, the Happy Meal box, the X-box, and the idiot box.
I'm offering a case study.
All vendors shall remain nameless.
We purchased a search engine back in 1995 for indexing our intranet. At the time, I was working with Matt's Simple Search, and we needed to add X x 10 features to it.
Needless to say, a TCO supplied by the vendor "proved" that rolling our own was going to be almost double what their product was. We purchased the commercial system.
This was not your basic "I learned Windoze programming" type search engines. We bought a dedicated AIX box, etc, etc, etc.... However, when we moved to putting PDF's online, we found that we could not use the old search engine to do this.
Wev had just had another vendor go out of business, and they didn't want to pay to get their hardware back. So, we set up Xavatoria (formerly known as Matt's Simple Search) on a separate server and added the code for indexing PDF's.
AS HTML eveolved, the old search engine was choking on JavaScript and other new HTML tricks. We wrote perl front ends to strip these tags. And on and on like this. During the last year of that search engine's life I spent 25-40% of every week getting it to work. The program itself had a slight problem of corrupting its keyword database every month or so, yada yada.
We finally ended up switching because FDSE could parse and return a value from a 50MB index in 1/4 the time as the commercial product. They kept asking: "Why is this page so slow and the rest are normal??"
Now, we could have upgraded the SE in each of the cases above. Original cost of the Search engine: 12,000 + hardware and AIX licensing. If we had purchased all upgrades to that point, we would be on our second server after suffering through 4 major revs to the product. Each upgrade was priced higher that the initial cost.
1998: 12,250
1999: 24,125
2000: 18,750 (Discounted because of the need for a new server)
2001: 16,250
2002: Company out of business, product EOL'ed
(Support contracts ran from 8,000 py. initially to 43,000 py. in 2000. Mostly this was due to our version being EOL'ed for so long. If we had upgraded the support would have been 22,000 py. in 2000.)
That AIX box is now making a nice file server, and we are using the Fluid Dynamics Search Engine (Formerly known as Matt's Simple search and Xavatoria) to index our sites and our PDF's.
Over the life of that machine it was an almost $400,000 money pit. FDSE runs for free on a server we didn't pay for. Even counting my time (which was less than used to support the older product) I would say it was 1/3 of a FTE (me!)for initial setup. This includes adding custom functionality that the other product didn't offer.
That's still about $30-40,000 TCO. 0.1%. And that is before you count the time I spent maintaining the old one.
~Hammy
So, I think there are cases to illustrate whatever point one is trying to make. Sure, in your case open source may be more expensive, but that doesn't mean it's always going to be the case and anyone who dismisses a solution on any platform without doing a careful cost/benefit analysis of all factors, shouldn't be a decision maker.
Disclaimer: Yeah, I know exchange does more than just mail... but those applicable functions we nned that exchange does is handled by other server apps we run as well...