Simon Willison’s Weblog

Subscribe

July 2002

July 9, 2002

PHP XML Classes

PHP XML ClassesA collection of classes and resources to process XML using PHP. Includes PHP implementations of Xquery lite and RDQL along with parsers for RDF, RSS and RDDL.

Open source CMS list

An excellent list of open source content management systems (via Webdesign-L).

Logoed

Logoed: logo inspiration for graphic designers. A large collection of real word logos to help kickstart the creative process.

Accessible lists

Today’s tip from Mark informs us that “real” lists are good for accessibility. They are also fantastic for writing maintainable code. Thanks to CSS, a humble unordered list can be transformed with custom bullet points, funky backgrounds, rollover effects and borders—all hidden away in the stylesheet leaving just basic list markup in the HTML. Adding a new item is as easy as <li>item</li>. W3Schools have a good CSS list reference complete with examples, and this earlier post on my blog lists some resources for dealing with unpredictable list margins.

Rounded corners in CSS

Courtesy of css-discuss: Two examples of expanding boxes in CSS with images in the corners, ideal for that trendy rounded corner effect: One and Two. Mozilla has experimental support for rounded corners that may or may not end up in CSS3, but if it aint in the standards it aint coming in.

July 10, 2002

Alt all the way

Mark says that today is the most important day of his whole accessibility series, and who are we to argue? The topic is the alt attribute for images, and the message is simple: Every image should have one, even if the image is there purely as layout decoration (in which case an empty attribute should be used). Surprisingly Mark does not give advice on chosing text for the attribute but he does provide an excellent further reading list, which includes Hixie’s superb Mini FAQ About The Alternate Text Of Images.

xmlhack news wire

xmlhack’s “Editor’s Newswire” is interesting. It is a small column (explained here) located on the right hand side of the site that displays the latest XML news snippets “in real time”. The interesting part is how the section is updated—an IRC bot (The Daily Chump Bot, written in Python) monitors a channel for specific commands from authorised users, and produces an XML file of new snippets. Site updates through IRC (or instant messenging services such as MSN or Jabber) is a concept which we could see a lot more of, especially in this age of web services.

The semantic web explained

I just found a nice, clear and above all short explanation of the Semantic Web at The W3C’s Technology & Society Domain page:

[... 114 words]

CSS numbered code listings

I’ve been experimenting with using CSS and <ol> tags to format code listings, complete with line numbering. Here’s what I’ve got so far: Numbered Code Listing Experiment.

First Church of Pac-Man

The First Church of Pac-Man: Warning! Not a Religion—Do Not Worship.

July 11, 2002

A million pounds down the drain

This site will make you cry: Connected Earth, BT’s new million pound (yes that’s £1,000,000) online museum devoted to the history of communications. It’s so bad it isn’t even funny—and don’t even think about trying to visit without Flash (I did and was presented with an alternative interface consisting of a single select box that refused to respond to mouse clicks). Load up on IE5+ and Flash and you’ll be treated to the single most unintuitive interface I have ever seen—good luck figuring out what the small, identical purple circles do. There are 2,000 pages of extensively researched content in there somewhere—obviously the designers thought it would be more “sticky” if you had to work really hard to find them. I could rant more, but quite frankly I just want to go to bed.

[... 200 words]

More Connected Earth

Connected Earth is getting a fair amount of criticism for its shoddy browser detection. In my opinion, browser detection is only a small part of its problems. Should you get past the front door the interface used to present information is “mystery meat” navigation at its very worst—identically coloured dots which reveal only a hint of their purpose when you hover over them, leading to pages that contain two or three paragraphs of information at the most before you have to click on another dot. Pages are slow to load even on broadband so trying to follow content quickly becomes a painful experience. There’s a lot more to this dinosaur than just a browser detect page.

Image map accessibility

Mark Pilgrim continues to educate with day 24 of his series. Client side image maps need not pose a barrier to accessibility thanks to the helpful way in which alternative browsers use the alt attribute. They still aren’t much use for people using a normal (non-lynx) browser with images turned off though, and server side image maps are a big no.

Lovely PNGs

Here’s a treat for anyone with a browser that supports alpha transparency in PNGs (Mozilla and IE5/Mac do, IE/Win doesn’t). Click on one of the little magnifying glasses under a thumbnail and the skin in question will pop up as a floating PNG, which you can drag around the screen. Admire the drop shadows, translucency and general prettyness and ask yourself why Microsoft haven’t implemented this X years after PNG became a standard. Hat tip to Boris Mann on thelist for the link.

Bad faith my arse

This is ludicrous. NAF have ordered the transfer of the domain name canadian.biz to Molson beer, who hold a trademark on the word “Canadian” (a brand of beer):

[... 122 words]

July 12, 2002

DVB-HTML

