Doug Stephen is Politely Peeved

A Mini-Review: Opera Next

This morning, I decided to sit down and play with Opera Next. I went in hesitant; I was actually an Opera user for a short time in the past (back in high school), and I’ve always found the company and their browser interesting but always falling just a little short.

While often little-known in the general community, Opera has long been known in the web community as the browser most hard-assed about “standards compliance” while simultaneously having one of the weirdest rendering engines. Firefox had Gecko, Safari and Chrome shared WebKit, and Opera had their own called Presto. Because of their diminuitive market share, most people wouldn’t design targeting Presto, and a vicious cycle was born.

Opera Next is an interesting shift; the group has dropped Presto and decided to move to a Chromium-backed system. This means that Presto is no more; the current builds of Opera Next should be using WebKit until Chromium itself switches to Blink, at which point so will Opera. The politics behind Google adopting Blink aren’t going to be part of this. This is just a short rundown of my initial impressions on Opera Next.

Will It Blend Render?

You would assume that WebKit is as WebKit does, but anybody who has used both Chrome and Safari will tell you that this is far from the truth; there are many other factors that go in to how quickly a web page will load. And on that metric, Opera Next is balls to the wall.

It’s fast. Like, noticeably fast. I had one of my friends, someone not really all that nerdy and not really all that wrapped up in browsers download Opera Next and go to the /r/all subreddit this morning, and just start clicking around. He immediately iMessaged me “Holy shit, Opera is fast.” This isn’t just the marginally obsessive observation of somebody that spends too much time studying page load progress bars; it’s tangible. Opera is easily twice as fast as Chrome and an order of magnitude faster than Safari at the simple task of loading pages, especially ones that are heavy in JavaScript. The side benefit of this is that, while JS heavy extensions will still impact your browsing experience, they won’t do so nearly as much.

While I’m specifically mentioning JavaScript and speed times, it should be noted that these tests are informal and that I know little-to-nothing about Opera’s JS engine; I don’t know if they’re using V8 or their own out-of-the box solution. JavaScript may have nothing to do with it.

Opera does have technology similar to Amazon Silk where they intercept, cache, and compress traffic on their own servers. They’ve been doing this for a lot longer than Amazon has, because they have been serving the niche market of providing browsers for mobile phones (not just smartphones) for a very long time, and have become sensitive to the needs of users that aren’t on a super-modern Internet backbone. This feature is present in Opera Next, but as far as I can tell it is not responsible for the speeds that I’m seeing. The feature itself is called “Off-Road Mode” in Opera Next and has to be explicitly enabled; it was not during my testing.

All I know is, Opera Next is really, really fast.

Bells and Whistles

Opera Next’s UI is quite spartan, but not in a bad way. This is the result of a few things: first, the Opera team have always favored a fairly dense, compact way of presenting information. Secondly, the browser itself really doesn’t have a ton of features; this is a big departure from previous releases of Opera, which have had more knobs and fiddles than I ever knew what to do with. This, to me, is a good thing. The minimal feature set is almost a little refreshing.

Some of the more interesting choices made were things like the lack of a bookmarks bar. In fact, it seems as though Opera has abandoned the idea of the bookmark entirely. Instead, they rely on two other features. One is the Speed Dial, which should be familiar to Opera users and reminiscent of similar features in Chrome and Safari. It works similarly to the “top pages” idea, but I think that Speed Dial might predate these features, and it works a little differently; the list of sites isn’t built up by the browser on your behalf, but rather all of them are always custom set by the user. It’s like Safari’s Top Sites if everything started off blank and once created it was always pinned. The second is the Stash, which is effectively a bookmark. That said, I find that the Stash is much more like bookmarking for the modern era of browsers; instead of just a text list, the Stash shows a snapshot of the sites you have saved. It’s very very simple to either promote a site to the Speed Dial or remove it from the Stash, and the tagline itself of an empty Stash is that it is a place for things you want to come back to; the day of the bookmark as being a site that you frequent has gone away for most nerds with the advent of RSS and social media. I’ve always felt that bookmarks were an artifact of another time, and Opera Next really seems to feel the same way.

