It’s just data

Ubuntu vs Ruby

If Ubuntu 12.04 if a LTS release, and Ruby 1.8.7 goes out of support in June of 2013, then why is the default still 1.8.7?

Ruby 1.9.2 was released in 2010. Ruby 1.9.3 was released in October of this year.

Experience with Git

The git vs svn permathread seems to have reignited at the ASF, and I thought I would describe some of my actual experiences with git in the hopes that it will help anchor the discussion.


Building Dart

I wonder how many people who are diss’ing Dart on Twitter and elsewhere have actually tried the building the language?


Thunderbird add-ons in Flux

Knowing that Thunderbird was going to be upgraded in Ubuntu 11.10, I took a look at the one extension I use, and found that it was not compatible.  I know I could hack it, but if things went wrong down the line, I would rather understand what I was dealing with.  Particularly, as my needs are meager: I simply wanted to create a button that would invoke fetchmail.


No more "XML parsing failed" errors

Andreas Bovens: we’ve decided to stop throwing draconian XML parsing failed error messages, and instead, attempt to reparse the document automatically as HTML.

AWDwR updated for Rails 3.1


Dave Thomas & Andy Hunt: Rails 3.1 introduces many user-facing changes, and this eBook release of Agile Web Development with Rails, 4th Ed. has been updated to match all the latest changes and new best practices.

Released virtually simultaneously with the Rails release.

Snow Leopard

Experiences with a clean install of Snow Leopard on a 2008 vintage mac-mini: sleep/wakeup issues, getting suexec working, RVM, installing and uninstalling MySQL, and playing with Mail app.


Upgrade Unavailable?

Sqlite3 3.7.4 doesn’t like Mac OSX 10.5.8.  Rails 3.1 doesn’t like sqlite3-ruby -v 1.2.5.  Neither Best Buy nor Apple will sell me Snow Leopard; not from their Brick and Mortar stores nor online.  Nor is Lion an option as upgrading to Snow Leopard is a prerequisite.

If anybody has any suggestions, please let me know.  Meanwhile, I can say this: while every previous version of Agile Web Development had screenshots of Safari on a Mac, the next update will have screenshots of Chrome on Ubuntu.



On Monday, July 27th, 1981 I reported for my first day at work at the IBM Federal System Division offices in Gaithersburg Maryland.  Much has changed in those thirty years.  While I have no immediate plans to retire, I must say that it feels rather odd to be in a position where I could chose to do so at any time.

Open Source Ideologies

Ian Skerrett: Some of those people that oppose the move are promoting ideology about open source software that is just wrong.  Luckily I am here to correct them.

Apache OpenOffice

Rob Weir: As you have probably heard, Oracle has followed through with their earlier promise to “move to a purely community-based open source project.”  OpenOffice is moving to Apache.  I’d like to offer you my own thoughts on this new opportunity and what it means. I recommend also the insights of my colleagues Ed Brill and Bob Sutor.


Ghostscript Segfault

Håkon A. Hjortland: For people who are just interested in a quick and dirty fix right here and now, here’s the gist

Affects Ubuntu 11.04 (a.k.a., "Natty Narwhal").  Fix works for me.

W3C License Poll

The W3C HTML Working Group recently had a preference poll on which license should be used for the HTML specification.  As directed, the W3C PSIG prepared three non-forkable license options.  Additionally, Mozilla provided two forkable license options.

For better or worse, the W3C is a member organization.  I’ve broken out the results by affiliation.


ASF Subpoenaed by Oracle

Sally Khudairi: The Apache Software Foundation (ASF) has received a United States District Court subpoena requiring the production of documents related to the use of Apache Harmony code in the Android software platform, and the unsuccessful attempt by Apache to secure an acceptable license to the Java SE Technology Compatibility Kit.

Sincerest Form Of Flattery

Ryan Dahl: By strongly basing our policy on the one used by the Apache Software Foundation we feel that we’ve created a policy which is liberal enough to allow the open source community to easily make use of the mark in the context of free open source software, but secure enough to protect the community’s work from being misrepresented by other organisations.

Natty with Unity

Did a fresh install this morning.  It installed in minutes, and after copying back over my files and installing some of my favorite applications, I was up and running.  No problems with networking, video, sound, or hibernation.

It is nice to have the same interface on my desktop and my netbook again.  I did manage to find a weather indicator, which replaces the weather applet.

I like that Unity encourages me to reuse existing windows instead of continually opening new ones.

Rails += JQuery

Xavier Noria: In Rails 3.1 jQuery is going to be the default JavaScript library. Also, RJS has been extracted out.

