YSlow for Opera, out now!

, , , , ,

For a long time, YSlow has been popular as an effective tool for measuring website performance and highlighting areas for improvement. Previously not available to Opera users, we're pleased to say that all changes as of this week. We've worked with Marcel Duran from the Yahoo! Exceptional Performance team to create YSlow as an Opera extension.

It all started back in June, when a mobile version of YSlow was released in the form of a bookmarklet. As you probably know, a bookmarklet is simply a chunk of JavaScript code that is executed from within a browser's address bar or bookmark link. This makes it relatively straightforward to convert YSlow, or indeed most bookmarklets, into an Opera extension. The main change is the addition of a toolbar button and a config.xml settings file.

Next steps? Here's how to use it right now to see how your website could be made faster.

  1. Using Opera for desktop, install the extension from the
    Opera extensions sites.
  2. Visit the website you'd like to measure the performance of.
  3. Click the YSlow icon in your toolbar, then click the "Run Test" button.

For more details on how to implement some of the resulting suggestions, please head to the YSlow website.

Introducing Oupeng, a Chinese OperaASP.NET sites - Served With The Wrong Mime-Type

Comments

QuHno Friday, August 12, 2011 2:33:56 PM

Nice to see that the mobile bookmarklet works for Opera too, but was it really necessary to build an extension from it?

IMHO not!

... only if you wanted to show how easy it is to convert bookmarklet code to an extension.

Why not go the whole way and include the linked script in the extension too, best with a check, if the linked script has changed in the meantime and if not, just use the local version?

Daniel Davistagawa Saturday, August 13, 2011 1:23:29 PM

Hi QuHno,

I agree, there's not much difference between the original bookmarklet and this extension, but I feel calling it a joke is a bit harsh. Of course, you're entitled to your opinion but please let me try to explain my reasons for making it and writing this blog post about it.

Discoverability
Our extension repository is where most users go when looking to extend Opera. Because of this and based on the comments people have written there, I believe many more people will find this than would have done had it stayed as a bookmarklet only.
Ease of installation
Your button creator looks like an effective tool offering lots of control over various parameters, but equally there are those who like the simplicity a ready-made extension offers. Dragging a pre-built button such as your example one is, I agree, a good alternative.
Access to updates
The linked remote script is obviously always the latest version, but if the bookmarklet code itself (including that within the extension) changes, users of the extension will get an update automatically. Admittedly a minor point but still relevant.

And finally, because converting a bookmarklet to an extension is so easy, I simply thought I'd give it a try one afternoon and see if people like it. It was only after we saw the buzz it generated on release that I wrote this blog post.

I share your frustration that ideally it shouldn't be necessary to have both a bookmarklet and an extension doing the same thing, but we've endured years of hearing complaints that Opera doesn't have such-and-such an extension (e.g. "The main problem with Opera is there's no YSlow extension"). No matter how many times we've tried to explain about the many UserScripts and bookmarklets out there, there seems to be something about extensions that makes web users crave them. This extension is one more attempt to help people love Opera.

Overall, I understand your point of view but there are many who seem to be finding the YSlow extension useful. One day it may evolve into a "proper" extension that doesn't use a linked script, but even in its current form I believe it's worth telling people about.

QuHno Saturday, August 13, 2011 4:11:38 PM

Sorry for my harsh tone, but my frustration built up over the decade.

It was not about the button creator (those tools are for geeks lol), it is about loosing contact to the bunch of really good but non-advertised things that are built in in Opera since ages.

Explaining something to a user in a more or less obscure blog or in the changelogs (does the average user really read any of them?) is a very different thing to creating a prominent page like the addons page for the other goodies too.

Ease of installation & Access to updates:
It is possible as the UJSManager Unite Application shows, it installs a userJS with one click, it remembers the d/l path and looks every few days if there is a new version of the userJS. If there is one you'll become notified that there is. Integrate exactly this functionality direct into Opera and you are done. As it is now, if I ask a user to start a server(!) like thing like Unite and to Log in to install an application, that asks questions like: "Enter the path to your user-JavaScript (Geekalarm!) folder", just to get updates for a plain userJS, I loose that user.

