Firefox Users Monkey With the Web

Tired of Michael Jackson stories? Get rid of them! That power and more is at users' fingertips, thanks to the growing success of Greasemonkey, a Firefox extension. By Ryan Singel.

In a modern twist on the hot rodders of old, Firefox users are pimping the web, one browser at a time.

They've added a delete button and permanent search folders to Gmail, made their browsers show only print pages of online news stories, reconfigured all the content on a popular music website and removed Reuters stories on the Michael Jackson story from online newsreader Bloglines.

click to see photos
See photo

Simon Willison, a computer science student in England who's a fan of Paul Graham's online essays on hacking and programming, grew frustrated with having to scroll from Graham's paragraphs to his footnotes and back again.

So, armed with a little JavaScript, Willison wrote a program that automatically generated links between the paragraphs and the footnotes. A couple of weeks later, Graham wrote Willison to say he would soon start adding the links for everyone.

That change was made possible by Greasemonkey, a Firefox extension that allows users to load custom scripts that modify a specific website anytime they visit it.

While Greasemonkey is still only used by Firefox users on the bleeding edge, Willison sees the extension as a harbinger of a change in the web's power dynamics.

"Greasemonkey enables people to remix the web," Willison said. "You are giving control of people's browsers back to users.

"There's always a balance between what a website designer wants people to be able to do and what they are actually doing, and Greasemonkey swings it very firmly in the direction of the user."

Greasemonkey was originally written by Aaron Boodman, who wrote the program in December 2004 to amuse his friends and found himself pleasantly surprised when it grew into a cult hit.

To use the scripts, Firefox users first must install Greasemonkey, then find and load the particular scripts they want.

Users have already submitted scripts for more than 115 websites, plus more than 60 scripts that work across the web.

While quite a few scripts simply block ads, Mark Pilgrim, a coder known for his work on website accessibility and XML, thinks the coolest -- and most important -- scripts are the ones that mesh sites together.

As examples, Pilgrim points to scripts that add links on a Yahoo Maps page to Google Maps, and mix web services like Bloglines and del.icio.us.

"There's a script targeting Amazon pages that lets you know if a book you are looking at on Amazon is available at your local library," Pilgrim said. "Think about that. That's amazing, and it happens automatically. You configure it once for your library, and Greasemonkey goes and gets the data."

Pilgrim, who has already written an online Greasemonkey guide and is working on a Greasemonkey hacks book for O'Reilly Media, is also a fan of a script that meshes together a Chicago transit map with Google Maps of the city.

That script was written by Adrian Holovaty, a Chicago-based web developer who inadvertently inspired the creation of Greasemonkey by writing a full-blown Firefox extension that undid a redesign of allmusic in order to reinsert band and album information hidden by the revamp.

That hack inspired Boodman to create an easy way for others to write page-changing scripts without having to create time- and code-intensive extensions.

Greasemonkey's power could cause some problems, however.

For one, users could find themselves giving away passwords if they install scripts from untrustworthy sources or scripts that have not been vetted by the community.

Its growing popularity also could lead companies to attempt to disable Greasemonkey on their sites or even file lawsuits against users or script writers.

But Holovaty, who works on content management for several online news sites, thinks that's exactly the wrong response for companies whose sites have been Greasemonkeyed.

"If someone wrote a Greasemonkey script that added cool functionality to a site I administrated, I would be ecstatic," Holovaty said.

"If your users are writing Greasemonkey scripts, it shows that your users care," Willison said. "They are sending a message that your user interface isn't up to scratch."

Firefox users are not the only ones who have the power to rewrite the web.

Opera recently announced a similar feature.

Holovaty, whose father had a bit of a hard time installing the transit map extension, wants to simplify the process even further.

He has written a program that can translate any script into a simple-to-install extension for Firefox, and he wants to make it also output scripts for Internet Explorer and Opera.

Willison thinks the idea of every browser making changes to content is how the web should work.

"The web is just a standard for servers and user agents," Willison said. "The web spec never says the user agent shall give the server complete control.

"Greasemonkey just makes it easier to do interesting things. There's not much sites can do to prevent people from taking advantage of it. The horse has already bolted."