The only downside to this whole setup is the lack of a bookmark bar. I use my bookmark bar in Safari and Chrome to hold not websites, but bookmarklets. This is especially useful in Safari, where Cmd+{Number} triggers Bookmark Bar items. Instapaper is bookmarklet number 1, so a Cmd+1 will automatically save the current site I’m on to Instapaper for me. I’m sure most of these things can be replicated with extensions, but it’s still a hiccup in my workflow.

Every Day Usage

The big question, though, is “Can I use Opera Next now, today, every day, to get things done?”

One of the major components of a modern web browser is Extension support, and for many of us our daily workflow has been built up around a set of extensions. Opera Next, being brand new and of a progeny with a tiny user base, is lacking in this department. I believe that it is fully compliant with existing Opera extensions, as going to the “Get Extensions” menu item will take you directly to the Opera extensions page. But that isn’t necessarily the greatest catalogue of tools, and this could be a problem for most people.

Or so it seems.

It turns out that, while not immediately presented as a supported feature, Opera Next is 100% interoperable with Chrome/Chromium extensions. It takes a little work, though.

For any website that distributes .CRX files directly, things aren’t that tough. The process for installing a .CRX in Opera Next is fairly straight-forward; drag-and-drop the .CRX file in to an open Opera Next window, then go to opera://extensions to access the Chromium-style extension manager, then activate the extension from there.

For sites that rely on the Chrome Web Store, though, where Google has really gone out of their way to prevent people from accessing CRX files directly… it’s trickier. I used the following steps to generate a .CRX file for the Reddit Enhancement Suite, though, and it worked perfectly. It requires that you have Chrome or Chromium installed.

Navigate to ~/Library/Application Support/Google/Chrome. The user Library folder is hidden on OS X Lion and later, so you’ll either need to CMD+Shift+G and type in the path, Option-Click the Finder’s “Go” menu item, or activate hidden folders.

Under the Default folder, you should see Extensions. Unfortunately, all of the extensions will have their names hashed in to garbage. You’ll have to sift through each folder until you find the extension you’re looking for. If you’re lucky, the extension has an Icon that you can look at. Another way is to open up the file called manifest.json in a text editor and look around until you see the extension name.

Once you’ve found the extension you’re looking for, copy the version number folder (not the hashed name folder) to your desktop or somewhere easily accessible; basically, you want to copy the folder that is the immediate parent of the manifest.json file.

Open up Chrome/Chromium, and navigate to chrome://extensions, then activate the check-box that says “Developer Mode”. After doing this, you should see a button that says “Pack Extension”. Click this button, point it to the folder you copied out, and it should generate a .CRX in the same directory.

Follow the instructions I gave earlier for .CRX files

Unfortunately, this still leaves me with one last problem.

The most important browser extension in my arsenal is the 1Password browser extension. I’m useless without it. And while the 1Password .CRX will install in Opera Next, it won’t communicate properly with the 1Password Helper, so I can’t actually use it to access any of my stored passwords. Hopefully Agile Bits will be able to issue a small fix to allow for interoperability; given that the extension works out of the box I’m hoping it’s something as simple as white-listing an app bundle ID somewhere. But that’s being optimistic; I’m sure it’s a lot more work than that.

One Last Nag

No AppleScript support. This is a big deal to me; I use AppleScript on browsers all the time. The lack of 1Password and AppleScript support makes it tough for me to advocate switching to Opera Next full-time, but that would only be if it was me looking for advice from me. Obviously, your mileage will vary.

Wrapping It Up

Opera Next completely surprised me. The simple and sparse UI is pleasant to use, the features that are there work great, and it’s fast as hell. It has all of the little niceties of Chromium; a unified search/address bar with Google Instant results, support for a huge subset of the ever-evolving HTML5/CSS3 specs, and a huge extension library (if not always the easiest to work with). If Opera Next got the ability to fully utilize the 1Password extension and rudimentary AppleScript support tomorrow, I would absolutely switch to it full-time without question.

This blog is not affiliated in any way with the IHMC, and all of the content and opinions contained here are not indicative of any sort of official stance or opinion held by the IHMC, the IHMC Robotics Group, or any of the people associated with IHMC unless otherwise stated explicitly.