Slashdot Mirror


Hacking the Web with Greasemonkey

plasticmillion writes "Greasemonkey is a revolutionary Firefox extension that many feel has enormous implications for the future evolution of the web. By making it easy to write client-side scripts that modify webpages as you surf, it shifts the balance of power from content creators to content consumers. Since its inception, it has given rise to an impressive array of scripts for everything from enhancing Gmail with one-click delete functionality to preventing Hotmail from spawning new windows when you click on external links. In recent Greasemonkey news, Mark Pilgrim just published a comprehensive primer called 'Dive Into Greasemonkey', a must-read for those who want to try their hand at writing their own scripts. It should be noted that Greasemonkey is not without controversy, but this has done nothing to reduce its popularity among web programmers. Even Opera has jumped on the bandwagon with their own version of user scripts. To illustrate the principle to /.ers, I whipped up a handy little script called 'Slashdot Live Comment Tree', which lets you expand and collapse entire threads in an article's comments."

12 of 512 comments (clear)

  1. "Not without controversy" by glesga_kiss · · Score: 5, Insightful
    It should be noted that Greasemonkey is not without controversy, but this has done nothing to reduce its popularity among web programmers.

    It should also be noted that the person claiming controvesy is also charging $49.00 for the "research" he has written. Do people buy these things?

    Any, the summary of it reads as basically "users might install extensions that don't work with your own corporate pages". Personally, if an end user is installing applications without understanding the implications, you should ask whether that user should be allowed to install applications. The "researcher" claims that this risk should delay Firefox roll-outs in the enterprise.

    1. Re:"Not without controversy" by tweek · · Score: 5, Insightful

      The real problem is blanket deployments of firefox as is.

      You wouldn't deploy IE without locking it down so why not firefox?

      We have a deployment of about 2000 workstations with a highly customized build of firefox out there. I say customized but what I mean is that it's had various GUI elements stripped, keyboard shortcuts stripped and implements locked preferences. One of those preferences is software install. The only site that can install software is our internal update site.

      Somebody paid him to write this, possibly as part of an internal migration plan but he failed to notice that in a corporate environment, a well thought-out mozilla implementation would implement things like locked preferences and other customization. Combine this with workstation security and his point is probably moot. I'm not going to spend 50 bucks to find out.

      --
      "Fighting the underpants gnomes since 1998!" "Bruce Schneier knows the state of schroedinger's cat"
  2. Re:Disable Greasemonkey by Albanach · · Score: 5, Insightful
    I don't want them to see my site the way they want to see it. I want them to see it the way it was meant to be seen. That way I can provide content based on expectations of standards compliance.

    But the web is about sending content to the user - it's up to the user how they want to display it. Unles you're supplying a locked down PC with your own browser configuration you have absolutely no control over what the end user does with the content you send, or how they interpret it.

    Sure you can send CSS to the broser, but your visitor using links isn't going to see the result of you work. The visitor using a screen reader or mobile phone will be equally ignorant of your efforts.

    These are user installed scripts, and this is the web not television. The folk visiting sites are not their passively, they're there to interact and if they want your site to function a little differently so it better fits with their expectations what rights do you have to stop them?

  3. Re:Disable Greasemonkey by Tx · · Score: 5, Insightful

    This seems to be another step in the battle that's as old as the web, over who gets final say as to how a web page is presented.

    I feel the (Firefox) user should, and generally is going to have the edge, what with the uriid extension to apply site-specific CSS, greasemonkey, and other tools. But page producers always have wanted to dictate exactly how their pages appear to the user, however misguided that is, and I doubt the battle will ever be over.

    --
    Oh no... it's the future.
  4. content debate by enjahova · · Score: 5, Insightful

    Websites are a strange medium. Things like greasemonkey and adblock and google toolbar have been spurring these debates about content control.

    I would not be suprised if this debate grew bigger as the popularity of client side controll apps gets bigger.

    Alot of people want their webpage to look the way they intended it to look, but I think the truth is that you can not count on that. Different browsers, different computers, different monitors...

    I am in favor of client side tools, I think that a user getting the best use possible out of a site is a good thing, in fact that is my goal when designing a website. If they think they can do it better, be my guest.

    --
    "how can they call it a MINE if everything here is THEIRS?!?!" -Straight Jacket
  5. Re:Disable Greasemonkey by wfberg · · Score: 5, Insightful

    Your analogy is flawed. Artists have never had a right to prevent you from looking at their work in a certain way. Painters can't stop the colorblind or those wearing sunglasses to look at their paintings. Anyone can skip entire chapters when reading a book. I can play Beethoven and Britney Spears at the same time if I please.

    What I do with those works in the privacy of my own home is my business. I might just prefer it that way, and there's nothing you can do about it.

    Artists do have recourse against people redistributing altered ("raped") works, but that is also limited.

    In the case of greasemonkey, it's just a tool you use to view the web; other people might use other tools, like lynx for example, which renders a page completely differently from firefox or internet explorer. It's personal use. So lay off of it.

    --
    SCO employee? Check out the bounty
  6. Re:Disable Greasemonkey by masklinn · · Score: 5, Insightful
    I don't believe that's what he meant. His concern was that he wants his information presented a certian way and to leave it that way preventing others from changing it into something he didn't intend or desire for his content.
    And it's not how it's supposed to work.
    You can suggest, tell the visitor 'look, this is supposed to look like that', but ultimately the choice is the user's, just as in a book the reading order is merely a hint, if one wants to read the book backwards more power to him, and the author is not supposed to come at him with a big stick saying "no no, you're not supposed to read backwards, you can't skip pages either or i'll beat you to a bloody pulp you crackwhore", which is exactly what mfh intends to do...
    --
    "The way we can tell it's C# instead of Haskell is because it's nine lines instead of two." -- wadler
  7. Greasemonkey needs to inject scripts sooner by bgarcia · · Score: 5, Insightful
    I recently started playing around with Greasemonkey. I love it, but there is one issue that I have with it. It injects its scripts at the end of the web page.

    I have a web page that runs a little javascript at the end, where it pops up an alert window, then redirects to another page. I would like to write a greasemonkey script to remove this redirection. Unfortunately, the page's javascript gets run before greasemonkeys. Any ideas about how get my greasemonkey script to run sooner?

    --
    I'm a leaf on the wind. Watch how I soar.
  8. Opera and user scripts by nafmo · · Score: 5, Insightful

    "Even Opera has jumped on the bandwagon with their own version of user scripts." Well, considering that Opera previewed a similar technology back in early 2003, I'm not so sure you could call that "jumping the bandwagon". But still, it's a nice edition, both to Firefox and Opera.

  9. Re:Disable Greasemonkey by Eternally+optimistic · · Score: 5, Insightful

    But your site looks bad on my browser, it is making assumptions about my screen that are incorrect. Why would you want to prevent me from fixing that?

    Your content is not displayed on your site, it is displayed on my computer, and you don't know my local parameters. What is there to gain, for anyone, by not allowing me to adjust for a mismatch there?

    --
    What keeps me going is my inertia.
  10. Infinite developer headache by Anonymous Coward · · Score: 5, Insightful

    If you're writing static webpages, so what? It won't affect you.

    If you're writing server-side scripting, you should already be paranoid-checking for bad user submissions. Time to double-check everything is in place.

    If you're writing client-side scripts, welcome to hell. You can no longer assume anything will be where you put it, or, in fact, still exist.

    What's more, you can't test your site "with greasemonkey" to see if it's OK. You have no idea what the user is going to do to your page with it.

    This leaves a handful of options:

    1) Make your scripts disable Greasemonkey (which will work until too many sites do it, and it's updated to allow users the final say)

    2) Switch productive time fixing bugs and adding features to adding and subsequently wading through checks on every possible error condition that user scripts might make possible.

    3) Ignore Greasemonkey and when the users complain your site is broken, inform them it's their own stupid fault.

    My personal leaning is towards (3).

  11. Re:Disable Greasemonkey by Anonymous Coward · · Score: 5, Insightful

    And it's not how it's supposed to work.
    You can suggest, tell the visitor 'look, this is supposed to look like that', but ultimately the choice is the user's,


    yes it is (the user's choice).. hasn't user-defined colors (or stylesheets in newer versions) been in graphical web browsers since pretty much the beginning?

    note to webmasters: if you DONT want people to alter your page on the client-side, code it strict, use css, and leave the annoying scripts, ads, popups, ani gifs and other crap out of it.

    once a site is on MY computer, i will do with it as i please. so long as i dont republish it, you can't piss and moan about it.