CoffeeScript and SASS by default

David Heinemeier Hansson: Move the asset template engines to the user-generated Gemfile

Bouncing a message from Gmail

In order to moderate a W3C mailing list, one needs to be able to bounce a message.  This apparently isn’t directly possible with gmail, but can be worked around manually:

Perhaps if I need to do this often enough, I’ll automate the process, but for now these notes will help should I need to do the process again in the future.

Edition 4 in Print

Dave Thomas & Andy Hunt: It’s no April Fool’s joke, the long-anticipated Agile Web Development with Rails, 4th Edition for Rails 3 is now in print and shipping.

If It Weren't For People...

Ryan Shaw invited me to speak to his INLS-520 class at UNC Chapel Hill this afternoon.

I posted my slides on the web; most of them came from prior presentations, slightly updated.

The Secret to Getting Your Way

Stormy Peters: You know those people that come into every meeting and everyone just loves their idea? Or they propose an idea on the mailing list and everyone immediately pipes in to say how great it is?  Ever wonder how they do it?

Fukushima in Perspective

Analysis by Nuclear Science and Engineering Department at MIT and from a small business owner in Japan.

Favorite line: “somebody gets a cleanup bill with a whole lot of zeroes in it.”

CSS3 Media Queries

Now that I actually have a width-constrained device, I’ve finally found the motivation to make this site more useful in such an environment.  I’m now using CSS3 Media Queries to weblog into a single column format and kill both horizontal whitespace and the site’s watermark for window widths that are 800 pixels or less.


Verizon Droid2 Global

OK, so I made the plunge and purchased my first ever “smart” phone.  Herewith are things I noticed during the first day, and what I am still exploring.


Implementing Open Standards in Open Source

Lawrence Rosen: Specifications are different from software, but they are weapons in the competitive software wars and they are subject to legal control by contract and by law. Companies try to control specifications because they want to control software that implements those specifications. This is often incompatible with the freedom promised by open source principles that allow anyone to create and distribute copies and derivative works without restriction.  This article explores ways that are available to compromise that incompatibility and to make open standards work for open source.


Elijah Insua: require('jsdom').env('',function(e, w) { console.log( w.document.getElementsByTagName('a').length, ‘node releases!’ )})

weld also looks promising.  For my use case, I would like to have it be able to handle hash values which implement the DOM Element Interfaces.


New Modem.  Same Poor Service.

Got a new modem last month.  We will see if in one week my Internet access is disabled as a result.


What is Sarah Connor?

Ken Jennings: C’mon IBM!  You just invented SkyNet!  Own it!

IRS Success, Kinda

The Taxpayer Advocate ended up being worse than useless.  Ultimately, we did what I wanted to do all along: produce an amended return, send it along bypassing the Taxpayer Advocate — and everybody else — and start over.  Yesterday I got a check.  It included interest on the amount they owed me.  There was no cover letter and no explanation.  The interest amount completely offset the interest that they originally charged me, and covered the penalty, with a modest amount left over.

In a just world, I would have gotten actual interest back on the full amount of my money that they had tied up and not just a mere refund.


Charter Extension

Philippe Le Hégaret: Starting in March, W3C will dedicate new staff to drive development of an HTML5 test suite.

Also: W3C Confirms May 2011 for HTML5 Last Call, Targets 2014 for HTML5 Standard.

Unexpected token

For no particular reason, I decided to update to JQuery 1.5 on this site.  Previously, I had been using 1.3.2.  Checking my Firefox error logs I see the message reported by bug 7535.  Apparently this should be fixed with Firefox 4, which is fine with me.  It is not like I don’t get plenty of warnings on use of CSS 3 and vendor properties anyway.

If anybody notices any other problems, please let me know.


Ryan Gavin: We are pleased to announce that today we are releasing the Internet Explorer 9 Release Candidate (RC)

Downloaded MSIE 9 RC.  Things look fine.  At this time, I’m dropping svgweb.


Inferring Feed Icons

For reasons that aren’t exactly clear to me, the practice of specifying icons in feeds hasn’t quite caught on.  Many sites specify a shortcut icon or provide a favicon but curiously few provide this information in their feed.

To address this situation, I wrote a small script that searches for icons and creates a small ini file with this information.  Passing the name of this file as an additional parameter on the call to generate a planet results in better looking planet.

One oddity I did notice was that at least two sites return back zero byte responses on GET requests to /favicon.ico.

Breaking the Web with hash-bangs

