Simon Willison’s Weblog

Subscribe

January 2003

Jan. 27, 2003

Another standards rant

A message to clueless website authors is an entertaining and informative rant against browser specific, standards incompliant sites. Via Aquarionics.

Adequacy gone

It looks like Adequacy.org has come to an end. For those unfamiliar with the site, it was a truly unique evolution of the common internet troll. Adequacy specialised in posting stories that were deliberately designed to cause controversy, then sending out carefully crafted “invitations” to any online communities that were most likely to take the bait. Since, unlike other trolling situations, the trolls were now in control of the discussion they could prolong the scam by deleting any comments which had figured out what was going on and were trying to warn other clueless participants.

[... 151 words]

MySQL adds subselects

MySQL Adds Subselects, Upgrades Performance and Security:

[... 92 words]

Letter to the editor spam

Scott is horrified by the fact that some American political organisations are co-ordinating massive “letter to the editor” campaigns using email lists and websites. It’s certainly a worrying trend, but once again Google comes to the rescue. Try this query and see for yourself.

Work safe CSS

Here’s a novel use of a stylesheet switcher: Providing a “work safe” edition of a weblog.

Dynamic Python class methods

Dynamically extending APIs: Mark Pilgrim demonstrates how Python’s “new” module can be used to dynamically add new methods to existing classes at run time, and shows how this can be used to increase productivity when parsing XML. I’ve long been impressed with Python’s ability to add new methods to an object at runtime just by assigning a function reference to an object property but I had no idea it was possible to do this with classes as well. If you liked that tip, Dive Into Python has in depth explanations of more obscure Python features than you can shake a stick at.

Jan. 28, 2003

Weblogs table as an ordered list

Dave Winer:

[... 259 words]

Weblogs markover

Also, I know it isn’t what Dave was after but I’ve recreated the front page of Weblogs.com in structural/semantic XHTML and CSS as well. Again, it works fine in Phoenix and IE 6 but probably needs a few tweaks for other modern browsers (and Netscape 4 gets a plain layout without any styles at all). I’ve actually got quite a large collection of “markovers” now—I started doing them last year while learning CSS and they have been accumulating ever since. One of these days I plan to put them online together with a basic overview of the techniques used and problems encountered with each one.

K5 text ads

Via Inluminent, a short Q&Awith Rusty of K5 discussing the site’s innovative new text-ads-with-comments format.

[... 335 words]

Weblogs.com table using floats

I’ve knocked up another attempt at Weblogs.com in CSS, this time using floats instead of absolute/relative positioning. It seems to work pretty well.

More markovers

Other weblogs.com remakes: (via Scripting News): Gary Taylor, Dave Polaschek, Douglas Bowman. Doug’s is particularly impressive, featuring an almost pixel perfect recreation of the original page with nice semantic markup and nods towards accessibility as well.

Jan. 29, 2003

Mmm... pie

Weebl and Bob like pie. I also like pie. Luckily for me, my girlfriend, while frequently a disaster in the kitchen (rice and OXO gravy anyone?), is a truly accomplished pie chef as of last night. She has posted her delectable recipe here. Her chocolate chip cookies are even better.

Switched

I never thought I’d actually do it, but I’ve switched. Not to one of these (I only wish I could afford it), but to Mandrake 9. The way I figured it I only ever use Windows 98 for browsing the web, editing text files and messing around with Python, so I might as well get stuck in to a more exciting operating system with the same capabilities.

[... 238 words]

Python bits and bobs

Two fun bits from the Daily Python URL today (still without permalinks). SQLObject is an object-relational mapper class which can create objects that directly map to rows in a relational database, making INSERTs and UPDATEs much simpler. I’ve tried to write this kind of thing in PHP before with mixed results, so I’m quite tempted to pinch the idea of tracking foreign keys and joins for my next attempt. More immediately useful however is rlcompleter2 which adds tab based auto completion to the Python interactive prompt. I had a play with it earlier and it was definitely an improvement on the vanilla command line.

Jan. 30, 2003

Off to amsterdam

Off to Amsterdam. Back Sunday.

2003 » January

MTWTFSS
  12345
6789101112
13141516171819
20212223242526
2728293031