jmason is currently certified at Master level.

Name: Justin Mason
Member since: 2000-02-25 17:14:27
Last Login: N/A

FOAF RDF Share This



I've been using free software for the last 10 years, ever since the first time I logged in to the TCD maths department machines, which were built with it (thanks tim, ajudge and chogan for that!). The first free software I wrote was a GIF viewer for DEC VT320 terminals ;) A few years ago, I resuscitated PLP, a drop-in LPR replacement, and became its maintainer, folding in lots of contributed patches and adding lots of nifty features. I then gave it back to its original author, we wrote a USENIX paper on it, and it lives on as LPRng. Nowadays I write SpamAssassin, sitescooper and WebMake, and am an active member of ILUG, the Irish Linux Users Group. Well, active poster more than active member I guess. Well well, nowadays, not so active since I'm not living in Ireland at the moment ;) -- but I still have an affiliation! I'm a TBTF Irregular as well.


Recent blog entries by jmason

Syndication: RSS 2.0

Long time no post; I've been posting everything to my weblog for quite a while instead. ;)

However, I'm back, for 1 posting only; this weblog posting details how we don't need PKI to do an anti-spam web of trust. Advo is the One True Home of WoT schemes, everyone knows that ;), hence I'm posting a link here. But I'd really love it if some of the WoT gurus could do some brain-dumping on how distribution of a WoT could work...

I just posted this on, but it's the kind of thing I usually post to this Advo diary instead (since it deals with code and free software). So I'll post it here too ;)

<bigwig> is a really interesting new design for web services. A month or 2 ago, I was thinking about web app languages, like perl/CGI, PHP, servlets, HTML::Mason, etc., and I realised that the big problem was the requirement imposed by the web environment itself; most "interesting" operations often have a UI that needs to take place over several pages, and each page has to

  • unmarshal the user's CGI params, decode them, check them for insecurity, validity etc.;
  • open the database;
  • perform actions;
  • fill out the HTML template (I'm assuming nobody's insane enough to still use embedded HTML-in-code!);
  • insert "next step" form data in that template;
  • send that back to the user;
  • save a little state to the database;
  • then exit, and forget all in-memory state.

When compared to most interactive programs now, it's clear that this is a totally different, and much more laborious, way to write code. The nearest thing in trad apps is the "callback" way to deal with non-blocking I/O, ie. what we used before we could (a) use threads (b) use processes or (c) wrap it up in a more friendly library to do that. It just screams complexity.

<bigwig> fixes that:

Rather than producing a single HTML page and then terminating as CGI scripts or Servlets, each session thread may involve multiple client interactions while maintaining data that is local to that thread.

They call it The Session-Centered Approach.

It gets better. They also include built-in support for input validation, HTML output validation, compilation and compile-time code checking, and it's GPLed free software. This is really good stuff. Next time I have to write a web app, I'll be using this.

Found via sweetcode.

Doc quotes:

The great teacher John Taylor Gatto said this about how he learned to truly teach:

I dropped the idea that I was an expert, whose job it was to fill the little heads with my expertise, and began to explore how I could remove those obstacles that prevented the inherent genius of children from gathering itself.

s/children/users/, for all those people who take the BOFH stories a bit literally.

10 Dec 2001 (updated 10 Dec 2001 at 02:40 UTC) »

thom: travelling? I was in Sydney for ~6 months, went to Melbourne for two weeks, stayed in Byron for 3 days, then stopped in Brisbane for 7 weeks... Now I'm off back to Sydney... Some traveller, me.

I can top that. Thailand, 3 weeks, Melbourne, er, 4 months ;). I am planning to get moving again soon though, otherwise my Official Traveller Certification will be rendered null and void. Also I'll be thoroughly pissed off if I don't get to try out my new diving sk1llz on the Great Barrier Reef while I'm over here.

gary: Saw Chris Raettig's journal the other day and was impressed; his rationale for an email based journal is appealing [..].

I use a mail-based system to update, my (other) blog. It works nicely -- the main point was to see how useful WebMake would be for blogging -- but I'm now reverting to using Advogato for diary stuff, keeping for interesting newsy snippets. Go figure. I reckon it's because Advogato's more of a diary-based community, whereas is kinda out on its own, and just doesn't seem like a good place to keep a proper journal.

ask: Jabber [..] Maybe it's just crappy clients, but it doesn't seem stable enough to run anything too critical on.

That's the same feeling I got about 6 months ago. :( Let's hope it polishes up some time soon. Open source != crappy packaging!


Oh -- another new hack I forgot to mention, which someone might find useful. MailMan-to-RSS, a little script (and a vaguely nice-looking demo site) which scrapes MailMan list archives and creates an RSS feed of the last 10 posted messages. Handy for following lists using any of the various portal systems (and Evolution!) that support RSS.

BTW as the page sez, if you would like to see a list RSS-ized, and don't have a server to host the RSS on, mail me and I'd be happy to add it to the scraped list on

