2010 Dev-Jam – Day Six

The last day of Dev-Jam is always about commitment – well, commits to git anyway. After a solid week doing all things OpenNMS, parting is always bittersweet.

We took our group picture late, so we’re missing Bill and Matt R. The camera is Alex’s but the photo credit goes to Jen, one of the dorm advisor’s that Alex convinced to take our picture. I was stylin’ in my Doktor Kaboom t-shirt.

After we cleaned up the Club Room, 19 of us headed over to Town Hall Brewery for our last meal together this year. I think most people felt this was the best Dev-Jam ever: great facilities, awesome bandwidth and wonderful weather.

On Saturday the shuttle picks half of us up at 9am, while the rest will leave over the course of the day (well, except for Ronny who has decided to stay another week in the US). It will be nice to be home, but I’m not looking forward to a return to the hot and humid weather I’ve managed to avoid for the last two weeks.

We should be publishing a Dev-Jam wrap up in the next week or so, and I’m already looking forward to next year.

2010 Dev-Jam – Day Five

Things are starting to blur together now, so I can’t really remember all I worked on Thursday. I know I played around more with RT, and in the early afternoon, Ethan came over and we did a podcast with John Willis and Michael Coté.

I’ll post a link when Coté puts it up, but I think it was one of my favorite podcasts of all time. Willis got to gloat when I said that I liked “the cloud” and I got to talk about some of the scalability features of OpenNMS, such as the ability to discover and manage devices with 32,000 interfaces each (virtual, of course) and a test we ran for the Department of Energy where OpenNMS was handling 125,000 syslog message a minute – more than the Netcool/Omnibus syslog probe could handle.

Oh, and OpenNMS did it for 8 straight hours before we stopped the test.

Ethan got to talk about Nagios XI and we had a friendly debate on the open source services model and the commercial software model. If you are in to that sort of thing, it will be worth a listen.

For dinner that night we ate leftovers, and then went to Big 10 for the weekly pub quiz. We started to play but got distracted by a game that Ben introduced to us called Mafia.

There is a moderator, who removes all of the aces and face cards from a standard deck, except for two aces, a king and a jack. They then add enough “plain” cards so that everyone playing gets one, and they are dealt out.

The people with the two aces are “mafia”. The person with the king is the “inspector” and the person with the jack is the “doctor”. All of the rest are villagers. The moderator then launches into a story about night falling on a village and every goes to sleep. Everyone playing shuts their eyes.

He then instructs the “mafia” to open their eyes, and then silently decide which person in the game they wish to kill. Once a decision is made, the moderator has them shut their eyes.

He then asks the “inspector” to open their eyes. The inspector can then indicate a person at the table and ask the moderator if that person is mafia. The moderator will then indicate “yes” or “no” and the inspector closes their eyes again.

Finally, the “doctor” opens his eyes and the moderator asks them to indicate if there is a person at the table they want to save, and then they close their eyes.

The moderator starts their story again, stating that dawn has come to the village, and tragically someone has died. The game is then opened up for discussion and the villagers must decide on someone to lynch. That player “dies” and the game repeats until either all of the mafia are dead or all of the villagers are dead.

If the mafia targets the person the doctor chooses to save, no one dies in the night.

It’s actually a pretty fun game. Even if the inspector knows who a mafia member is, it is doubtful that they would flatly state they were the inspector since the remaining mafia member would obviously target them next. It is also doubtful that the doctor would save anyone but themselves in the beginning (although if the inspector identified himself the doctor might protect them in the next round).

In our game the mafia targeted me in the second round, but the doctor saved me so I didn’t die (you don’t learn this during the game but I was told afterward). The villagers were victorious but it had nothing to do with me, since the final mafia member was Antonio and I kept arguing that it was stereotypical to blame the only Italian at the table.

I was wrong. (grin)

GPGMail 1.3.0 – Open Source In Action

Yes, I use a Mac. Yes, I hate freedom. Yes, I use Mail.app.

And I am a bit of a security nut.

One of the most useful pieces of software I’ve used over the years is a plug-in for Mail.app called GPGMail. It was originally written by Stéphane Corthésy and released under an open source license, and it allows one to easily decrypt, encrypt and sign GPG messages right from Mail.app.

The problem is that Apple doesn’t really have an API to make such an integration easy, so with every new release of Mail.app it would usually break the plug-in, and Stéphane was responsible to fix it.

Well, after awhile Stéphane wanted to move on to other things, and with the advent of Snow Leopard GPGMail was broken – seemingly for good.

Stéphane writes:

I’ve just read the latest emails on the list, without participating. Actually I haven’t participated to the project since a very long time, for personal reasons. Situation will not change in the future, I guess.

It’s been now 10 years since I started GPGMail. At that time we were working on Rhapsody, the ancestor of Mac OS X, the link between Mac OS 9 and Mac OS X. gpg had just gone 1.0. I started the project because it might have been a critical piece of code for us at Sen:te in the near future, and it was really fun to develop :-)

Plugin was then made public, and received some interest in the Mac community, though it was still for geeks. Interest in PGP became bigger, the MacGPG project was born a year later, thanks to Gordon Worley. This encouraged me to go on with GPGMail development, and also MacGPG sub-projects. I spent many week-ends and nights coding for those, and have been very happy to see interest growing more and more.

Then time passed, it became hard to find people able to help on MacGPG development, and very few people were able to spend time to understand the underpinnings of (GPG)Mail, except me, unfortunately. By making the project open-source I had expected that people would come in and make the project go further. I was rather deceived by this, I must admit. There was no real momentum.

