Memory Lane

I talk a lot about how projects like OpenNMS really depend on the community. Well, we were chatting on the IRC channel (#opennms on freenode) today about classics from the past, and through the magic that is gmane we were able to dig up some of the more classic posts.

First off, at OpenNMS we really try to be nice, and I think we succeed compared to some other lists. I don’t think anyone ever really gets flamed, although we may reply with humour. For example, last month I replied to the following:

From: Tarus Balog
Subject: Re: [opennms-discuss] customize opennms web console
Date: 2006-11-09 18:01:35 GMT

> Hi all, does any know how to customize opennms web console ?

Oooh! I do, I do.

-T

Okay, that was a bit snarky, but what kind of question is that? It’s like I’d asked “does anyone know how to program in Java?”. Having done this for a long time now I read it as “Hey, let me interrupt here and due to my laziness can someone stop what they are doing and create a long tutorial on modifying that there web-thingy?”

Sometimes questions like that just hit me wrong. Had it been phrased “Hello. Sorry to bother, but I’ve looked all over and I can’t seem to find any documentation on the OpenNMS webUI. I understand how web pages work, although I haven’t worked with Tomcat before, so if someone could point me in the right direction I would appreciate it.” I would have crafted a slightly more useful answer. Seems like I’m not the only one, here is the infamous “masochistic coding slaves” post:

Continue reading

Milton Friedman, R.I.P.

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.