Simon Willison’s Weblog

Subscribe
Atom feed

Entries

Filters: Sorted by date

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.

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]

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.

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.

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.

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]

First Church of Pac-Man

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

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.

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]

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.

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.

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.

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.

Logoed

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

Open source CMS list

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

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.

CherryPy

CherryPy is an interesting open source Python application server. Dynamic sites are constructed in a special templating language which is then compiled by CherryPy to create a stand alone executable Python script complete with a built in web server. This can then be deployed anywhere with a Python interpreter. CherryPy comes with an excellent tutorial and a small but useful set of HOWTOs.

Mozilla oddity

Mozilla oddity—if you rename a bookmark to the the same name as it’s shortcut keyword the shortcut keyword will stop functioning. I couldn’t see it in Bugzilla so I’ve submitted it as bug 156418.

Webdocs.org

Webdocs.org is an online library of various freely available software documentation. The site uses frames with a tree style navigation menu on the left and loads (externally hosted) documentation on the right. At the moment they only cover Python but more will be added soon—in the meantime the Python collection is quite impressive.

Using SCP

I’m slowly migrating this blog to another server (and rewriting it to use mySQL instead of serialized objects at the same time). After about half an hour of trying to figure out the best way of transferring the whole blog/ directory from this server to the new one without using FTP I figured out a way of doing it with scp (thanks to this tutorial):

[... 95 words]

XML-RPC debugging

Via techno weenie: A Python XML-RPC debugging proxy script. This solves the problem of XML-RPC errors from PHP being sent out with the XML-RPC response packet and breaking any XML parser trying to recieve the packet. Instead you can test your script by aiming at the proxy script which will dump any problems to the console for you.

Sites bow to IE

CNET: Even though all the major browsers are considered to be up to snuff on standards compliance, some Web authors still find it easier to code directly to IE--and test only with IE--rather than to open standards. Tell us something we didn’t know. Steve Champeon replies over at the Web Standards project and highlights some inaccuracies in the article but the basic message remains unfortunately true.

New bookmarklet

webgraphics have a new bookmarklet which measures the “weight” of a page (the combined size of the page and its graphics) and displays it along with an estimate of download times over different connections. Unfortunately it does not measure external JS or CSS files, and does not work in Mozilla. If you’re in to bookmarklets (explained here) take a look at webgraphics’ excellent favelets collection at the bottom of the right hand column of their front page.

Why workflow?

I’m having trouble understanding the importance of workflow in a CMS. As I see it, managing content assets and controlling which assets are ready for publication can be thought of as two very seperate processes. After all, content can and should be deployed in a whole variety of ways. A piece of content that is not yet ready for publication in a brochure may well be ready for publication on a web site (or may be fit a site aimed at one audience but not yet ready for a site targetted elsewhere). Why tie the publication readiness of an item of content directly to the content, when it would make more sense to attach it to the place where the content will be published—so a site editor can decide when content is ready for publication without permanently altering the status of the content. Or have I completely missed the point?

Language independant storage

Today’s (obvious) XML realisation: Using XML for storage gives you a platform and language independant storage layer. If you later want to rewrite an application in a different language the data is there and ready to be processed, with no conversion necessary. OK so it’s something that is shouted from the rooftops by XML advocates at every available opportunity but today I realised it for myself :)

Zeldman on accessibility

Jeffry Zeldman: Many web practitioners still believe that accessiblity is an ugly, no-frills affair. Not true. An excellent piece on accessibility issues.

Ooh Muse.net

I’ve been reading up on Muse.Net, and I like what I see. Muse.Net is a loosely-coupled, XML Web service derived Internet digital media supply chain. What that means in English is a system to let you listen to your private MP3 collection from any internet connected PC in the world, viasome very funky web service based technology. Your MP3s stay hosted on your own PC (so you need an always on internet connection) while the Muse.Net central service keeps track of what you’ve got and lets you log in from anywhere to listen remotely. Best of all the web service interface lets you do all kinds of fun things—for example techno weenie’s OPML directory of his collection. For more detailed info check out the excellent Muse.Net FAQ.

Using web widgets wisely

Jodi Bollaert: Using Web widgets wisely. This is first in a two part series explaining the best practise for designing user interfaces using the form elements available in HTML.

Google OR

Another gem from the Google Weblog—Google not only accepts OR as a search modifier but allows you to use | instead and still get the same results.

Paper Scissors Stone

Paper Scissors Stone is more complicated than I thought (via BoingBoing). This article from 1999 describes the second international RoShamBo programming contest, in which entrants had to provide a program that could play other programs at the classic childhood game:

[... 143 words]