Airport Security

When I went through airport security this morning I got the extry special screening. I am carrying some oddly shaped gifts to a friend in Germany so I expected my carry-on bag to get some attention, but they also checked my laptop bag.

Actually, the lady held it up and announced, “Spaghetti Bag!”.

So, okay, I carry lots of wires and connectors and stuff.

I just realized something both funny and scary. When I travel I like to wear a jacket that I also use when I ride my motorcycle. It works in good and bad weather and it has a removable lining that’s really warm. We’ve had nice weather so I’ve been riding a lot lately.

Well, I keep one of those old-school large garage door openers in the pocket of the jacket so I can open the door while on the bike. I meant to take it out before I left, but here I am, traveling to and in a different country, with what looks like a large remote control button (which, in fact, it is).

No one has questioned me yet, so let’s see if it makes it home.

From the O to the U to the C to the E

Once again I find myself at an airport, this time O’Hare, on a gray and rainy afternoon. I have a huge … nine hour layover, but at least I’ll be able to get some work done. I’ll arrive in Frankfurt around noon tomorrow.

And then it’s time for the OpenNMS Users Conference – Europe, the first of its kind and what is shaping up to be the OpenNMS event of the year. We’ve had a really nice response and are pretty close to the maximum number of people we can host, although if you are still interested we’ll keep registration open pretty much until the day of the conference (or until we reach our limit).

They have me speaking for almost three hours, so I hope I can keep everyone’s interest. For the first hour and a half I plan on an OpenNMS overview as well as some case studies for how OpenNMS is being used to solve real-world problems.

The second hour and 15 minutes will be focused on OpenNMS 1.8. Now that we managed to get our first stable release in three years out last year, we are moving to a more rapid and focused release process. Version 1.8 is all about discovery and provisioning. The new provisioning daemon (provisiond) is pretty amazing. We’ve always been about scalability and have demonstrated it in the past by monitoring very large networks, but this takes it to another level. Everything is policy based, and it is designed to make it extremely easy to plug in new discovery “detectors”.

Plus there are a number of other features, such as the RANCID integration, Layer-2 SNMP status polling and the WMI collector that I’ll cover as well. OpenNMS 1.8 is due in June. As usual it will be done when it is done, but considering that most of this exists in trunk now the date is reasonable.

I’m really looking forward to the afternoon sessions, when the Windbag of OpenNMS gets to sit down and bask in the collective wisdom that is our community. As with most conferences I attend, much of the fun is in what happens between sessions and I’m hoping we can find some nice place for dinner and beer afterward.

Many thanks again to Alex and the team at Nethinks for putting this together. I’ll be sure to post lots of updates.

Pragmatism

I have been blogging about my experiences running a company around OpenNMS for over six years now. While I love the medium that is the “blog”, it is not exactly the best vehicle for having a detailed, complex and nuanced discussion. For that nothing beats being face to face, but in a pinch e-mail will do.

Over the last week or so I’ve exchanged some e-mails with Luke Kanies, the Puppet master. In those e-mails I went into a lot of detail over my ideas for open source business models, including (gasp) entertaining the possibility that it might be possible to combine both commercial software and an open source project, a la “open core“, although I don’t think any of the current vendors I’m aware of can pull it off.

The scenario I described was rather “detailed, complex and nuanced” and I know that if I posted it here it would just be taken out of context and I’d be labelled a hypocrite. Luke replied:

This wouldn’t make you look hypocritical in my eyes; it would just make you seem more pragmatic.

That comment really stuck in my head because, quite frankly, I don’t think it is possible for me to be more pragmatic.



At The OpenNMS Group we have no investors – no millions of dollars in VC money burning holes in our pockets. In order to survive we have to worship at the alter of pragmatism. Despite this lack of investment, in 6 years we’ve gone from just me in my attic to eight people in three countries. Gross revenues are up 2000%. The only way to do that is by being as practical as possible, focusing on our mission to “Help Customers, Have Fun and Make Money”.

To me, being practical doesn’t mean sacrificing your principles. If my goal was to make as much money as possible as quickly as possible, I would have done things differently, but I don’t think it is necessary to exploit every possible opportunity to be successful.

I think that many in the business world take the opposite viewpoint. They would rather take every opportunity, use every trick in the book, and gamble in hopes of the quick payoff, rather than take a longer approach that could yield more over time.

To me that is the very opposite of pragmatism.

Citibank

Yesterday I had to use a Citibank ATM.

As many people have pointed out, that fee was about twice as much as a share of Citibank stock costs today.

Crazy. In case you were wondering, it looks like a share of BofA stock is still worth more than an ATM fee.

How Much Stuff Do You Monitor with OpenNMS?

For those three people who read this blog, I was wondering if you would mind posting the number of devices, interfaces and services you monitor with OpenNMS?

I’m in Chicago where the client has 2718 nodes and nearly 100,000 interfaces. The interfaces count is a little larger than we usually see, but the node count is on the low end of average.

