First giflib release since I reassumed the lead. Short version: lots of useless old cruft thrown out, everything Coverity-scanned, one minor resource leak found and fixed.
My regular readers will know that (a) I’ve recently been pounding bugs out of GPSD with Coverity, and (b) I hate doing stupid clicky-dances on websites when I think I ought to be able to shove them a programmatically-generated job card that tells them what to do.
So, here’s a side-effect of my recent work with Coverity: coverity-submit. Set up a config file once, and afterwards just run coverity-submit in your project directory and stand back. Supports multiple projects. Because, manularity is evil.
Here’s the HTML documentation.
I’ve been pounding on GPSD with the Coverity static analyzer’s self-build procedure for several days. It is my great pleasure to report that we have just reached zero defect reports in 72.8KLOC. Coverity says this code is clean. And because I think this should be an example unto others, I shall explain how I think others can do likewise.
The GPS with my magic modification that makes it into a 1ms-accurate time source over USB arrived here last week. And…wow. It works. Not only is it delivering 1PPS where I can see it, it’s the best GPS I’ve ever handled on a couple other axes as well, including superb indoor performance. Despite the fact that it’s been sitting on my desk five feet from a window blocked by large trees, it acquired sat lock in seconds and (judging by the steadily blinking LED) doesn’t appear to have lost it even transiently at any time since.
I got emailed summaries from a Coverity scan of the repo head version of GPSD today.
In a recent Google+ comment, H. Peter Anvin grumped about GPSD using “braindead heuristics” to determine which USB devices it should sniff as possible GPses when it gets a hotplug notification saying that one has connected. I was going to reply in a comment there, but the explanation ran too long for that.
Short version: yes, GPSD will very occasionally sniff at a device that is none of its business. We’re stuck in a bad place because of deficiencies in the USB standard, But it doesn’t happen often, and all the alternative behaviors I’ve been able to imagine would be worse in very obvious ways. Detailed explanation follows.
As promised, the Penguicon 2012 Friends of Armed & Dangerous party location: room 370. Begins 9PM tonight.
Hacking on the C code of giflib after an absence of nearly two decades has been an interesting experience, a little like doing an archeological dig. And not one that could readily be had elsewhere; nowhere other than under Unix is code that old still genuinely useful under any but carefully sandboxed conditions. Our reward for getting enough things about API design right the first time, one might rightly say. But what’s most interesting is what has changed, and giflib provides almost ideal conditions for noticing the changes in practice that have become second nature to me while that code has stood still.
Reminder: The Armed & Dangerous party at Penguicon 2012 is now barely more than 72 hours away. Begins 9:00PM Friday night, room number to be announced on this blog and probably tweeted too.
All readers of this blog will be welcome. See the real faces behind the Gravatar icons! Pursue discussion threads in person! Refrain from actual physical violence! Wheeee….
In 1994 I handed off the maintainership of giflib, the open-source library used by pretty much everything in the universe that displays images for the single most widely used icon and image format on the World Wide Web, because patent issues made it unwise for the project to be run by someone in the U.S. Now, eighteen years later, Toshio Kuratomi (the hacker who took it over then) has asked me to resume the lead. I have accepted his request.
One of my commenters brought up John Robb, a former SpecOps pilot who has made a name for himself as a counter-terror theorist by writing about “open-source warfare”. Mutual acquaintances confirm what Robb’s own writings suggest, which is that his notions of open-source warfare are heavily influenced by what I have called the bazaar model of software development.
When I learned this in 2004 I attempted to begin a conversation with John Robb by email. The remainder of this post is my email to him – to which, for whatever reason, he never replied. I have edited the one link reference into a live link.
About six weeks ago I asked How would you like to help fix the Internet? It was an open invitation to help develop a cheap millisecond-precision time source for instrumented routers, so we can do delay tomography on the Internet and measure the bufferbloat problem.
The discussion thread on that post was lively, but eventually moved to a thumbgps project mailing list out of public view. I’m going to summarize what has gone on here because parts of it are very interesting in a “Wow…it really is the 21st century!” sort of way, and illustrate that there can be a lot of power in making simple connections.
One of the most important reasons not to tell ourselves pretty lies about unpleasant realities is so that we do not hand evil people the power of being the only ones who are willing to speak the truth.
A brief update for those of you who were following the saga of our cat Sugar’s brush with death and remarkable rebound early last September.
The newest comScore figures, for February 2012, are out. Android has finally achieved majority market share in the U.S.. This is three months later than a linear fit to most of 2010 and 20111 predicted, but whatever happened in 4Q2011 to throw everybody off their previous long-term trend curves seems to be over. Android, in particular, is back to pulling about 2% of additional market share per month – actually, its growth rate seems to have increased a bit from before the glitch.
I was right not to overinterpret Apple’s very slight loss of market share last month. The iPhone is back to very, very slowly gaining share. Apple fans should resist the temptation to overinterpret that, though, since the gain is within statistical noise level.
RIM and Microsoft continue to go down in flames, losing not just market share but total userbase as well.
What does it all mean?
Even to a person as cynical and jaded as I have become about American politics, the brouhaha around the Trayvon Martin shooting is rather shocking. Usually, in past instances of even the most determined attempts to inflame racial hatred, there’s been at least a fig leaf of plausible deniability over the manipulation. Not this time. Not with MSNBC getting caught editing its presentation of the 911 tape to make it sound like the shooter uttered a racial slur. Not with Trayvon Martin’s photo obviously photoshopped to make him look younger, less threatening, and (ironically) more white.
I’m not going to utter or argue for a conclusion about whether or not Zimmerman shot in self-defense. We don’t know that. Perhaps he was, in fact, motivated by race hatred. The facts of the shooting will have to come clearer before that can be judged. We have more than enough facts, though, to observe and indict the operation of the racial-grievance factory, and to point a finger squarely at those who are dishonestly battening on Trayvon Martin’s death.
The party for Armed & Dangerous readers is still on for Friday night at Penguicon, and we have a new event – actually, the return of an old favorite: Geeks with Guns.
This year’s GWG is scheduled for 2:00PM on Friday the 27th; it will take place at the Firing Line range. We will be teaching basic firearms safety, handling, and pistol marksmanship; first-time shooters are welcome. Experienced shooters are also welcome and may be drafted as range officers and assistant instructors. Yes, I’ve done this before, and no, we’ve never had an injury – pistol shooting is statistically safer than golf.
Important: please mail email@example.com with your intention to attend. We need to give the range advance notice of roughly how many people will be showing. Two dozen is pretty typical.
Thanks to regular John D. Bell for organizing. John will be passing around the hat for a few bucks each to cover the range fees. Bring your own weapon if you have one, otherwise you can rent at the range or possibly borrow a friend’s. Newbs seeking instruction will be expected to buy their own ammunition.
This is a thank-you to my tip-jar contributors.
Today I spent $88.76 directly out of the tip jar on engineering samples of GPS dongles specially modified to carry the 1PPS signal out to USB. I will test them, and if the modification succeeds it is quite likely that the company I am cooperating with will begin shipping this mod in a volume product shortly. This will, for the first time, make time sources with 1ms accuracy available for less than $100 each. The application I have in mind is fixing the Internet; there are many others.
This is the sort of thing that happens when you donate money to support my open-source projects. Thank you; you are helping me make the world a better place.