« Books: Sequel to Prayers for the Assassin due in February | Main | Reading List: Day of Reckoning »

Thursday, January 10, 2008

The Hacker's Diet Online: Paper log generator

I have just posted an update to The Hacker's Diet Online which allows users to create paper weight and exercise logs. Many people, myself included, like to log their weight and exercise and then transfer the data to the computer later. Up to now, I've used log forms created by printing an empty Excel spreadsheet; this facility eliminates yet another need for that legacy application.

To generate paper log forms, navigate to the “Utilities” page and click the “Print paper log forms” item. A form will appear which allows you to specify the first and last month and year of the logs to be printed. When you click “Generate”, a document containing the requested log forms opens in a new window, and a print request is automatically queued a second later (allowing the document to render in the browser). (If JavaScript is disabled, you'll have to manually print the document and navigate back to the request page with the “Back” button.) The paper log form document uses a paged media style sheet to insert page breaks between each monthly log; it's up to your browser to handle this style element properly—if it doesn't, there's nothing I can do about it.

This is a small and simple project, but no task is too modest not to be torpedoed below the water line by the pathetic joke Microsoft purports to be a Web browser. The log form document displayed and printed correctly on the first try with both Mozilla Firefox (2.0.0.11) and Opera (9.25), but with both Internet Explorer 6 and 7 the rules beneath the items in the forms did not display. This turned out to be due not to one but two bonehead blunders in “The Moron's Choice™ for Browsing the Internet”. First of all, if you don't specify the colour of a border, it's supposed to default to the foreground colour of the element to which it is applied: in this case black. So what does Microsoft do? White, of course (or transparent, or some equally idiotic choice). After all, if the document specifies a border, isn't it obvious that most page designers will want it to be invisible? But specifying a colour of black for the borders still didn't make them appear! It turns out that for another of the incomprehensible reasons which spout from Redmond like a sewage geyser, if the content of a table field is void, a border-bottom specification is ignored—that makes sense, right? (And no, the empty-cells and border-collapse properties have no influence on this idiotic behaviour.) I ended up having to fill every underlined field in the table with an “ ” which was sufficient to persuade Bobo the Bonehead Browser to draw the border beneath it.

Ever since the mid-1990s when the user experience of Microsoft products began to deteriorate at an accelerating pace, I've observed that whenever Microsoft seems to chose a default behaviour, they almost always get it precisely backward: their choice interrupts the user's work flow, requires remediation, or forces the user to do additional work to get the desired result, as if the goal were to make the experience of using a computer as irritating and intellectually brutalising as possible. As this accelerates, even in the face of user pushback (note the slow uptake of Windows Vista and Office 2007, both among the most opaque and user-hostile products ever fielded by an industry leader), one can only guess at the reasons for this, and whether it is due to incompetence or to a fundamentally flawed design philosophy entrenched among those who create these mediocre, regrettable products which, after using competently-implemented alternatives, seem increasingly like getting behind the wheel of a 1975 Chevy Vega.

Posted at January 10, 2008 22:33