I’m tired. Tired of hearing yet another big bozo speech about how we will move to open source and how that will magically reduce our costs and make our software better.
Gentlemen (and those few ladies who end up reading this), behold, a couple of reality checks
1. Open source is not free
Contrary to popular belief, open source comes at a cost. Unlike commercial packages (full software, or libraries) the cost here is not tied to the initial cost of acquisition (either as a license fee with or without a support contract). The true cost of open source hides at a deeper level. The place where it still costs money is a cost of integration. Even though the idea of open source is that there are a whole slew of people working on it and that the community will be the best support group ever, the reality is that a lot of open source projects are actively maintained by only a handful of people per project. Which generally means that you (the developer who needs to integrate it) will spend a lot of time reverse engineering the code.
The second point where there is a form of (rather indirect) cost attached is in the area of strategy and maintenance. Since this code is created and maintained on a voluntary basis it doesn’t really carry any form of guarantee that it will be maintained and/or evolve, and if it does evolve in a direction that might not be what you wish/expect, there is no sales/account/technical staff to help you out in the migration or to voice your concerns to.
2 The licensing aspect
There is a vast number of licenses out there, making the distinction between all of them is beside the point here. Suffice to say that, in general, there are a number of common themes.
Not everything can be used for commercial purposes, some might require that you submit any modification back to the community under the same license, some allow you to use it as if it were closed source, … . Best to have your legal people look at the license if you are unfamiliar with the matter. Just a point of attention…
In conclusion, yes I believe open source code can make your software better but there is an amount of sanity checking that needs to be done (just as we do with closed source). The questions to be asked are not just a matter of financial or legal cover-your-ass but also of strategy (do I like where this thing is heading?, do I want this vital piece of my software to be open source?). There is no one-size-fits-all answer to these questions, so let us please answer them and do the due diligence.

While I completely agree with you that few people understand the cost of open source soft, please explain why question no 1 does not apply to closed sourced soft? How would the cost of integration and migration from old-tech A to new-closed-source-tech B be significantly lower than migration from old-tech A to new-open-source-tech C (provided A and B are made by different companies)?
Please also explain what guarantees (eg) Microsoft gives you that it will keep on supporting VBA (which they killed a few years ago)?
I wonder, if we are all going open-source, where will all the people developing closed-source software going to go?
If the prophecy is true, then they won’t be needed anymore. I suppose they could go work on open-source software… but who’s gonna pay them? A company? Okay.
Where does this company get enough money to support these people, if the software they distribute is free of charge.not providing their income.
Their income must be obtained in some other way… But how?
If it’s donations, funds and so on, that basically means they’re drawing money away from places that it could be actually used for helping needy people…
How does this all work and where the hell does this money keep on coming from?
Yes, when rereading now I realize my wording is a bit misleading. I did not intend to say that this cost is not associated with closed source, but rather that it is often forgotten/overlooked when people think about open source. (where mostly people take this cost into account when talking about commercial software/libraries)
When it comes to guarantees I think we need to make a split in the relative size of companies involved and how they relate to each other. I.e. the adoption of VBA by a small business does indeed not grant lots of guarantees from Microsoft’s side when it comes to long term vision, and the SME will need to make a strategy decision taking that insecurity into account.
The other way around though, when Microsoft would be heavily depending on a smaller business’s software package they (MS) may decide to enter some form of agreement (partnership, acquisition, ultimately replace with in-house dev, …).
I also believe that Microsoft will handle their customerbase differently when they stop supporting VBA (even if it were a little less widely adopted). I am sure that there will have been many communications, a “proposed” migration traject (with or without expensive consultants), etc. Which is typically not the kind of support you would get from an open source project.
Regarding point 1: so you basicly are saying there is not (much) of a difference between closed and open source?
Regarding point 2: I beg to differ. In the case of VBA: if you rely on it, and MS stops all development, you only have one option: migrate away to a different technology. If the product in question would be open source, you could hire someone to fix the things you need fixed. Yes, it would cost money, but you at least have the option to do so.
@WebDevHobo
I think there are viable business models you could set up around closed/open source software alike.
Where closed source software generates (part of) its revenue through the actual licensing of its software, open source can work with a model where the software is given “free” and the revenue comes from consulting and supporting services and/or custom implementations. It’s not because a company does not “sell” software, that it’s developers aren’t getting paid… (otherwise a lot of developers would be on the streets)
As far as where the money keeps coming from…I don’t have a degree in economics but I’m sure there will always be a need for software and there will always be companies that don’t want to invest in permanent development staff.
@Frank
point 1: essentially yes. There is not much difference between the 2, my point was mostly that people *think* open source is free. Similar in some ways to buying an iphone with a data plan, you may get the iphone for what appears to be free, but the cost of your dataplan is most definitely there. So is open source, on the surface it may look like you get free software, but deeper down there is a cost associated with it. The difference is mostly in the minds of people, when there is money spending involved (i.e. buying closed source software) people tend to do the due diligence which is often overlooked when deciding to use open source.
point 2: hadn’t looked at it in that way, but you definitely have a valid point there. As not cost efficient as the option may be at times, at least it is there.
To give you an example of point 2: I’ve had such a case this afternoon. Customer of ours uses some closed source image manipulation server for which they payed XX XXX eur of licensing fees about 2 years ago. A few months ago, the company was bought by Adobe, which immediately discontinued it in favor of one of it’s own (competing) products. However, the Adobe alternative does not do one specific thing the entire business of my customer depend one! They are now in deep sh*t and we are constantly providing work-arounds so my customer don’t have to go out of business and at least have the time to rewrite their entire software to use another product.
Continuity in development isn’t a real argument in the world of software, web etc.. which keeps constantly evolving…
It is true that open source software relies heavily on the userbase, whereas commercial packages rely on the company that built them. But I can’t say the latter gives a better user experience or support.
Open source software will continue to grow, because of the simple fact that succesfull projects become even more succesfull when lots of people get their hands on it and start using it in ways it was not intended to, requesting & adding features, pushing the envelope. And the beauty of it is that anybody with enough knowledge can make those “hacks” and don’t have to wait for the next upgrade they can buy.. (numerous examples, see web-cms’es e.g.)
I agree though that there are “hidden costs”.. open-source does not mean “free” and is certainly not always the best option !