Discoverability:
Show people that Opera can do so much more, I can only repeat: build a UserJS and Button repository like you build the extension's repository. A thread in the forums is not enough!
I believe the (hundreds?) of button and userJS authors would happily fill it - and no, a link to userscripts.org ot ttt or Vectronics button pages is not enough!

Especially Opera buttons and UserJS could be first class citicens too (just look at the number of Greasemonkey scripts that are installed every day and compare it with Opera userJS), if they would get a little bit more love and if some of the wishes that were posted in the forums would come true:

To name 2 of them:

Custom images in the button codes:
A long standing wish. Opera can parse base64 encoded images, so why not for buttons? Just allow one type: img/png to avoid base64 injected malware. I'd love to build a shiny button. wink

Brackets in the button code:
The actions are quite powerful and you can put almost any JS into a button, but sometimes you really need better grouping options when you put together a bunch of actions.

To come to an end of this lengthy comment:

Some things are plainly not possible with extensions, which IMHO is a good thing, but with buttons - like switching to the Polipo proxy for connecting with TOR, activating and deactivating the general content blocking with one click etc.

You could invent a whole new class of "Extensions" like "Button Extensions" and "Script Extensions" by just giving the child a new name and giving them a prominent home.

Yes, I see the necessity of building extensions like the YSlow extension, especially in this case it makes sense to put it into an extension, because updates and additional downloaded contents are needed, but: See above wink

</rant>

Unregistered user Sunday, August 14, 2011 8:57:00 PM

Anonymous writes: > Click the YSlow icon in your toolbar, then click the "Run Test" button. Huh? After installing the extension on Opera 11.11, I see strictly no button, no icon, nothing at all anywhere on the Opera window. I can manage the extension through the menu, but what good is it if I cannot even _access_ it? Where _exactly_ is that icon supposed to appear, and what must be done so that it really is actionable?

Daniel Davistagawa Monday, August 15, 2011 7:21:21 AM

@Anonymous:
The icon (a small blue speedometer) should appear on the right side of the address/search bar, just below the "Closed Tabs" button at the top right of your window. If it's not there, have you hidden the address bar or are you using a skin?

@QuHno & Constantine:
Thank you for the feedback. I'm due to meet people more closely involved with this soon and although I can't promise anything, I'll raise your concerns and the ideas about button enhancements as well.

Unregistered user Monday, August 15, 2011 9:26:22 AM

Anonymous writes: > The icon (a small blue speedometer) > should appear on the right side of the > address/search bar, just below the > "Closed Tabs" button at the top right > of your window. Nope. I tried other extensions (such as translators), and they do appear in the manner you indicate. Yslow just does not. > If it's not there, have you hidden the > address bar or are you using a skin? Address bar present, tried with Opera standard skin and Windows native skin (on XP). Nothing. It looks like yslow has a hidden strict requirement for a specific version of Opera. It would be important to make such dependencies very clear beforehand.

ouzowtfouzoWTF Monday, August 15, 2011 11:33:36 AM

@ Daniel Davis:

Why dont you put every type of addon (as c69 said: userjs, widgets, bookmarklets, real extensions, ...) under the addon-page? They all could be named "extensions" or "addons". For the Average Joe its not important what the technology is used behind the name. Chrome does this even with a simple bookmark to a page (!!!). And I rant myself that they call it an extension, but the normal users dont care. Of course, for advanced users there should be more information what technology is used in the extension and a way to filter for that in the search (at the moment the search results on the addon page are anyway not very good, but thats another story here).
But the number of addons would also increase faster, which will also raise the "felt quality" of the addon page for users.

Daniel Davistagawa Tuesday, August 16, 2011 5:54:01 AM

