3 ms·
I don't think it's the money. It's the absence of the need to deal with paying. For instance, I recently wanted to check out a memory-resident database. Supp
by geebee 19y ago
I don't think it's the money. It's the absence of the need to deal with paying.
For instance, I recently wanted to check out a memory-resident database. Suppose that there was one that costs $50, and one that is free and open source. Like most devs, I don't have a company credit card, so I'd have to go off and ask financial for $50. They'd give it to me (with no grumbling), but I have to send an email, find them, fill out the form, get a req #, and so forth. Even if I do have the right to spend money without asking first, I'm still probably going to try the free one. As a result, I build my mental model around the free one, and then whatever I look at next seems different. The pay one has to be considerably better to overcome this disadvantage.
Everyone else does this too, so when I type "memory resident database" into Google, the free ones tend to pop up first. And when I start wondering how memory resident databases handle resultsets differently from disk I/O, the programmer who wondered about this earlier and wrote an article about it has almost always used the free, open source one (because the code is right there for review, and can be analysed), and uses it to illustrate. Eventually, the amount of documentation for the free/open source one greatly exceeds the one that costs money.
In the end, it's hard for commercial software to compete with open source/free in commodity products. Keep in mind, I'm not equating commodity with simplicity. Linux, mySQL, Rails, Python - these are all way more complicated than most products that sell for money.
In other words, the code that handles supply chain calculations is a lot more likely to sell for money than the database, operating system, and web server used to host it.