Greasemonkey isn't just another tweak-a-boo goodie in the Firefox toybox. In fact, it's a potent tool that gives users the same control over the design and interactive elements on a Web page that CSS gives them over a page's style elements. Our review confirms what anyone with Web design experience already suspects: This is a tool with a lot of power and enormous potential. Simply put, if it renders on your Web browser, chances are you can alter it with a user-side CSS or a Greasemonkey script.
If you'd like to know more about how Greasemonkey works and where to find both the extension and some of the scripts users have contributed, check out the review. Even if you're not playing with some of these scripts by this time tomorrow, I bet you'll be thinking about it.
There's another issue worth discussing here: Some people wasted no time attacking Greasemonkey as a menace to life as we know it on the Web. One of the most common complaints is that Greasemonkey, like ad blockers and certain other tools, represents stealing or not playing by the rules of the Web.
Here's a summary of my considered position on this issue: Horse hockey.
When Tim Berners-Lee threw together his SGML hack in the early 1990s so CERN physicists could share research data, he knew that his first HTML implementation was a quick-and-dirty compromise. But Berners-Lee and his colleagues shared some basic assumptions about how the Web should work as it matured. One of these assumptions was that the structure of a document--in this case, a Web page--should be independent of its presentation; if you can't anticipate an end-user's preferences, physical needs or technical capabilities, then don't try. Another, related assumption is that the person receiving a document should have the final say over its presentation, whether or not the sender expresses any preferences by encoding them with the document.
SGML is a great way to accomplish these goals; early HTML, however, was not. Most of the original HMTL tags, including many still in use today, convey too little information about document structure and too much about how to present the document. It was a necessary compromise at the time, and subsequent standards, most notably Cascading Style Sheets and XHTML, do a good job of trying to re-separate structure and presentation while still keeping Web design relatively simple and flexible for non-programmers.
(If you'd like more background on the origins and early history of the Web, there's plenty of information available. I found that Googling "Berners-Lee, CERN, SGML" and then browsing the first page of results is a good way to start.)
The fact that the Web was created as a non-commercial medium, where users had the final say over how to view information, complicates things today. Many sites rely upon ad revenue, of course, and many more are the work of Web designers and content owners who, understandably, have strong opinions about design and presentation issues.
Anyone who uses a tool such as Greasemonkey should be aware of these things, and they need to recognize that at least some of their customization choices will have consequences beyond what appears on their browsers. Where each of us draws the line will vary; I consider text ads to be a tasteful way to sustain an ad-based business model, while other users take a more extreme position. In the end, these decisions are a matter of personal taste and ethics; use your heads and justify your decisions, at least to yourselves, before you load some of these scripts.
But is any of this a matter of "stealing" by blocking ads or "ruining" the Web by running it through a million-Greasemonkey gauntlet? That's where you lose me: If anything, it's the people making these accusations who are ignorant of how the Web evolved and why most of its key standards work as they do. Content owners who don't like this fact can charge users to access their content, or they can get smart about advertising in ways that appeal to their readers as well as to their bank accounts.
The one thing they can't do is accuse a tool like Greasemonkey of not playing by the rules. It just isn't so.
Matt McKenzie is editor of Linux Pipeline. A permanent link to this article is available here.