@Anonymous
Strange. It doesn't require a specific version of Opera - I tried it on Opera 11.11 (build 2109 on Ubuntu 11.04) and it worked fine. Please could you let me know the build number and what OS you're using? I'll try to recreate it again here.

@ouzowtf
I'm afraid I don't know what our long-term strategy is for organising all addons, extensions, scripts, etc. I'm in a different office (Tokyo) so I don't what the relevant teams are discussing but I do know they're currently active in trying to improve the repository. I'll point them to this page so they can see all the feedback here.

QuHno Tuesday, August 16, 2011 6:39:13 AM

Originally posted by anonymous:

It looks like yslow has a hidden strict requirement for a specific version of Opera. It would be important to make such dependencies very clear beforehand.


Tested with XP and w7x64 under 11.11, 11.50, the latest snapshot and the latest LABS build - it works fine in all versions here.

Do you see a small extender (small triangle) at the right side of your last extension?
Did you try to right-click on an empty field in the Adress Toolbar and
Customize -> Reset toolbar to its Defaults?
Did you right-click -> customize -> Appearance ... on one of the extensions to get the settings for the extensions toolbar? It could be that it is set to "no wrapping". If so and if there is not enough room in the toolbar, the extensions at the right side will vanish ...

ouzowtfouzoWTF Tuesday, August 16, 2011 8:29:12 AM

Originally posted by tagawa:

I'll point them to this page so they can see all the feedback here.


Thanks for that smile

Unregistered user Tuesday, August 16, 2011 9:24:44 AM

Anonymous writes: @QuHno: I checked all your useful suggestions, but they have no effects upon the problem. The Yslow extension just does not appear in any form on the Opera tabs. Since some other extensions worked, I cleaned up the extension set and started installing a variety of extensions in a disorderly fashion to see what happens. The results are interesting: fail: google images direct 1.5 success: in-place translator 1.10 fail: makelinks 1.1.1 fail: translator 0.5a fail: Yslow fail: translate 1.5 success: swissknife success: radiation in Tokyo success: unit converter All the "fail" behave just like yslow, i.e. they do not appear at all. The others work correctly and their icons line up at the right of the search tab (itself at the right of the address tab). Very odd. Can anybody think of a reason for this divergent behaviours?

ouzowtfouzoWTF Tuesday, August 16, 2011 10:18:03 AM

Originally posted by anonymous:

Can anybody think of a reason for this divergent behaviours?


I dont know how "yslow" works, but "google images direct" does not have a button in the bar, because it just redirects you to directly to a picture when clicking on a google image search instead of to the "iframe-window-page".

QuHno Wednesday, August 17, 2011 4:04:48 AM

Yes, there are some extensions that have no buttons (and need none) but YSlow should have a button, because that is the only way to start it.

I looked into the code and I did not see anything that could prevent to show the button, the code is pretty straight forward ...

Unregistered user Wednesday, August 17, 2011 8:19:05 AM

Anonymous writes: Well, now it works. It seems that Opera ended up in a state where its extensions behaved strangely. Rebooting solved the problem, no idea what could cause that odd behaviour.

Daniel Davistagawa Thursday, August 18, 2011 4:34:06 AM

Strange. I haven't heard of that before but glad it's working now.
Thanks for letting us know.

ChrisSlamdex Saturday, September 17, 2011 10:48:30 AM

Originally posted by QuHno:

build a UserJS and Button repository

Originally posted by c69:

Why not add a native user js manager ?

Newsflash: it already exists, and is called "Manage Extensions."

Extensions are User JS with user friendly packaging and more capabilities!

QuHno Saturday, September 17, 2011 11:12:53 AM

Originally posted by Slamdex:

Newsflash: it already exists, and is called "Manage Extensions."

]Just answer one question:
How can I add a userJS from i.e. userscripts.org that is fully operational in Opera with that?

Extensions are User JS with user friendly packaging and more capabilities!

