Python’s simpleparse module

I’m working on a project that required a bit more from the JSON parser than the stock JSON parser with Python allowed for. After doing some hunting around, I came to the unfortunate conclusion that I’d probably need to write my own.

Thankfully, Python’s simpleparse module lived up to its billing (thanks in large part to JSON having such trivial syntax) Here’s the working BNF suitable for passing to simpleparse:
Continue reading “Python’s simpleparse module”


Matthew Yglesias » Who’s “Ideological” in the Health Care Debate?

Great insight from Matthew Yglesias:

The habit of insisting that only the right and the left have “ideologies” and that people in the center don’t is one of the absolute most frustrating elements of conventional political discussion in the United States. The fact of the matter is that “centrist” ideological taboos have been the big story of the Obama administration. That starts with the imposition of an arbitrary cap on the size of the stimulus bill, it continues to the utterly merciless and fanatical centrist opposition to the existence of any public option, to the Fed’s refusal to undertake further monetary easing, to the unwillingness to contemplate really stern measures against bailed-out banks and their executives, and on and on and on.

The idea of a “centrist” ideology is easiest to apply to the “left-right” political spectrum in the U.S., but it holds true in other areas as well (e.g. proprietary versus open). While the “correct” answer is often between two extremes, that’s not always the case. People who tend to favor shades of grey are not necessarily more reasonable, just more prone to picking shades of grey.

Moving on

I’ve decided to leave my current job at Linden Lab. Those of you interested in the ins-and-outs of Second Life may want to look at my post to “sldev” (our open source development mailing list). It was a tough decision to leave, and even tougher to make without having my next move totally nailed down, but so far it feels like the right decision. Ask me in a couple months how I feel 🙂

Without going into too much detail about what I’m working on, suffice it to say that it involves open source in a pretty big way. Even if this immediate opportunity doesn’t pan out, the scope of stuff I’ll be looking at is going to be pretty narrowly focused on facilitating the creation of open source software. I’ll write more here as things get clearer.

Brutal honesty in open source development

There’s a bit of a flamewar going on right now between the main PulseAudio developer, and another Linux desktop developer who grew frustrated by some very real problems caused directly and indirectly by it. PulseAudio is the latest of many savior technologies that promise to make audio on Linux not suck. I’m actually pretty optimistic that the fifth(?) time’s a charm here; there’s a lot of very sensible things about the design.

Anyway, Jeffrey Stedfast wrote a series of blog posts culminating in “PulseAudio: I told you so“. In these, he documents his frustration with being given the runaround when trying to point out PA problems that he ends up debugging to the point of finding and/or filing several bugs/patches in various bug trackers. PulseAudio creator Lennart Poettering had enough, and posted to his blog with a long rebuttal, claiming that Stedfast’s blog post “flamed my software and hence me”. It’s a pretty run of the mill developer flamewar, which only caught my eye because I’ve had a few frustrating problems with PA myself and was hoping to learn more.
Continue reading “Brutal honesty in open source development”

Software as hiring decision

This article in CIO Magazine touches on things that you should look for in choosing open source software:

  • Project stability: Can you trust the project to be there when you need it?
  • Project support: Can you get support when you need it?
  • Internal software management: Does your company know what open-source programs it’s using? How it’s developing and deploying them both in-house and to customers?”

I’m not so sure that these problems are truly bigger problems for open source as they are for software in general. When people in companies select a new piece of software (for use as a standalone product or as an integrated component of a larger system) they miss one important thing: it is much more like a hiring decision than they probably realize. Many of the considerations people make for new employees (reputation, cultural fit, how they are to work with) are equally applicable to new software components and systems.

(CIO article via Matthew Aslett @ The 451 Group)

A hard problem worth solving

Here’s a description of the organic open source panel at OSCON (which I’m participating in): “The OSI’s Open Source Definition attempts to set the minimum bar for a software license to be considered “open source”. However, there’s much more to a software project than just the license. Are software projects dominated by a single company still open source? Does a project need to be ‘organic’ to be truly open source? What does “organic” even mean in this context?

My answer to the first two questions is “yes, of course projects dominated by one company are still open source, and no it doesn’t need to be ‘organic'”, where “organic” is (arguably) defined as a project which the first release included source, and is generally characterized as by a distributed development team with no single company truly in control, and “inorganic” is generally code that started off life as a proprietary effort. Yay, panel concluded, thanks everyone!

No? Ok, the line of questions above implies a question of quality, and there are very real qualitative differences between “organic” and “inorganic” open source…..
Continue reading “A hard problem worth solving”