Simon Willison’s Weblog

Entries in 2005

Filters: Type: entry × Year: 2005 ×


Get tickets for filming of Jools Holland’s TV show

I was in the audience for “Later” once. I called up the BBC’s ticket office and asked for tickets—they told me there was a year long waiting list. I asked to be put on it anyway, and sure enough just over a year later I got 4 tickets in the mail. Well worth the wait!

[... 73 words]

JSON and Yahoo!’s JavaScript APIs

I had the pleasure yesterday of seeing Douglas Crockford speak about JSON, the ultra-simple data interchange format he has been promoting as an alternative to XML. JSON is a subset of JavaScript, based around that language’s array, string and object literal syntax.

[... 240 words]

Don’t be eval()

JavaScript is an interpreted language, and like so many of its peers it includes the all powerful eval() function. eval() takes a string and executes it as if it were regular JavaScript code. It’s incredibly powerful and incredibly easy to abuse in ways that make your code slower and harder to maintain. As a general rule, if you’re using eval() there’s probably something wrong with your design.

[... 431 words]

Have a webby Christmas

Sadly there’s no Perl Advent Calendar this year, but the slack has been picked up by Drew McLellan’s 24 ways to impress your friends—a neat web development tip every day until Christmas.

[... 81 words]

Notes on public speaking

I’m pretty inexperienced as a public speaker, but somehow I landed two speaking gigs in as many weeks recently and learnt some useful lessons about presenting in the process.

[... 552 words]

Google Base is interesting

I’m still trying to get my head around Google Base. Here’s a brain-dump of my thinking so far. First, some links.

[... 364 words]

Social engineering and Orange

I had a call on my mobile earlier today from a lady claiming to be from Orange (my phone service provider) who told me that my contract was about to expire. She asked me for my password.

[... 311 words]

Yahoo!’s new twist on mapping APIs

One of the most exciting things I’ve seen at Yahoo! since starting here has finally been made public: the new Yahoo Maps. The map application itself differs from many other recent map sites in being rendered entirely in Flash. This leaves far more scope for interface niceties, but doesn’t it reduce the scope for hacking that made things like Google Maps so much fun?

[... 623 words]

Taking charge of your own destiny

Scoble has posted 12 reasons that Web 2.0 entrepreneurs are steering clear of the Microsoft platform. It’s an interesting list (the comments are full of treats too) but for me it misses the key reason that open source development tools are so compelling: they put you in charge of your own destiny.

[... 367 words]

Things I learned at EuroOSCON

Last week was the first ever O’Reilly European Open Source Convention, held in the magnificent NH Grand Hotel Krasnapolsky in Amsterdam. It was the first big budget conference I’d been too (previously I’ve stuck to less expensive affairs such as SxSW Interactive and PyCon) but the money seems to have been well spent. The venue was fantastic and there was a great line-up of speakers, keynotes and panels.

[... 878 words]

Canvas demos

Jesse Andrews (of Book Burro and userscripts.org fame) has built some awesome canvas demos for users of Safari or Firefox 1.5. He has a bar chart and some animated rectangles, but the real gem is the live chart which polls a server using XMLHttpRequest and updates a line graph with live data. He also has some fun mathematical experiments: a cellular automata generator and a neat exploration of Lindenmayer systems (both static and interactive). Read more on his blog.

[... 95 words]

Maintainability, a.k.a. the CSS elephant

Now that even Slashdot has made the move to CSS it’s safe to say that the CSS advocacy battle is slowly being won. It’s time to talk about the elephant in the corner of the room: stylesheet maintainability.

[... 317 words]

Working for Yahoo!

I guess it’s about time I blogged this: Monday was my first official day working for Yahoo! I’ve joined the new Technology Development group, first mentioned by Jeremy Zawodny a couple of months ago. My first assignment is with the Flickr team, where I will be working on some Cool New Stuff. How exciting is that?

[... 82 words]

More fun with the monkey

Cory Doctorow points to America from the Great Depression to World War II: Color Photographs from the FSA-OWI, 1939-1945, with the following observation:

[... 329 words]

Firefox 1.5 developer highlights

Firefox 1.5 Beta 1 is out, and is the most exciting browser release in a very long time. It comes with the Gecko 1.8 rendering engine, which includes a ton of interesting new features. New in this version (unless you’ve been tinkering with the Deer Park series):

[... 719 words]

Change of e-mail address

If you send e-mail to my old cs1spw@bath.ac.uk address I won’t get it—that account has been closed now that I’ve graduated from University. You can get my current e-mail address by clicking the big “Reveal my Address” button on my contact page.

[... 45 words]

Poland, Dvorak and Broadband woes