New article on Evolt: DVB-HTML a new standard?. The article describes DVB-HTML, a new standard being developed to allow the next wave of digital televisions to access internet content. The good news is that DVB-HTML complies with the W3C’s XHTML modularisation requirement, and supports XHTML, CSS and the DOM. As I understand it, this means that if you author your pages in validated XHTML they will be ready for viewing on digital TVs. Web Standards at work.

Busy day

Quiet blogging day today, but I’ve been busy behind the scenes. Firstly I’ve been playing around with TaviWiki (an excellent PHP Wiki engine), using it as a proof of concept for a Wiki-driven small website content management system. I’ve looked at several PHP Wiki’s in the past and TaviWiki is the best by far, with rock solid features and a well organised code base. My only criticism is that the script relies on globals a bit too much, making it quite hard to figure out what is going on at times. I’ve also been working on IncDirectory, the open source sequel to my aging links directory script ssLinks. Add to that a new CSS experiment and preliminary work on rewriting this blog to use mySQL and today has been my most productive in quite some time.

Blog birthday

This blog is one month old today :) According to my category statistics page I’ve posted 185 entries covering 23 different topics. Quite frankly, that statistic scares me...

Blogroll etiquette

Jordon Cooper on Blogroll Etiquette. I haven’t made it on to many blog rolls yet but it’s always nice to spot a new site in my referrals. The problem with having a blogroll powered by blo.gs is that you can only blogroll blogs that ping either blo.gs or weblogs.com. I have actually gone as far as emailing several bloggers who’s blog I admire but am unable to link to due to their absence from these useful central repositories—the responses I’ve had have been positive so I’m hoping to add them again shortly.

Smarty at OSCON

Smarty at OSCON: Andrei Zmievski and Sterling Hughes will be presenting a tutorial titled “Template Architectures with Smarty” at the O’Reilly Open Source Convention in San Diego, July 22-26, 2002. Further details are available here. Smarty is a powerful template engine for PHP which combines a highly versatile templating language with excellent performance gained through template compilation.

July 13, 2002

Jonathan on longdesc

Jonathan has insider knowledge that Mark will not be covering the longdesc attribute in his accessibility series. This it not because longdesc is not a useful accessibility tool, but simply because it does not fit the “fire and forget” nature of Mark’s series. Jonathan’s post discusses longdesc and the difficulties involved in adequately describing an image.

July 14, 2002

Maccaws

MACCAWS is a group of web professionals dedicated to:

[... 112 words]

Wiki fun

Yesterday I set up a Wiki for Smarty as well. I like Wikis. The WikiEngine used for Smarty and MACCAWS is called TaviWiki, and is implemented in PHP with a MySQL back end. I had previously deployed PhikiWiki for a couple of university projects, which is good in that it is the only PHP Wiki I know of that works from the file system, but bad in that it has no support for version tracking (essential if your Wiki is accessible to the public).

An excellent rant

Lobowalk is a “somewhat daily” blog that has just made the transition to using CSS for layout. The decision to go CSS was accompanied by an excellent rant:

[... 168 words]

Less is more

The Minimalist Web Project is a collection of good looking web sites adhering to the minimalist style, based on the idea that “less is more”. Some beautiful sites are listed, including 37signals’ brand new CSS/XHTML design.

Mozilla web author FAQ

The Mozilla Web Author FAQ answers questions on doctypes, broken stylesheets, image table gaps and javascript detection—the most common problems faced by web developers new to developing for Mozilla all on one handy, concise page.

Maybe splash screens have a purpose

I never thought I’d say this, but there is a place on this earth for web site splash screens and time wasting intro animations (now I’m feeling dirty). This comes after an interesting if slightly heated debate about the merits of splash screens over on the SitePoint Forums. I still can’t stand splash screens, but I can acknowledge that there are some web users who see the web primarily as an entertainment platform and have their surfing experience enhanced by a bit of glitzy animation along side their information. Thanks Bill Posters for helping me understand this bizzare side of the surfing demographic ;)

Which power puff girl is your blog?

Oh wow. Which PowerPuff Girl is your blog?. I’m Blossom—yay! Thanks Mark-from-uni for the tip off :)

MySQL best practise

O’Reilly have a new article up entitled Ten MySQL Best Practises. Jeremy Zawodny has a few problems with the article, and Tony Bowden throws in some comments as well. There’s plenty of useful information distributed between the three viewpoints.

July 15, 2002

XML fun

Peter has upgraded his blog to the latest version of Moveable Type. As a result, his blog now pings weblogs.com via XML-RPC whenever he makes an update. blo.gs grabs the weblogs.com changes.xml file once an hour and uses it to generate a smaller file listing only sites on my blogroll. My site then grabs my personal favorites.xml file once an hour and uses it to render my blogroll ordered by the time each blog was updated.

[... 95 words]