Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

grantm (164)

  (email not shown publicly)

Just a simple [] guy, hacking Perl for fun and profit since way back in the last millenium. You may find me hanging around in the monestary [].

What am I working on right now? Probably the Sprog project [].

GnuPG key Fingerprint:
6CA8 2022 5006 70E9 2D66
AE3F 1AF1 A20A 4CC0 0851

Journal of grantm (164)

Friday February 15, 2008
04:45 PM

Not a good start to the day

So I was walking from the train station to the office and passed this restaurant/bar. I'm not at all knowledgable about the mechanics and plumbing of restaurant kitchens, but periodic visits from a truck that sucks unspeakable things from the grease trap (or whatever) seem to be the norm. Today, just such a truck was parked on the side of the road with a largish flexible hose pipe snaking across the pavement and round into the restaurant kitchen.

At the precise moment that I stepped over the hose, one of its joints burst apart. Fortunately the joint was several metres from me but the combined factors of high pressure 'liquids' and strong wind mean that I ended up splattered in numerous places (literally from head to foot) with deposits of a substance having the consistency and odour of vomit.

I was not the only person affected in this way. You might imagine that the affected parties would form up into an angry mob. However in this case the environment had been transformed with such rapidity into such a festering pile of unpleasantness that none of us had any thought but to make our escape as quickly as humanly possible.

Ten minutes later I arrived at the office and headed straight for the bathroom where I removed clothing items and thoroughly rinsed their affected areas. I also took the opportunity to lather and scrub any affected areas of my body. My return to the office wearing a rather wet shirt and trousers prompted a number of enquiring looks.

I told the story to the three people who sit closest to me and apologised in case there was any lingering odour. Several minutes later I logged on to the $work IRC channel and found that one of them had changed to channel topic to:

Don't ask Grant about the exploding truck of vomit

Thursday February 07, 2008
03:09 AM

IE8 to Take us Beyond DOCTYPEs

I find this mind-bogglingly stupid.

To summarise...

The 'problem' we're faced with is that when people declared their HTML pages to be compliant with the HTML 4.01 Strict (or whatever) DTD they didn't really mean that. Apparently what people really meant was that they were happy with the way that the page was rendered by the current version of Internet Explorer at that time. The upshot being that if Microsoft were to release a new browser that actually was standards compliant and rendered the same HTML as intended by the spec, then the page would appear 'broken' in that new browser.

Apparently the 'solution' is to subvert the http-equiv meta tag to introduce a whole new declaration (in addition to the DOCTYPE) something like this:

<meta http-equiv="X-UA-Compatible" content="IE=5.5;FF=2" />

Then the hypothetical new browser will be able to degrade it's behaviour and magically render the page as it would have looked in IE6.

I am utterly stunned that anyone who actually understood the 'problem' could consider that a good solution.

Of course the real problem is that having won the browser wars, Microsoft put all meaningful development of IE on hold for 5 years.

We can't 'fix' that problem. It happened. It's history. Get over it. If that means that the next version of IE displays broken HTML as broken then so be it. Realistically what we're talking about here is that some page margins will be different, some divs will be a few pixels out of alignment and some fonts will be a slightly different size. Oh noes the end of the interwebs!

More on this theme.

Tuesday February 05, 2008
08:52 PM

Damian Conway @ Tuesday

Damian is going to be in Wellington for the Webstock conference and has graciously accepted an invitation to speak at Wellington Perl Mongers next Tuesday. The start time is 6:45pm and the location is the offices of Catalyst IT Limited. Address, map and other details are on the web site.

We've got a larger than normal room, so bring your friends and workmates and lets pack the place out.

Friday October 19, 2007
04:43 PM


So as I mentioned the other day, I went to the New Zealand Open Source awards this week. The current president of the NZ Open Source Society is Don Christie. Don is also a director at Catalyst IT Ltd where I work. When he came out to give his speech, Don arrived at the podium, squinted out into the spotlights and delivered this classic opening line:

«It's not like doing it in front of the bathroom mirror is it»

Fast forward to Friday and I'm alone in the lunch room at work waiting for my sandwich to toast. I saw the whiteboard and decided to try my hand at immortalising that line with a cartoon. Sadly my drawing skills are rather poor but I was happy enough with the results - I thought it might be a minor talking point at beer o'clock that evening.

A little over one hour later, I was back at my desk and thought I'd see if any pictures of the awards dinner had shown up on Flickr yet. So I did a search for 'nzosa' and got exactly one result.

Wednesday October 17, 2007
05:23 PM

NZ Open Source Awards

