Simon Willison’s Weblog

Entries in 2005

Filters: Type: entry × Year: 2005 ×


Fixing web applications with Greasemonkey

In Greasemonkey FUD, I highlighted the importance of Greasemonkey as a tool for fixing interface problems in “enterprise” web applications. DJ Adams has done exactly that for OSS Notes, part of the SAP service portal. His user script ditches the frames in the interface, makes the page title more useful and adds hyperlinks to other note references on the page—significantly improving the user experience in less than 40 lines of code. The improvements are clearly explained in the accompanying screencast.

[... 101 words]

Testing a new version of IXR

Almost two years to the day since the last release, I’ve put together a new version of IXR, my PHP XML-RPC library. I haven’t published it on the site just yet as I want to make sure any bugs are ironed out first, but you can grab a copy here:

[... 177 words]

Eurovision scores

Aah sweet Eurovision. This time last year I was in Kansas, no one had even heard of it and I was forced to watch it over RealPlayer as it wasn’t being carried by any of the TV channels. This year, we’ve had a Eurovision party. Here are our scores:

[... 261 words]

Fighting RFCs with RFCs

Google’s recently released Web Accelerator apparently has some scary side-effects. It’s been spotted pre-loading links in password-protected applications, which can amount to clicking on every “delete this” link — bypassing even the JavaScript prompt you carefully added to give people the chance to think twice.

[... 353 words]

Giving away the index

My final year project is due in two weeks, and I’m going to be running on silent for most of them. I have, however, upgraded to Tiger and playing with Spotlight has given me plenty to think about.

[... 414 words]

A Firefox observation

There are (to my knowledge) around 80 people on my undergraduate computer science course. Of those 80, I know of at least fourfive who’s final year project involves writing a Firefox extension of some sort. That’s 1 in 2016.

[... 71 words]

Why the term Ajax is useful

Software design patterns are useful mainly because they provide a shared vocabulary: rather than discussing the intimate details of a three layered application architecture, we say “MVC”. Rather than describing an object that tracks your progress while looping over a collection, we say “Iterator”.

[... 152 words]

Safari 1.3 has a JavaScript Console

My single biggest complaint about Safari in the past has been its terrible support for JavaScript debugging. Safari 1.3 has just been released, and tucked away in the Debug menu is a brand new JavaScript console option. It’s not as good as the Firefox equivalent (it throws up far too many “Undefined value, line: 0” errors for my liking) but it’s a big step in the right direction.

[... 80 words]

Greasemonkey FUD

Wow, that didn’t take long. Via the Greasemonkey mailing list, Forrester Research have released a report entitled Greasemonkey Primes Firefox For Embarrassment. I have no intention of paying the $49 asking price for the full 3 page report (!), but here’s the executive summary:

[... 283 words]

Greasemonkey etiquette

In Meme tracking with Greasemonkey, Jon Udell introduces a userscript which grabs the number of references from del.icio.us and bloglines and appends that information to the top of every page you visit. To be fair on Jon, the version he has released defaults to only doing this for pages on Infoworld.com but modifying it to run on every web page is trivial.

[... 252 words]

Flickr without the Flash

One of my favourite panels at SxSW this year was the Flash vs. HTML Game Show, in which a team of HTML/JavaScript gurus took on a team of Flash gurus showing off pre-prepared solutions to tasks set for the panel. One of the challenges was to come up with enhancements to Flickr using the team’s assigned technology.

[... 353 words]

Enter the hedgehog

The Ubuntu community have released Hoary Hedgehog, otherwise known as Ubuntu 5.04. If you haven’t tried Ubuntu yet, it’s an excellent Linux distribution based on Debian with a strong focus on desktop usability. Unlike most Linux distros, Ubuntu comes with just one desktop manager (Gnome) and one obvious default application for each of the essentials: Firefox for browsing, OpenOffice for office work, Evolution for mail.

[... 209 words]

Greasemonkey as a lightweight intermediary

In The architecture of intermediation, Jon Udell discusses the need for a mechanism for a high-level tool for adding custom features to web applications. In Jon’s case, he wants to add a private bookmarks feature to del.icio.us. Jon thought about using a web proxy to intercept and modify del.icio.us pages, but ruled it out as too low-level.

[... 354 words]

PyCon observations

I’m back from my two week stint in the US, and currently suffering from vicious jet-lag (my body wants me to go to sleep at 5am and wake up just past noon). Herewith some observations on PyCon, SxSW and the differences between the two.

[... 791 words]

Choice SxSW quotes

My American adventure is ongoing; I’m still in Austin at the moment, but I’ll be off to Washington D.C. in a few days and there’s a small chance I’ll get there via Dallas. This doesn’t leave much opportunity for online shenanigans, but there were a few things from SxSW that really needed a mention. The conference, as ever, was awesome—if not for the panels then certainly for the socialising. If anything I stretched myself too thin this year trying to keep up with the Brit Pack, the WaSP crew, some ex-colleagues from Lawrence and the people I met in San Francisco back in May.

