|« Avoiding the Splice||Scientific Phonation »|
By now I'm sure you've heard of the Bad Code Offsets project. I announced it here back in November and gave a pretty exciting update in December, where we were able to give a whole bunch of money to some great open source projects. But what was especially exciting was the The $500 Good Code Grant.
Tell us how your free and open source project prevents bad code from being created and show us how $500 would make a real difference in your project
— or —
Propose a new, free and open source project and show us how $500 would help you get it started
We really do drive out bad code, in both direct and indirect ways, and we supply examples of good practice for emulation.
GPSD is a service daemon and device multiplexer that is the open-source world’s basic piece of infrastructure for communicating with GPS receivers, and it’s everywhere Linux is – running on PCs, on embedded systems, and on both OpenMoko and the entire line of Maemo cellphones. We’re directly relied on by dozens of applications, including pyGPS, Kismet, GPSdrive, gpeGPS, position, roadmap, roadnav, navit, viking, and gaia. If you’re doing anything with GPSes on an open-source operating system, GPSD is your indispensible tool.
The reporting protocols used by GPS sensors are a hideous mess — the kind of mess that tends to nucleate layers of bad code around it as programmers with insufficient domain knowledge try to compensate for the deficiencies at application level and wind up snarling themselves up in ever-nastier hairballs. Part of what GPSD does is firewall all this stuff away; we know everything about the mess so you don’t have to, and we present clean data on a well-known port in a well-documented wire format. We then provide client-side service libraries that will unpack GPS reports into native C, C++, Python, or Perl structures so you don’t even have to know about our wire format.
If our client applications had to deal with the back-end mess of poorly-specified NMEA 0183 and seventeen different vendor-specific binary protocols, I for dead certain guarantee that the total community bug load from GPS-related problems would go up by an order of magnitude. And I’d bet more than any of the $500 prizes the Alliance is offering on the bug count going up by two orders of magnitude.
We also try to drive out bad code indirectly in the same way we keep our defect level low — by providing an example of good practice that extends all the way up from our development habits to the zero-configuration design of the gpsd daemon.
We're proud to support the GPSd project, and will be disbursing the grant money right away. Ideally, we'd like to deliver a giant, over-sized check in person, but we felt the exorbitant production cost was not a good way to spend the Alliance's limited resources. And speaking of those resources...
Join the Alliance for Code Excellence!
Thank you to everyone who joined up as a Patron Member. As I mentioned before, The Alliance for Code Excellence is a not-for-profit venture that's 100% volunteer driven, and members pay for the hard costs (materials, legal, postage, etc) through their annual dues of $50.
So if you like what we do, feel free to become a member. A one-year membership is $50 and, as a welcoming gift, you'll receive a black T-shirt with our logo on it.
Thanks to our members' support, we'll be giving away another $500 to a small, lesser-known open source project that could use it effectively. The guidelines are almost the same as before: simply tell us how your free and open source project prevents bad code from being created and show us how $500 would make a real difference in your project, and we'll consider donating to you.
So what's different from last time? We're only considering existing projects, not to-be-created projects. It's not that we don't want to support ideas, it's just that we have another idea for those.
We've noticed that there are a whole bunch of open source frameworks and applications, but there aren't too many free and open source websites that aren't inundated with ads. One great website that comes to mind is Ajaxload; it's a simple little website that makes those ajax "loading" icons for you.
We're not entirely sure why there's a lack of these websites around, but I suspect a large part has to do with the cost. Software tools aside, a website that generates a reasonable amount of traffic can cost a bit of money to run, and not too many people are eager to commit to spending that in the long term.
We're hoping to change that. The goal of the Open Web Innovation Grant is to remove the cost barriers to creating free and open source web applications. Here's what we'll do as part of the grant:
All you need to do is tell us your idea, how you would implement it, and what support you'd need to launch. Remember, the goal is to build a project that helps reduce the generation of bad code, even if that means saving developers time.
I was originally planning on ending things in the previous paragraph, but I couldn't resist sharing this. Bad Code Offsets can be purchased in all sorts of denominations, ranging from 1 SLOC to 10K. While we certainly expected the 1 SLOC's through 100 SLOC's to be sold, we were surprised when an anonymous supporter purchased a 1,000 SLOC Bad Code Offset. I'll leave you with a (crappy cellphone camera) picture of what the 1,000 SLOC offset looks like.
Unlike the lower denominations, these are oversized and come matted and framed in the color of your choice.
|« Avoiding the Splice||Scientific Phonation »|