How to stop failures of major custom software procurements.

When government pays companies to build big custom software programs for them, they succeed just 13% of the time. Here is why failure is so common, and about the simple change that turns those outcomes on their head. Major government software projects fail because government has learned, over many years, to do exactly the wrong …

My videoconferencing setup.

My job on a distributed team necessitates that I spend 1–6 hours meeting with folks via videoconference. Google Hangouts, Zoom, Appear.in, and GoToMeeting intermediate my professional interactions with co-workers, vendors, and clients. Initially, I joined these using my Macbook’s standard camera and iPhone earbuds, but spending so much time on the phone, I needed to make some changes. In the intervening six …

Truth, earned credibility, and a publisher’s responsibility.

I spent much of the ’00s as a political blogger. I wrote here, mostly about state politics. When I decided to start writing about state politics, in 2003, I sought out other political blogs in Virginia. There weren’t many, maybe a half-dozen. I added them all to my blogroll, made a point of reading those …

I want you to become a government tech vendor.

Hey, competent tech folks: your country needs you. Your knowledge, your experience, and your connections can improve the United States for everybody. I’m not asking you to go work for the federal government. I’m not asking you to go work for a non-profit. I’m asking you to become a government technology vendor. I want you to sign up at …

How I built a chicken coop.

I am not a carpenter. My occasional effort to build something, no matter how mundane, ends badly. That’s because carpentry is hard. There are a hundred ways to screw up, and ninety of them are only obvious in retrospect. I took shop class in middle school, so I’m generally comfortable with the tools of the …

Term-limiting your organization can be a gift to future you.

For just a great many mission-based organizations, there is some point in time at which it should have accomplished its mission. If it’s done that, then it should stop. And if it hasn’t accomplished its mission by then, it should still stop, because it’s apparently not able to get the job done. The landscape is littered with zombie non-profits that exist to …

How to get started with continuous integration.

I’ve put off learning to use continuous integration tools for a few years now. There’s never a good time to complicate my development process. But today I finally did it. It works differently than I thought, and was easier than I expected, so it’s worth documenting the process for others. I have a non-trivial number of GitHub …

Shuttleworth fellowship.

I am very happy that, as of this week, my work at U.S. Open Data is funded entirely by the Shuttleworth Foundation. The South African organization has awarded me a one-year fellowship, which covers my salary and also provides up to $250,000 in project funding in that time. I’m very happy to have their support, and I’m excited about …

“Accidental APIs”: Naming a design pattern.

Like many open data developers, I’m sick of scraping. Writing yet another script to extract data from thousands of pages of HTML is exhausting, made worse by the sneaking sense that I’m enabling the continuation of terrible information-sharing practices by government. Luckily, it’s becoming more common for government websites to create a sort of an …