Fourth quarter is traditionally hell for us here at OpenNMS, and this year is no different. I have a number of thoughts for blog entries that are growing more stale with the passing weeks, but I didn’t want to let this one go.
About a month ago Milton Friedman died. I am a huge fan of his work. For those who haven’t heard of him, he was a Nobel Prize-winning economist and a fierce advocate of capitalism.
Some of you might find it strange that a guy who makes his living on open source software would admire Dr, Friedman. There are those who equate open source with communism, hippies and Phish concerts (not that there’s anything wrong with that). However, I am involved with open source because it makes great business sense to me as a capitalist.
This does not mean I am a big fan of those often associated with capitalism. I belong to no political party, I disagree with the decision to invade Iraq, and I think we need to work harder to protect the environment. Some may sense a hint of hypocracy. For example, capitalism is often associated with big business, so how can I call myself both an environmentalist and a capitalist?
The problem is that at least in the U.S. we do not have true capitalism. Most of the time it works, but there are glaring examples of where it fails.
Take the energy industry for example. The single largest source of electricity production in the country is by burning coal. The U.S. has a lot of coal, so it makes sense that it would be used to produce electricity. If all electricity, regardless of source, is priced the same, and obtaining and producing electricity through coal is cheaper than, say, oil, it is more profitable to use coal and thus more producers will use it.
However, burning coal releases pollutants into the air. But in our current system, air is basically free. The fact that air isn’t really taken into account when calculating the cost of a coal plant is called an externality. It’s a failure in the market, not a failure within capitalism itself. If we could accurately capture the cost of externalities, the market could correct itself and coal energy might be priced higher than other forms, causing a decrease in use.
What in the world does this have to do with OpenNMS and open source software? Well, Friedman was instrumental in the abolition of the military draft. He reasoned that a recruit who volunteers for the military is more likely to want to be there than someone who is drafted. Therefore, they will probably do a better job, die less frequently and re-enlist (thus preventing the loss of experience).
I think the same rules apply to open source development. The contributors to OpenNMS work on the project because they want to. Most of what they work on are things that they are interested in doing in the first place, thus they put more energy into it and it turns out better. Many contributors come back and contribute more. Contrast this to a proprietary software company where programmers are told what to write, when to write it and how it should be done. This is not to say that a small proprietary shop can’t produce good work, but one of any size is bound to be less effective that a large and active open source community.
But the best market analogy is that a lot of the features that are being added to OpenNMS are at the request of the actual end-users. Things get added that are deemed necessary – by the market, and not by a bunch of people sitting around a big desk in some office. Thus OpenNMS has better market information, better feedback, and it evolves faster than a proprietary solution can change.
Milton Friedman was one of the first people to show that capitalism and social good are not mutually exclusive, and for that I salute him.