On my side, I wanted to explore also other projects, and became tired of working on GPGMail. I wanted something new. It was getting boring, I had less time to reply to user requests, and code had got very messy. GPGMail development quite stalled from that time, I spent time on it only after major system updates. I was still hoping some people would enter and help on the project in the long-term, not only for a single patch. Thus I opened up the project by putting it on SF, with a real OpenSource license that would’t prevent people from working on GPGMail.

To be honest, I waited a rather long time to upgrade to Snow Leopard specifically because GPGMail support was important to me. When Stéphane backed out of the project, the list was abuzz with people wondering about its future. Luckily, a number of people stepped up to take it over. The project launched a new website, the code and bug tracker was moved to github, and various patched versions started to come out.

Stéphane continues:

When Snow Leopard arrived, I was already spending no time on coding during spare time, and was not really willing to. Finally people entered into the dance and started coding, not only whining. And I must admit I’ve been really surprised by the results they obtained (congrats Lukas and others!). I kept telling myself I would update the project, and make a public release, when I’ll find time to, but the fact is that I cannot, for several reasons.

For so many years I’ve been hoping to find people helping me on the project in the long-term, without finding any, but now that time has come, project can fly without me. I hope there will always be enough people to take care of it. Till now, project was organized by only one person, and depended only on me. I took care of every details. It’s time to change that model and let the project be managed more flexibly. The bazaar model, as I would say.

So please, move the project out of SF, leave it opened to developers, designers, writers, aficionados of all kind. It’s no longer dependent on me, it will depend on all of you. I will close the SF project (and mailing list), and redirect the Sen:te web pages to the new site, once you completed the migration, then I’ll have a glance at the project, from time to time, probably to complain ;-) . My baby’s no longer a baby; it no longer needs me.

Thanks all for your support, and now take great care of GPGMail.

Today the team released version 1.3.0 of GPGMail, the first real release under the new model. It installed for me without incident, and I am happy that this project will live on. Thank you Stéphane and thanks to the whole GPGMail team for making this happen. Plus, none of this would have been possible if GPG itself wasn’t open source and packaged by a number of groups. Score one for the open source ecosystem.

Had GPGMail been commercial software, I would have been out of luck, but because it was open source, and that there were many who found it valuable, it lives on and propers.


2010 Dev Jam – Day Four

This was an incredibly long and busy day.

In a normal week I think about OpenNMS a lot, but during Dev-Jam there is so much energy that I think about it more (if that is possible) and it makes it hard to sleep. I stayed up late the night before working on the new opennms.org website and I woke up around 5am and couldn’t get back to sleep for all of the new ideas swimming around my head.

So I got up, did a bunch of .com work (including payroll – it’s that time of the month once again) and wrote what may be my last post on open core (probably not, but we can always hope). I then went downstairs to join the rest of the team.

It was distracting. Mike Huot brought in his smoker and was cooking what would become our dinner and it smelled amazing. They had to start on it the night before and, to jump ahead, the results were delicious.

There was a lot of work going on, and on a whim Bill decided to discover the network we were using. Here is a screenshot of the unfiltered nodes:

I worked with Alex on RT for most of the day, and managed to take a short nap just before Ethan Galstad and Mary Starr showed up.

Ethan has been a visitor to Dev-Jam before (he lives nearby) and Mary is his business partner at Nagios Enterprises. Nagios Enterprises is Ethan’s commercial software company that builds on the open source Nagios platform to deliver an extended and supported commercial version. That differs greatly from the OpenNMS business model, so we had a lively debate about it.

First, even though Nagios is open source, Nagios XI is presented as commercial software. Just like my Hyperic example yesterday, go to nagios.com and search on “open source”. No matches. Ethan is 100% transparent about the commercial nature of his product. Nagios XI is not open core.

Second, I have often said that I see software taking two paths: either becoming a commodity or becoming open source. Ethan has structured his business around commoditizing the Nagios platform and it is priced accordingly.

Finally, people have been building proprietary software add-ons on top of Nagios for nearly a decade, and Ethan quite simply wants a part of it. As the main person responsible for the project, he has built a brand of considerable value. Just now a Google search on “Nagios” returns “About 9,470,000 results” (OpenNMS is only around 123K hits). That’s an impressive number.

It does illustrate a difference between the communities around Nagios and OpenNMS. From the moment I took over the administration of the project, I have relied heavily on the community to keep it going and make up for my considerable shortcomings. In contrast, Ethan has been the primary author of most of the Nagios core code.

He asked me point blank why we didn’t produce a commercial version of OpenNMS. I pointed out that our market was squarely aimed at “open source network management” and that we didn’t have any expertise in selling commercial software, but the truth of the matter is that I don’t feel the same ownership over OpenNMS that Ethan has toward Nagios. While The OpenNMS Group does hold 100% of the copyright, it would just seem wrong to me to build on that work and not give it back to the community, in any fashion.

If you have never met Ethan, please understand that he is one of the nicest guys I’ve met in this business, and his business partner Mary seems very competent and brings a strong business background to the company. Note that what I have written here our my thoughts on our conversation and Ethan may have a different take on some or all of them.

So we stuffed ourselves with barbecue and talked business for several hours, then Ethan and Mary left and many of the rest of the gang went off to an outdoor showing of Sherlock Holmes.

It had been a long day. I went to bed.