[... 383 words]

Fixing Paul Graham’s Footnotes

I’m a big fan of Paul Graham’s essays, the latest of which is How to Start a Startup. There’s just one niggling problem with them: Paul makes extensive use of footnotes, but provides no way of jumping from the reference in the text to the footnote at the bottom of the page and back up again. Instead, you have to manually down to the bottom of the article and back up again every time you hit a footnote reference.

[... 172 words]

Problems with Trac? Switch to FSFS

I’m head over heels in love with Trac, and have been for about 6 months now. It really is best-of-breed software: it neatly integrates a wiki, a simple bug tracker and a Subversion repository browser with clean markup, a nice default design and a learning curve for new users that can be measured in minutes. No wonder it’s started to show up all over the place.

[... 350 words]

LugRadio Live

The guys over at LugRadio (nice new site, see Stuart’s blog for gnarly implementation details) have announced the details of their long hinted-at Linux event, LugRadio Live. I’m pretty excited about it; word on the grape vine is that they’re booking some really cool speakers, but they’re completely committed to keeping a grassroots feel to things. The 15 minute lightning talks should be a lot of fun (I’ve tentatively offered one on Firefox extensions) and it sounds like the atmosphere will reflect that of the show—irreverent, fun and with a trip to the pub afterwards.

[... 128 words]

Google cruft

New Google feature: Google Movies. Displays aggregated movie reviews (like Rotten Tomatoes), looks up local movie times based on your zip code saved in Google Local (more evidence of the fabled Google cookie), and even handles recommendations.

[... 120 words]

Do Content Management Systems really work?

Have you considered trying a Wiki? In my experience, the more permissions / workflow / etc you have in a CMS the more likely it is that people won’t use it. Wikis may be a little unconventional but the barrier to entry is fantastically low and they can work extremely well (I like MediaWiki or TaviWiki myself).

[... 143 words]

Google Maps and XSL

I’ll probably write more on this later, but it seems that Google Maps is using XSL. I spotted it loading the following pages while sniffing its activity with LiveHTTPHeaders:

[... 174 words]

Don’t build web apps that only work in IE

This is a rant, for which I will make no apologies. The wonderful thing about web applications is that they free you from being tied down to a specific platform. A well written web application is accessible from any platform that can run a web browser. Netscape and Microsoft both realised this back in the mid-90s, which is why Microsoft pulled out all the stops in winning the browser wars; they knew that the browser as an open application platform was a direct threat to their Windows lock-in. It’s not inconceivable to argue that this was the main reason they added so many weird little proprietary DHTML extensions to IE in the following years—and it’s those that are the root of the problem.

[... 311 words]

New eclipse downloads page

Back in November I had a bit of a whinge about how hard it was to find the right file on the Eclipse download page. The Eclipse project have unveiled a prototype of a new, friendlier page and it’s an enormous improvement, thanks mainly to the invaluable new “Looking for Eclipse?” box:

[... 95 words]

rel=“nofollow”

Reading between the lines (which in this case isn’t particularly hard), this and this (don’t forget to view source) suggest that Google are soon to announce that they won’t be calculating PageRank for links with a rel="nofollow" attribute. Finally, an official way of fighting the economics of comment spam by denying PageRank on user-submitted link content. Sam Ruby points to Mark Pilgrim’s prediction that spammers won’t care—they’ll spam anyway, on the offchance that they hit somewhere undefended. I’m optimistic—if the major weblog (and wiki) vendors get behind this one it could help stem the tide.

[... 133 words]

I need a new backpack

I’m a big fan of eBags.com for this kind of thing, because it lets you pick the model of your laptop and then tells you which bags it will fit in. I bought a bag from there last year and the e-commerce / delivery side of things was flawless.

[... 62 words]

Fixing MSDN with Greasemonkey

Site specific browser customisations have been a a recurring theme on this site over the past six months. Thanks to the ever inventive Aaron Boodman that problem is pretty much solved. Greasemonkey is a plugin for Firefox that lets you create user site customisation scripts (.script.js), easily install them in Firefox and then set which sites they should be run on. Michael Moncur has a handy tutorial on getting started.

[... 318 words]

map.search.ch

Forget about Google Suggest; if you want to see some really impressive dynamic web content go and have a play with map.search.ch. It uses XMLHttpRequest and a bunch of other tricks to let you smoothly pan and zoom over an enormous and detailed map of Switzerland, based on satelite photos (so you can zoom right in to individual streets and see the houses). Even better, it supports hackable URLs letting you link directly to cities or even street addresses.

[... 166 words]