I’m curious to know what others monitor with OpenNMS. I’ve asked Ben to consider making a little “OpenNMS Fan Club” app that people can optionally install that will send us this information anonymously, but he hasn’t had the time.

Oh, and Jeff has fixed the “clipping” issue on the chart in what will become 1.6.3.

Chicago

Just a quick travel post. I’m spending a couple of days in Chicago this week. At OpenNMS we have a surprising number of clients in Chicago (mainly in finance) so I get to come here often, and I really like this town, but, geez, can’t someone get me up here in a month without an “r” in it?

I got to meet up with some friends and we went to Vong’s. For once they were open (for some reason the last couple of times we tried to go they were closed for a “private party”) and I got to have their passion fruit soufflĂ© again. This has got to be one of the best desserts ever made. They serve it with a scoop of passion fruit sorbet, and the best way to eat it is to poke a hole in the top of the soufflĂ© and drop the sorbet in so it melts.

Seriously, this is an amazing treat. Don’t miss it if you visit Chicago.

While we waited for our table I also discovered that I like gin. I hadn’t had any gin since college and at the time I thought it tasted like wood alcohol. But apparently martinis are pretty darn good – especially Bombay Sapphire Gin martinis. Made it a little hard to get up the next morning.

When I got to the hotel they put me on the “concierge” level. The room is huge. I’ve stayed in nice rooms before, but this was the first one to have a television built into the bathroom mirror.

It’s made by a company called Electric Mirror in case you need one for the home.

It has actually been a little warmer here than in North Carolina, but this weekend is supposed to be beautiful so I’m eager to be back home. Next week I’m off to Frankfurt for our first Users Conference. There are still a few places left, so I hope to see you there.

WebUI's: Are They Worth the Trouble?

Back in my OpenView days I can remember when the first web-based user interface for Network Node Manager came out. People were pretty excited since you could then access OpenView from your desktop without having to use Hummingbird or ReflectionX. It wasn’t very good and didn’t have all the features but it was good enough for some tasks.

But I’ll make the claim that it never got better than the native X11 client.

Now granted, I haven’t really worked with OpenView for many years, and in that time both that product and web technologies have improved, but sometimes I have to wonder if writing a web-based user interface is worth it.

The OpenNMS webUI has long been a weak point for the OpenNMS product. Part of that has been philosophical – the idea is that people are busy and thus having a robust and powerful notification system is more important than a user interface that you put up on a big screen, but also part of that has been that good webUIs are hard to write.

Recently some people have been reporting errors in the webUI that we can’t reproduce. We finally nailed it down to Internet Explorer 7. Something changed and now some of our code breaks on that browser. It used to work, and it works on all the other major browsers, but something changed to break it. It’s hard to write to such a fluid platform.

Also, there is the question of state. Ultimately people navigate in a browser via URLs. Someone might go to a particular page in our webUI, bookmark it, exit the browser, upgrade, reboot, turn off the system, go on vacation and when they come back want to go to the same URL and get the same exact information. It is difficult, and sometimes impossible, to make that work all the time.

Another reason we’ve been thinking about the webUI recently is due to a project we are doing for a client in Italy. OpenNMS has proven itself able to monitor tens of thousands of interfaces, but now we have a client with tens of thousands of interfaces on a single device. It’s pretty crazy. In order to display that information on a node page we’ve started using Ext JS. Also, a lot of work went into making the code perform well (by tuning the database queries, for example) with all of those interfaces.

We’re trying to use it throughout the webUI, such as on the front page for the resource graph drop down.

But I keep asking myself why we bother. Why not just make a Java client? Using webstart we could download it through a browser, and now with JavaFX it is even more transparent since you can “easily drag-and-drop a JavaFX application from the browser to deploy to the desktop”.

The feature list for OpenNMS 2.0 has always been focused largely on the user interface, and I’m pretty certain that JavaFX will be the way to go. It will allow us to deliver a richer user experience with less complexity on the programming side. In order to get there we have been adding RESTful interfaces to all of daemons (via jersey) which will expose all of the information that OpenNMS has to pretty much any outside source, including the user interface.

We are sometimes criticized for writing OpenNMS in Java, but in our experience nothing else out there can provide the same level of scalability (think hundreds of thousands of managed objects) while minimizing the programming effort.

When I was in college I used to tinker with old Mercedes-Benz automobiles. I’d buy them for around US$1000 and rebuild them. I’d start with the engine, then the brakes, then the electrical system, etc. The last job of any restoration was the paint.

However, being in college, I would usually run out of money before I got to that stage and I’d have to sell the car. Having a poor paint job always made it harder to sell – people were not concerned that they could get in the car and drive it across the country – they saw dull paint and assumed it was worth less.

I think OpenNMS gets the same treatment. The mechanics of OpenNMS are solid and proven, but since the webUI isn’t flashy it gets dismissed.

