I’m Too Sexy for my Shirt

Sometimes I read back over my posts and I am certain that I come across as an arrogant a$$hole. I really don’t mean to; I just can’t help but to speak my mind on things such as the meaning of “open source”, running a business, beer, scotch, whether or not the Patriots should be the first team in the NFL with an undefeated season and other important issues.

My one true talent is the ability to surround myself with people smarter than me. Their only fault is, perhaps, hanging with me in the first place. I can’t help but think that anyone outside looking in would think “man, that’s a great team, but what’s with the loudmouth?” (grin)

In my zeal in promoting OpenNMS and our free and open ways it might seem as that I hate everyone and everything not OpenNMS. That’s not true. I’m pretty much for anything that works, even commercial solutions, and if something else works for you, great. As a services company it would actually cost me to try to support our product in the wrong environment.

Believe it or not I actually like and at times get along with other people in the field of network management. Take Eric Dahl at Zenoss, for example. We’ve met a couple of times and he’s a nice guy (not quite as nice as Ethan Galstad, but who is). At barcampESM he promised to send me a shirt and I promised to wear it.

Is it true that black is slimming? Or does this shirt make me look fat?

On second thought, don’t answer that.

Anyway – a big shout out to Eric for the polo. I’m putting an OpenNMS polo in the mail for him tomorrow. Peace out.

Bugfest for 1.3.10 on Saturday, 2 February 2008

[The following is a note I sent to the lists today]


I’ve been very happy to see a lot of activity on the lists and in bugzilla recently. OpenNMS is all about the community, and nothing pleases me more than to see lots of new people with a sense of ownership toward the project.

With that in mind, we’ve decided to have a “bugfest” to clean up as many bugs as possible for the 1.3.10 release. Those of you watching the subversion commit notices have seen quite a number of them fixed over the last couple of weeks, and we figured that if we all got together for a day we could knock the rest of them out.

Here’s how this works:

1) We will be coordinating this via the #opennms IRC channel on freenode. For those of you who don’t usually use IRC or never have, it is just a way to create a chat room where a group of people can talk. The IRC wikipedia article is a good place to start, and there is even a decent comparison of IRC clients.

When you get your software installed, you will have to connect to a server. In our case it will be “irc.freenode.net”. Then you will want to join the “#opennms” channel (the # sign is important, so don’t leave it off). Most clients with a command line use the “/” symbol to indicate an action, so “/join #opennms” will most likely get you to the right place.

You may also be asked to choose a nickname (or “nick”). Mine is Sortova. The channel is always active, so feel free to test it out before the 2nd.

2) Everyone is welcome, even if you don’t write code. We will be generating a number of snapshots that day, and help with testing (both the installation and functionality) is just as important as code changes. This would also be a good time to brush up on your wiki syntax skills as I’m sure we could always use some help with the documentation.

3) The focus will be on the 1.3.10 tracking bug, although any bug is fair game. The goal is to release 1.3.10 the week of the 4th.

I look forward to seeing some old friends and some new faces. I’ll probably start around 8am to 9am Eastern US time, but there will be people on the channel all day. No one has to stay the whole time, of course, so if you can only spend an hour or two that’s cool.

Why All the Hate?

I got a note from Javier this morning with the title “Why All the Hate?”. It made me sit up, because I like Javier, a lot, and if my post on VC money came across as hateful, I want to try to patch things up.

I met Javier at last year’s SCaLE conference and took an immediate liking to him. He loves his company, his product and his people as much as I love mine. We’re hermanos. Heck, you can even rearrange the letters of his name to spell “i.e. Tarros Veloj”, which means we have almost the same name, too.

This is why I hate writing about the industry. For people who do not know me it seems like I hate VCs, I hate the big four, I hate the little four, and I hate their communities.

Let me quickly address those points in reverse order.

First of all, to the users of all those other network management products out there: if it works for you, great. Don’t even consider OpenNMS. There is no reason to replace something that works. If this means you can take a shareware open source product and make it do what you need it to do, within your budget (of both time and money), then it is a great solution. If it requires a fully commercial product to do what you need done, great. Sometimes it makes better sense to spend a little money to save a lot of time.

As for the “little four”, I don’t agree with shareware open source models and nothing is ever going to change that. That doesn’t mean I “hate” them. In the context of traditional software companies it makes a lot of sense. Heck, the creators of MySQL and Xensource can thumb their noses at me from their Ferraris. But I truly believe that years from now the projects that are still recognizable as open source won’t have a commercial software component. I’m betting my Ferrari on that.

The “big four”? Heck, they don’t know we exist. They are so big and so far away I’d be surprised if they cared very much about open source at all. The guys in the trenches tasked with making those solutions work are still cool, as I rediscovered at barcampESM, hangin’ with the guys from BMC and Tivoli. No hate, I just believe there will eventually be a better way.

And finally, VCs. I don’t hate VCs. They are out to make money just like I am. Shareware open source models have made a lot of money for some over the past few months.

I will admit that VCs scare me a little.

They scare me because, as I mentioned in a comment on Jack Hughes’s blog, the goals of a VC firm that invests in open source based on a software revenue model are not the goals of the community at large.

Case in point: if I used the free version of a shareware open source product, wouldn’t I benefit from having the entire software available at no cost? Wouldn’t I be able to contribute more if I could focus on new features instead of trying to replicate existing “enterprise” ones? Thus the community goal of getting as much functionality as possible into the open source part of the product negatively and directly affects software revenue.

I would love for someone to point out to me the flaw in my logic here.

This doesn’t mean I wouldn’t consider investment from a VC firm. If the focus is on revenues outside of software, then a strong community means a stronger product and ultimately more money. Thus VC investment works to drive the community and everyone benefits. I’ve even laid out how I’d do it should we decide to accept such an investment.

Note: for those of you who think I’m being naive and that I just don’t want to give up control of the OpenNMS Group, I already have.

So, enough of this for now. Time to get focused on 1.3.10. And remember, I’m not a hater, yo.

Sometimes OpenNMS Amazes Me

When I became the OpenNMS maintainer in 2002, I wasn’t sure if I was up to the task of not only keeping the project alive but making it better. I knew the trick would be to surround myself with people smarter than me, and I somehow managed to do that with the creation of the OGP.

In 2003 we had a client who wanted to integrate a monitoring system with their in-house customer management application. Due to the architecture of OpenNMS, it was pretty easy to set up an extremely scalable monitoring platform. The only problem was that there wasn’t an easy way to get the monitoring information into OpenNMS and then back to their system.

This was well before the Importer was created, so since OpenNMS was able to receive arbitrary events from external systems they contracted with us to write some code to make the integration easier. This resulted in the creation of the xmlrpcd daemon. It is a daemon that isn’t used much, if at all, outside of this one client.

Now, when a client contracts with us to write custom code, we strongly suggest that the modifications be added to the code base. The project’s main architect, Matt Brozowski, introduced the concepts of extreme programming into OpenNMS, which include things like unit tests. This means that as OpenNMS grows, even older, legacy code will be kept up to date as the unit tests will fail if changes are made to the code that breaks their functionality.

That system we wrote in 2003 has been in continuous production since then, monitoring tens of thousands of servers in four data centers around the world. It is running on OpenNMS 1.1.1, on Debian Woody and PostgreSQL 7.2.

Today we configured the migration servers running 1.3.9 on RHEL 5 and PostgreSQL 8.1. After working out some issues with SSL certificates in the test environment, it turns out that the xmlrpcd code works just fine, something like 20 releases, and 5 years, later.

That’s the kind of stability that rates the name “enterprise-grade”, and why we use it in our tagline.