There are thousands of really useful scripts that don't need the additional layer of obscurity of extensions. Who will convert all these useful scripts to extensions?

BTW: Buttons have rights in Opera an extension can only dream of!
Have you ever tried to change the Opera proxy settings or the "identify as" setting with an extension? Good luck for writing one!
I can assure you that it is almost a no-brainer with a button wink
The same goes for buttons that work with the mail client etc. pp.

Buttons are for different things than extensions and they are one of the most powerful things Opera has and many people don't seem to recognize that, but think of extensions as the white knight that solves all problems like it is in Firefox, as your comment shows too.

Operas extensions are different and can't do many things a Firefox extension can do, which is a good thing IMHO, because Firefox extensions open a can of worms by being so powerful.

ChrisSlamdex Monday, September 19, 2011 9:09:23 AM

Originally posted by QuHno:

How can I add a userJS from i.e. userscripts.org that is fully operational in Opera with that?

You don't. You aren't supposed to. You are supposed to install extensions, which is much easier and more powerful.

There are thousands of really useful scripts that don't need the additional layer of obscurity of extensions.

There's no obscurity. You are confusing obscurity and ease of installation. To install, you need a packaging format.

ouzowtfouzoWTF Monday, September 19, 2011 12:31:39 PM

Originally posted by c69:

We love Opera as much as you do, yet this dumb fanboyism is starting to annoy already. Opera DOES HAVE weak spots, and they need to be fixed in order for her to be competitive. Point.


FULL ACK.

ChrisSlamdex Wednesday, October 5, 2011 7:05:36 AM

Originally posted by c69:

We love Opera as much as you do, yet this dumb fanboyism is starting to annoy already. Opera DOES HAVE weak spots, and they need to be fixed in order for her to be competitive. Point.


Demanding something that already exists is not pointing out a weak spot. It's called "not paying attention."

Demanding that Opera spend time on useless crap that is already handled in a much better way is in fact nothing but trolling.

QuHno Wednesday, October 5, 2011 9:55:29 AM

Originally posted by QuHno:

There are thousands of really useful scripts that don't need the additional layer of obscurity of extensions.

For clarification: And no more capabilities than they already have

Originally posted by QuHno:

Who will convert all these useful scripts to extensions?


Originally posted by Slamdex:

To install, you need a packaging format.

Bullshit! I don't need to install anything, I just need to copy a userscript into a folder and it works. The extension packaging format is only necessary if I need additional functionality like settings pages, cross site requests etc., which I do not need most of the time. I don't even need it for automatic updates, if I use the Unite Userscript manager.

If I have a problem that can be solved by an existing userscript from i.e. userscripts.org and anybody tells me that I shouldn't use a perfectly working userscript but a non existing extension instead, this person should do a reality check.

ChrisSlamdex Wednesday, October 5, 2011 5:52:34 PM

Originally posted by c69:

We love Opera as much as you do, yet this dumb fanboyism is starting to annoy already. Opera DOES HAVE weak spots, and they need to be fixed in order for her to be competitive. Point.


Demanding something that already exists is not pointing out a weak spot. It's called "not paying attention."

Demanding that Opera spend time on useless crap that is already handled in a much better way is in fact nothing but trolling.

Originally posted by QuHno:

Bullshit! I don't need to install anything

Maybe you don't, but most people do.

I just need to copy a userscript into a folder and it works.

Great! Keep doing that then.

You want a manager and easy installation, you use extensions. You want to dick around manually, you use User JS as it is. Problem solved.

QuHno Wednesday, October 5, 2011 8:28:27 PM

Can't you understand or don't you want to understand or are you just trolling?

If there is no extension for the problem I have but a userscript - will YOU convert it to an extension for me? No? I didn't think you would.

ChrisSlamdex Tuesday, October 11, 2011 10:06:24 AM

So? How is that relevant to anything? You already know how to install user scripts.

Write a comment

New comments have been disabled for this post.