Oh look, thom is travelling 'round Oz too! cool. Must get back to the "travelling" part myself someday soon though.

BTW forgot to plug the Sub-Pixel Font Positioning on UNIX mini-HOWTO I wrote a few weeks ago. It really just ties up the loose ends in XFree86 4 doco, covers the implementation details, and gives UNIX-users something to point at when Windoze lusers rattle on about ClearType. ;) Sub-pixel positioning is a total beaut tweak for a laptop screen.

58 older entries...


jmason certified others as follows:

  • jmason certified alan as Master
  • jmason certified jbuck as Journeyer
  • jmason certified caolan as Journeyer
  • jmason certified raph as Master
  • jmason certified hp as Master
  • jmason certified riel as Master
  • jmason certified spong as Journeyer
  • jmason certified jmason as Journeyer
  • jmason certified ivey as Journeyer
  • jmason certified iand as Journeyer
  • jmason certified adam as Master
  • jmason certified freeside as Journeyer
  • jmason certified alecm as Master
  • jmason certified frogface as Journeyer
  • jmason certified Ankh as Master
  • jmason certified wsanchez as Master
  • jmason certified eskil as Journeyer
  • jmason certified djs as Journeyer
  • jmason certified kjk as Journeyer
  • jmason certified chip as Master
  • jmason certified pudge as Journeyer
  • jmason certified jef as Master
  • jmason certified rafeco as Journeyer
  • jmason certified valen as Apprentice
  • jmason certified cam as Journeyer
  • jmason certified wmf as Apprentice
  • jmason certified jaz as Journeyer
  • jmason certified ping as Master
  • jmason certified mkrus as Apprentice
  • jmason certified dannyobrien as Apprentice
  • jmason certified nelsonrn as Master
  • jmason certified jrf as Journeyer
  • jmason certified jkh as Master
  • jmason certified lpd as Master
  • jmason certified thomasq as Apprentice
  • jmason certified Iain as Journeyer
  • jmason certified strick as Journeyer
  • jmason certified Stab as Journeyer
  • jmason certified gtaylor as Master
  • jmason certified nixnut as Apprentice
  • jmason certified jbowman as Apprentice
  • jmason certified manu as Journeyer
  • jmason certified bos as Journeyer
  • jmason certified careilly as Journeyer
  • jmason certified corbet as Journeyer
  • jmason certified pixelbeat as Journeyer
  • jmason certified dlc as Apprentice
  • jmason certified cdent as Journeyer
  • jmason certified welisc as Journeyer
  • jmason certified burtonator as Journeyer
  • jmason certified db as Master
  • jmason certified i0lanthe as Journeyer
  • jmason certified gman as Journeyer
  • jmason certified Baud as Journeyer
  • jmason certified claudio as Journeyer
  • jmason certified daf as Apprentice
  • jmason certified Bram as Master
  • jmason certified ruaok as Journeyer
  • jmason certified jamesh as Master
  • jmason certified mss as Apprentice
  • jmason certified jpayne as Journeyer

Others have certified jmason as follows:

  • jmason certified jmason as Journeyer
  • caolan certified jmason as Journeyer
  • eliot certified jmason as Journeyer
  • ivey certified jmason as Journeyer
  • frogface certified jmason as Journeyer
  • bos certified jmason as Journeyer
  • djs certified jmason as Journeyer
  • kjk certified jmason as Journeyer
  • valen certified jmason as Journeyer
  • cam certified jmason as Apprentice
  • dannyobrien certified jmason as Journeyer
  • jacobsan certified jmason as Journeyer
  • thomasq certified jmason as Journeyer
  • iand certified jmason as Journeyer
  • nixnut certified jmason as Master
  • jrf certified jmason as Journeyer
  • jbowman certified jmason as Journeyer
  • manu certified jmason as Journeyer
  • careilly certified jmason as Journeyer
  • pixelbeat certified jmason as Journeyer
  • dlc certified jmason as Journeyer
  • cdent certified jmason as Journeyer
  • welisc certified jmason as Journeyer
  • kroah certified jmason as Journeyer
  • Thias certified jmason as Journeyer
  • aaronsw certified jmason as Journeyer
  • redowl certified jmason as Journeyer
  • Baud certified jmason as Journeyer
  • mikeszcz certified jmason as Master
  • fxn certified jmason as Journeyer
  • greve certified jmason as Journeyer
  • mwh certified jmason as Master
  • daf certified jmason as Journeyer
  • mss certified jmason as Journeyer
  • nyh certified jmason as Master
  • alexm certified jmason as Journeyer
  • jamesh certified jmason as Master
  • araocktoday46 certified jmason as Master
  • doguglasdel certified jmason as Master
  • codrea certified jmason as Master
  • paulcarter certified jmason as Master

[ Certification disabled because you're not logged in. ]

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!

Share this page