With Sun’s new open source focus and tools like JavaFX we should be able to put a nice new coat of paint on the OpenNMS user interface.

Sometimes the Internet Sucks

We got about four inches (10cm) of snow last night.

What sucks is that since I have broadband at the house, it is still a work day.

Yea.

I remember watching the Brady Bunch when I was a kid, and Mr. Brady would come home from work complaining about a rush job project he had to work on that was due in six weeks. These days six weeks seems like an eternity.

Side note: This was the first show where I discovered a continuity problem. There was an episode where Greg, the oldest boy, wanted his own room. The parents were in bed talking about it when one of them suggested the attic, to which the other replied that it would only work if Greg were 3 feet tall.

However, later in the series, Greg and Marsha (the oldest girl) argue over who gets to move into the attic, which is shown to be rather large (well, for an attic).

I count bullets, too. I knew the “punk” in Dirty Harry wasn’t going to be lucky.

Does Open Source Lessen Risk?

It has been a rainy weekend, soon to turn to snow. If we do see a decent amount of accumulation it will be the second such storm this year, and much more normal than the last few years when we had almost no snow. Those years were also very dry so perhaps we’ll break out of this drought pattern.

So, I’ve been able to catch up on things a bit, and one of those involved an episode of CSI called “Deep Fried and Minty Fresh” [spoilers]. There is a small section of the episode about biodiesel.

In the show, the team arrives at a residence in the desert where a man is converting used fryer grease into biodiesel. The characters are portrayed as stereotypical hippies and tree huggers, which I thought was for comic relief, but one states “It only cost a couple of hundred bucks to convert my truck”. This is actually wrong – biodiesel runs fine in unmodified diesel engines – so I’m assuming the writers really didn’t do their homework and were just taking cheap shots at the long-haired weirdos.

Where I live there is a thriving biodiesel community. It’s rare that you can drive through downtown without seeing a diesel vehicle with a biodiesel sticker or homemade emblems like “bioTDI” on a Jetta or “bioturbodiesel” on a Mercedes. And while some of the people involved could easily be classified as hippies, none are as vacuous as the characters on that CSI episode.

When I asked some of them if they had seen the program I was reminded that most don’t have televisions. However, they do have computers so I wanted to take a clip from that show and send it to them, and while the episode is a couple of weeks old this was the first chance I had to edit it off of my DVR.

The character in the show that referenced modifying his truck was not talking about biodiesel but instead about Straight Vegetable Oil (SVO). It is possible to run a diesel vehicle on vegetable oil alone (biodiesel uses a chemical process called transesterification to actually change the used oil) but it does require a modification to the engine. Basically, a tank is added to the vehicle to hold the used and filtered oil, and the hot water line from the engine is routed through the tank to provide heat. The vehicle is started and run on “petrodiesel” (or “dinodiesel”, etc.) until the oil has a chance to be heated, and then a switch is thrown to send the now warmed and liquid oil into the engine. Before the end of the trip, you throw the switch back to clean everything out before stopping.

This actually might work well in the Nevada desert, but I know from the experiences of my friend Lyle Estill that it can suck around here. First of all, it gets too cold. Second, unless you take a lot of long trips you don’t have time for the “heat-run-clean” cycle. He tried it for a long time before getting tired of being left by the side of the road and he ripped the system out.

People might think that there is a world of difference between communities that have grown up around biodiesel and those around open source, but Lyle has purposely borrowed a lot of ideas from our experiences with OpenNMS. He has built a one million gallon a year plant in town to produce biofuel from waste streams, and he has shared a lot of his experiences through his Energy Blog. You can use his site and his book to learn more about the process, or you can just hire his team to consult with you about your ideas or to have them craft a reactor for your needs.

This is similar to OpenNMS. It’s free and you can download it, use it, modify it and share it, but if you need help there is a commercial organization behind it.

In thinking about these similarities I came to realize that communities, especially open communities, act to minimize risk. If I wanted to try to wean myself from a dependence on foreign oil for my transportation needs, I could look to the work that Lyle and his team have done and make decisions that would cost me far less than if I tried to explore it on my own. Heck, I can just drive down to town and purchase biodiesel directly from the co-op, and many people don’t have that option.

In much the same way, open source software helps mitigate the risk involved in choosing software. Not only can you “try it before you buy it”, you are free to modify it and you can leverage the experience of all the other users in the community to limit the problems you experience. Heck, if the organization behind the application ceased to exist you could still use and improve the product.

Commercial software doesn’t provide that value. Most of our current energy options don’t provide that value (Lyle’s group was able to provide fuel during Katrina when all the pipelines were shut down, for example). But it is possible to build communities that do.

This is really nothing new. The whole idea of “insurance” is usually based around having a big enough pool that those who use most of the resources are easily supported by the rest of the group, but I’m thinking that open communities create a much bigger pool than closed ones.

Just some more silly thoughts for a cold and rainy day.