Autotools must die

Me, on the GPSD mailing list: Once upon a time, I did not hate autotools. Yea verily, it was the morning of the world and all things (even autotools) seemed fresh and new). I’d say this innocence lasted until about, oh, 1995. But autotools was a kluge. And it did accrete kluges and crocks around… Continue reading Autotools must die

Subversion to GIT Migration: A Tale of Two Gotchas

I’ve been wanting to migrate the GPSD codebase off Subversion to a distributed version control system for many months now. GPSD has a particular reason for DVCS; our developers often have to test GPSD sensors outdoors and aren’t necessarily in range of WiFi when they do it. GPSD also needs to change hosting sites, for… Continue reading Subversion to GIT Migration: A Tale of Two Gotchas

On Learning Haskell

I’ve had learning the computer language Haskell on my to-do list for some time. I’m actually stepping up to learn it now, thanks to a temporary lull in my other activities and a vicious cold that has left me disinclined to strenuous work. I may associate Haskell with the taste of zinc gluconate for the… Continue reading On Learning Haskell

Published
Categorized as Software

Greed kills: Why smartphone lock-in will fail and open source win

In a previous post, How smartphones will disrupt PCs, I explained how and why I think small, ultra-portable, general-purpose computers that we’ll think of and use as “smartphones” are going to displace the PC. I promised then to explain why the software of these devices will be open source. Go read Androids Will Challenge the… Continue reading Greed kills: Why smartphone lock-in will fail and open source win

When you see a heisenbug in C, suspect your compiler’s optimizer

This is an attempt to throw a valuable debugging heuristic into the ether where future Google searches will see it. Yesterday, my friend and regular A&D commenter Jay Maynard called me about a bug in Hercules, an IBM360 emulator that he maintains. It was segfaulting on interpretation of a particular 360 assembler instruction. But building… Continue reading When you see a heisenbug in C, suspect your compiler’s optimizer

Published
Categorized as Software

Comment to USCG on NAIS policy

These are comments on policy for sharing information from the U.S. Coast Goard’s NAIS, a network of 140 AIS receivers covering U.S. coastal waters, as solicited by Federal docket USCG-2009-0701. (The docket request for comments is here.)

Published
Categorized as Software

Some things are…priceless…

Yesterday morning I learned that GPSD has been awarded the first Good Code Grant by the Alliance for Code Excellence. This is how I think about it now: Amount of test hardware you can now afford: $500 Being able to tell people that your project is funded by the sale of indulgences…priceless!

Published
Categorized as Software

GPSD and Code Excellence

There’s a wonderfully tongue-in-cheek project called the The Alliance for Code Excellence (“Building a better tomorrow — one line of code at a time.”) that sells Bad Code Offset certificates. They fund open source projects to produce good code that will, in theory, offset all the bad code out there and mitigate the environmental harm… Continue reading GPSD and Code Excellence

Published
Categorized as Software

The pragmatics of webscraping

Here’s an amplification of my previous post, Structure Is Not Meaning. It’s an except from the ForgePlucker HOWTO on writing code to web-scrape project data out of forge systems. Your handler class’s job is to extract project data. If you are lucky, your target forge already has an export feature that will dump everything to… Continue reading The pragmatics of webscraping

Published
Categorized as Software

Structure Is Not Meaning

So, I announce ForgePlucker, and within a day I’ve got some guy from Y Combinator sneering at me for using regular expressions to parse HTML. Says it’s “crappy code”. The poor fool…he has fallen victim to a conceptual trap which I, fortunately, learned to avoid decades ago. I could spout a freshet of theory about… Continue reading Structure Is Not Meaning

Published
Categorized as Software

Announcing ForgePlucker

I’ve been strongly hinting in recent blog entries that I planned to do something concrete about the data-jail problems of present open-source hosting sites. Because I believe in underpromising and overperforming, I decided at the outset not to announce a project until I could not only show working code, but code with wide enough coverage… Continue reading Announcing ForgePlucker

Published
Categorized as Software

The future of software forges

I’m still not going to talk about my attack on the forge infrastructure problems quite yet; the software is coming along nicely, but I intend to announce only after it handles its fourth forge type (yes, that was a tease). But I will say this: I now think I know what the future of forges… Continue reading The future of software forges

Published
Categorized as Software

How Not To Tackle the Mess around Forges

In my previous two posts I have diagnosed a significant weakness in the open-source infrastructure. The architecture of the code behind the major SourceForge-descended hosting sites is rotten, with all kinds of nasty consequences — data seriously jailed, poor or completely absent capabilities near scripting and project migration. I said I was going to do… Continue reading How Not To Tackle the Mess around Forges

Published
Categorized as Software

Looking Deeper into Forges, And Not Liking What I See

In my previous post, Three Systemic Problems With Open-Source Hosting Sites I identified some missing features that create serious brittleness in or project-hosting infrastructure. The question naturally arises, why don’t existing hosting systems already have these facilities? I have looked into this question, actually examining the codebases of Savane and GForge/FusionForge, and the answer appears… Continue reading Looking Deeper into Forges, And Not Liking What I See

Published
Categorized as Software

Three Systemic Problems with Open-Source Hosting Sites

I’ve been off the air for several days due to a hosting-site failure last Friday. After several months of deteriorating performance and various services being sporadically inaccessible, Berlios’s webspace went 404 and the Subversion repositories stopped working…taking my GPSD project down with them. I had every reason to fear this might be permanent, and spent… Continue reading Three Systemic Problems with Open-Source Hosting Sites

Published
Categorized as Software

GPSD-NG: A Case Study in Application Protocol Evolution

I’ve been doing some serious redesign work on GPSD recently. I had planned to do a blog posting about lessons learned, but the result grew enough length and structure to turn into an actual technical paper. You can read it here; comments and criticism will be welcomed. Note, everything described in the paper has already… Continue reading GPSD-NG: A Case Study in Application Protocol Evolution

Published
Categorized as Software

Computer Language Trends in 2009

Six years ago, in The Art of Unix Programming, I observed some interesting trends in the deployment of programming languages. One Christer Nyfält mailed me this morning reporting that he had followed up by collecting the analogous statistics from SourceForge for present time. Here’s what he said (lightly copy-edited as his English is a bit… Continue reading Computer Language Trends in 2009

Published
Categorized as Software