Last night I was fortunate to attend the New Zealand Open Source Awards ceremony. Like most people who were present, I've got to say "Wow"! It was an extremely polished and professional affair thanks to the dedicated efforts of a small but commited team. Big props to Chris Daish for conceiving the idea and for having the perseverance to see it through. Also to Evonne Cheung for providing the polish and finesse to the visual spectacle.

During the welcome drinks session and throughout the course of the evening I met people and heard about amazing things they're doing - all based on Open Source software. Inspiring stuff. Congratulations to the winners, the finalists and indeed all the nominees.

Friday October 12, 2007
02:57 AM

Think of the children

These are both quite old links but they bear repeating. If you have kids - especially daughters they need to understand how dishonest the photos in the fashion mags are. Greg Apodaca's site showcases some of his work in transforming what the camera captured into what the magazine printed. In some cases the difference can be quite startling - particularly in the areas of narrowing waistlines and plumping up bust lines.

The Fountain of Youth page is a tutorial for transforming a picture of an 'older woman' into one a young beauty.

Tuesday September 25, 2007
04:06 AM

License to Process Words

I've just finished converting one MS Word document of about 150 pages to a group of about a dozen HTML pages. What a nightmare!

Last time I had to do this, the output was closer to 100 HTML files with very little formatting so I ended up scripting much of it. I loaded the document into Open Office and saved as ODT. Then I used XPathScript to spit out a series of very plain HTML files. With the site stylesheet applied they looked very smart.

This time, the document structure didn't really lend itself to scripting and there was more formatting that I wanted to preserve (eg: headings, bullet lists, simple tables). So I used 'Save as Web Page' from Word and then did most of it manually with Vim.

The HTML that Word produced was unspeakably vile. All sorts of illegal constructs (e.g.: a <p> inside a <span> inside another <p>!); enormous sections of proprietary markup inside comment markers; kilobytes of unnecessary attributes (align="left" on every <p>); and invented markup tags (eg: <place> and <placetype>).

I was able to strip out much of the cruft with LibXML/XPath/DOM manipulations and some search and replace regexes in Vim. But the result was still gruesomely awful. Much of it came down to operator error on the part of whoever typed the document:

  • every alternate paragraph empty to provide vertical whitespace
  • strings of empty paragraphs to push content onto a new page
  • 'tables' of data with columns aligned using spaces
  • 'bulleted lists' created by inserting a bullet character at the start of each line
  • vast sections of body text in 'Heading 2' style with the font overridden to give normal looking text
  • most actual headings rendered using bold and/or font changes

As one of my colleagues commented, people should not be allowed to use a Word Processor without a license.

It can't all be blamed on users though. The user interfaces of Word and Open Office are absolutely awful. They make it far too easy to do the wrong thing, by jamming the screen full of toolbar buttons and menus. Conversely they make it hard to do the right thing by hiding the style selection tool in amongst all that visual clutter. Each new release over the years seems to have made the problem worse. What these interfaces need is less, not more.

Wednesday September 12, 2007
08:58 PM

It all about the merging not the branching

On the GNOME Desktop Development List, there's a 'debate' raging about the possibility of switching GNOME projects from Subversion over to some distributed source code management system. An objection which keeps coming up is:

«people keep saying DSCMs are great because they allow you to branch easily, but I don't want to that anyway - if I branch then I'll have the headache of merging»

The underlying assumption here is that just because merging has historically been a pain using tools like CVS and Subversion, it will also be a pain with the new breed of distributed tools.

If you are as-yet-unconvinced, do youself a favour and try one of these tools. Once you experience how easy it is to create a feature branch but still keep your branch current with mainline developments you'll never want to go back. This stuff is addictive.

Tuesday September 04, 2007
08:07 PM

New SSHMenu release and web site

I finally made time to release a new version of SSHMenu and a new web site to go along with it. The new release adds support for environment settings (useful for locale adjustments), improved quoting, bcvi in tabbed mode and other minor updates. Of course it's Ruby so it's off-topic here :-).

Thursday August 23, 2007
04:41 AM

Thank You Graham Barr

For many people, is CPAN. It is very easy to take it for granted. It's always there and it just works. It allows us to find modules, read their documentation, track version histories and even just plain read the source - with ease. Through links to other sites in the stable, it also allows us to easily check test results for a distribution, report and review bugs and patches, share ratings and reviews, annotate the documentation and all the other things I've forgotten.

I was reminded of the awesome coolness of as I was wading through RubyForge for a project I'm currently working on. The contrast was stark. And it's not that RubyForge is terrible, in fact it does a reasonable job. But it's not awesomely cool.

Thanks Graham and everyone else involved