Mike Davies: So the #! URL syntax was especially geared for sites that got the fundamental web development best practices horribly wrong, and gave them a lifeline to getting their content seen by Googlebot.

Invisible Crisis

Russ Housley: There is no crisis, but there is a need for action so that the Internet can continue to grow.  The transition to IPv6 requires the attention of many actors.  However, our parents, spouses, and children will be largely unaware of the transition.  They will continue to be amazed of the endless possibilities offered by the growing Internet.  For them, this milestone will remain insignificant.

Microformats and RDFa deployment

Peter Mika: The chart below shows the deployment of certain microformats and RDFa markup on the Web, as percentage of all web pages, based on an analysis of 12 billion web pages indexed by Yahoo! Search.

OpenID -= 37Signals

37Signals: Much has been written about the usability and reliability problems facing OpenID. Some of the better ones are OpenID Is A Nightmare by Rob Conery and the What’s wrong with OpenID? thread on Quora. No need to repeat all that here.

Helping Users Install WebM Support

Henri Sivonen: When you publish WebM content, instead of explaining which browsers support WebM, you can simply link to and it will detect if the user’s browser supports WebM. If the browser doesn’t support WebM, the page will suggest upgrading the browser to a new version that supports WebM, installing a WebM decoder if the browser supports 3rd-party decoders and one is available, switching to another browser or using another operating system (as applicable and in that order).


John Cowan: I’ve been developing a parser for MicroXML which I have dubbed MicroLark, in honor of Tim Bray's original 1998 XML parser Lark. I didn’t take any code from Lark, but we ended up converging on similar ideas: it provides both push and tree parsers (as well as a pull parser), it is written in Java, and I intend to evolve it as MicroXML evolves.

I’ll openly admit at this point that I’m skeptical about the prospects of MicroXML.  I continue to be more hopeful about XML5.  That being said, my own personal efforts have stalled for the moment, at least as they relate to node.js.


HTML5 logo

Ian Jacobs: W3C unveiled a logo for HTML5 today. HTML5 in the broad sense covers many different technologies at varying degrees of standardization and adoption. Commercial sites have begun to take advantage of some of the technology, and we are excited that this logo will help raise awareness about HTML5 and W3C.

Update: Ian Jacobs: The most unified criticism has centered around the FAQ's original statement that the logo means "a broad set of open web technologies", which some believe "muddies the waters" of the open web platform. Since the main logo was intended to represent HTML5, the cornerstone of modern Web applications, I have updated the FAQ to state this more clearly. I trust that the updated language better aligns with community expectations.

Planetary Exploration

The original Planet was simply named Planet (not Planet Planet despite what the web site says).  It was originally created by Scott James Remnant and Jeff Waugh.  While small, it became difficult to maintain, so I embarked on a radical refactoring.  Later, Mars took a different direction.

Now that I’m exploring node.js, I have the opportunity to revisit this once again.  As this is a journey, I’m not sure where this will end up, or if it will end up with anything useful at all.



L.M. Orchard: This post discusses how you can still use feed auto-discovery, even restoring the icon to the toolbar with a few clicks and a drag

Les also has a post on the thoughts behind this change.


I’ve posted a rough beginnings of an implementation of xml5 for node.js.  The core of this work is the tokenizer, for which I wrote a simple script to do the conversion of Anne van Kesteren’s implementation of the parse state methods to the style that Aria Stewart used for html5.  Pretty much the remainder was “borrowed” from html5.

Plenty still needs to be done.


Chrome -= H.264

Mike Jazayeri: Though H.264 plays an important role in video, as our goal is to enable open innovation, support for the codec will be removed and our resources directed towards completely open codec technologies.

Mars on Nokogiri

I’ve posted an experimental branch of Mars which replaces all of the various HTML and XML parsers that Mars supports with Nokogiri.  Instead of picking up the sanitizer from html5lib, I’ve picked up the sanitizer from Instiki.  For the moment, mars has lost the functionality of providing a bozo indicator, and I’ve yet to take a look at getting the haml support working.


Next up, I looked at node-iniparser, with some test data I happened to have readily available.  In order to get it to work, I had to make some changes for Python ConfigParser compatibility.


First Impressions: node.js

Edward O’Connor: Fortunately, Node already has an excellent implementation of the HTML5 parser (by Aria Stewart)

I find it rather amusing that the first thing I encounter is a bug.  This bug was quickly addressed, and I’ve verified the fix.



xml5@github: Ruby port of Anne van Kesteren’s xml5@googlecode.

lib.rb$ ruby testrunner.rb 
All Good!
Run tests that need fixing...
All Good!