My recent silence can be attributed to a number of things. I’ve been having a terrible time trying to get a ’net connection sorted out in my new flat—I can’t get cable, and it seems the local exchange can’t handle ADSL yet either. Curses. I also just got back from a fantastic ten day holiday in Gdansk, Poland with Natalie, and I’m typing this with a Dvorak keyboard (well, a PowerBook covered in post-it note fragments).

[... 344 words]

Django and Rails London meetup

Here’s a date for your diary: Sam Newman is arranging a meetup for Django and Rails enthusiasts (and anyone else with an interest) on Monday the 5th of September at 7pm in Smiths of Smithfield. If you want to attend, leave a comment on Sam’s entry to give an idea of numbers. I’m signed up—it should be a fun evening.

[... 64 words]

How Django processes a request

I’ve decided to kick-start some architecture documentation for Django by describing how the core request handling mechanism in Django works. I’m talking about the part of Django that takes a request from a browser and turns it in to a response—I won’t be discussing the template system, object-relational mapper or automated admin interface, which are all separate components; in fact, you don’t need to use any of those to build a Django application.

[... 674 words]

Exciting developments with Django

The amount of activity surrounding the Django web framework since its not-quite release a few weeks ago is amazing. Adrian, Jacob and Wilson have been working over-time, with 395 check-ins to source control since the 13th of July. They’ve added WSGI support, a development web server, unit-tests, a ton of documentation, SQLite support, database introspection and dozens of other feature tweaks and bug fixes. Check out the project Timeline for an idea of just how frenetic things have been.

[... 271 words]

Understanding the Greasemonkey vulnerability

If you have any version of Greasemonkey installed prior to 0.3.5, which was released a few hours ago, or if you are running any of the 0.4 alphas, you need to go and upgrade right now. All versions of Greasemonkey aside from 0.3.5 contain a nasty security hole, which could enable malicious web sites to read any file from your hard drive without you knowing.

[... 809 words]

Introducing Django

You may know that I spent a year working in Kansas for a local newspaper—the Lawrence Journal-World. I’m delighted to announce that a decent chunk of the software I worked on there is now available as open-source, in the form of the Django web framework.

[... 614 words]

Less code is more

I’ve pointed to it a couple of the times from the blogmarks, but it’s worth re-iterating here: if you have any interest at all in LAMP, agile programming or open-source development methodologies you should take a look at lesscode.org. To quote their about page:

[... 211 words]

Dissecting the Google Firefox Toolbar

Google have finally released a Firefox version of the Google Toolbar, with some nice praise for XUL in to the bargain. Of course, the most interesting part of the toolbar from a geeky point of view is the bit that queries Google’s servers for PageRank. Sure enough, if you download the google-toolbar.xpi file, unzip it, then unzip the google-toolbar.jar file within there’s a file called pagerank.js with all of the juicy details.

[... 234 words]

London

My heart goes out to all those affected by yesterday’s terrible attack on London. I think it’s safe to say that here in Britain we are shaken but not stirred—the response here from both the emergency services and the Great British Public has been inspiring. To my knowledge, my friends and relatives are all safe. Thanks to all who asked after me.

[... 85 words]

LUG Radio Live

I’ve been very busy for the last three days. My last two exams (HCI and Marketing) were on Thursday evening and Friday morning respectively, followed by a celebratory barbecue. I was up at 7am on Saturday to get up to Wolverhampton for LUG Radio Live, then back to Bath again by 5.30pm for our graduation summer ball. Finally, I’m heading off to Denmark in the early hours of Monday morning for a week and a bit of camping and Roskilde Let’s hope it’s a bit drier than Glastonbury was.

[... 322 words]

Space Shuttle Columbia Accident

The official accident report is surprisingly readable—I had to look at it a while back for a university project.

[... 33 words]

Tweaking Wikipedia

Does anyone know why Wikipedia displays a redirected page at the same URL rather than using a proper HTTP redirect? Case in point: Topics in human-computer interaction actually displays the content from List of human-computer interaction topics (that’s my next exam topic)—the same content appears at two different URLs. Yuck. Here’s a Greasemonkey script to fix it: wikipedia-redirect.user.js.

[... 125 words]

Staying social

June is finals month, but the call of @media 2005 is hard to resist. I won’t be attending the actual conference (sadly my student budget doesn’t stretch that far) but I’ll be in London on Saturday the 11th to ride on the coat-tails of the conference.

[... 174 words]

Stuart’s book

I meant to mention this earlier, but Stuart’s book, DHTML Utopia: Modern Web Design Using JavaScript & DOM, has been published. I worked as a technical editor on the book, and I’m proud to have been associated with it. Don’t worry about the hairy title (apparently you have to have DHTML in it or bookshops won’t know where to put it / people won’t know what it’s about), the inside is pure gold. In their usual style, SitePoint have posted the first four chapters online for your perusal so you don’t have to take my word for it, you can try it out for yourself.

[... 107 words]