Hello Opera 12
my.opera.com
my.opera.com
Given that my only real exposure to Opera is from trying to ensure my stuff runs well in it, it's easy to get the impression that everything about Opera is broken. I wish they had a public bug tracker so it was easier to tell which things are known issues, which things have known workarounds, and which things I should file bugs about.
In particular, the audio issues are a point of frustration: At present, if you test the latest builds of Firefox, Chrome, Safari, Opera and Internet Explorer, Firefox is the only one that actually has low-latency, functioning support for <audio> that doesn't crash or hang. It's ridiculous. Chrome at least has a custom webkit-only API you can use to get working audio, but the rest of the browsers are just flat out broken. And in each browser's case, they've had multiple versions to fix basic issues (limits on how many sounds you can load in a single page context; broken events and APIs; absurdly long playback delays, etc). Oh, and Firefox still doesn't support the loop attribute. :|
Native platforms and architectures were replaced by browser platforms, trading power and control for deployment headaches. And now you want to write for multiple browsers, multiple OSes and multiple architectures all at the same time while still battling heaps of restrictions any decent OS/antivirus would impose on binary blobs that can be run by a browser directly?
(disclaimer: I'm obviously biased towards native development :))
That is technically true, but what is the point? The bindings can make things better, or they can make things worse. WebGL, for example, covers over a lot of issues with OpenGL (security and convenience), making the web version very nice to use.
> Can we please have native code instead, so developer controls the underlying system without having to rely on the wits of browser makers? Google Native Client is a step in the right direction.
Native code is by definition non-portable.
NaCl in a partial attempt at portability adds bindings of its own to native APIs. Ask people developing for it, like any environment it has bugs and issues.
There is no simple solution here.
Last time I tried WebGL version of Quake3 on my machine which had the hi-end AMD graphics card at that time, it ran at less than 100FPS. For a game that's 10 years old that is a very poor result. The reason why I said bindings is because I want a language powerful enough to implement any technology I want in that language.
> There is no simple solution here.
Of course it's not simple. It doesn't mean it's not possible. Microsoft's WinRT is another example of coming closer to the native code apps.
The Quake II port was extremely unoptimized in how it was performed. It's not a good benchmark of anything.
> Microsoft's WinRT is another example of coming closer to the native code apps.
What about just actual Android C++ apps, as an example of native code apps..?
While it's not possible to track the status of a bug, you can submit them:
https://bugs.opera.com/wizard/
I've submitted quite a few over the years. I've even gotten emails back asking for more information. For example, I submitted a report about an issue with their hardware acceleration detecting the wrong GPU in a multi-GPU system, which they fixed.
I don't see why more people don't realize, WebGL is a prime Microsoft threat and the key to moving away from the MS Windows monopoly. That's why Microsoft has done so much work to try to scare people away from WebGL (by sponsoring 'security research' and creating FUD content on Wikipedia (seriously, look at the history of that article, the person who created the whole 'security' section on WebGL has an ip that originates right next to Microsoft headquarters, and the 'security research' is done by a Microsoft shop)).
What the Opera, Webkit/Safari/Chrome, Mozilla teams should focus on is getting mouse capture and WebGL uniformly supported and turned on across browsers and one or two well-hyped and playable 3d first person games. Any industry player who has money and wants to oppose Microsoft should put money behind big WebGL game releases and hype for such.
You get that working across browsers and push that and things like Google Docs, EditGrid, ethercalc, Zoho Creator, LibreOffice etc. and you will see WebGL games starting to take down PC games sales and Office alternatives hurting Windows/Office sales.
Anyway, please give the people in charge of those programs and funds a link to this explanation if you know anyone like that.
https://twitter.com/#!/ID_AA_Carmack/status/8173219094948659...
How many years does John Carmack have invested in C++ programming for Windows games?
John Carmack is nothing if non-partisan when it comes to tools and platforms. Most everything he wrote was reasonably cross-platform C until id Tech 4, released in 2004.
I'd say Carmack has zero years invested in C++ programming for Windows games. He instead has decades invested in making cross platform game engines written in a variety of C-based languages.
Point is, he isn't being objective, he is invested in the old way of doing things, but so is everyone else. I should save my breath.
Its the same with everything else in this 'civilization'.
Below the browser you have the userland driver components, which do things like further shader verification and initial stages of the compilation, validating index buffers, and simplifying the command stream. Below that you have the kernel components, which largely trust the userspace to have done their job properly, then do things like compile shaders for the specific hardware and put things into the proper form to send it off to the GPU, as well as handling synchronization and locking and all that. Then below that, you have a massively complex piece of hardware that under most circumstances is fully able to touch every single bit of your system memory (thanks, DMA), and that doesn't care one bit about security; it assumes that everything coming from the kernel is 100% safe and intentional. If you tell it to copy memory from point A to B, it will do it without complaining. Meaning if you wanted to, say, write over kernel memory from a buffer in the browser...
So let's look at what needs to happen to get ring0 (kernel mode) access from WebGL: 1) get your payload through/around validation in the browser, using available APIs, 2) get through/around userland validation OR attack the optimization/compilation steps that occur at that layer, 3) potentially attack optimization/compilation steps that happen in the kernel component -- optional, since this layer may not be your target, 4) GPU does your work for you.
At most, you're talking 3 layers to compromise. Compare to real-world vulnerabilities against other parts of the browser (see also: Pinkie Pie) where you're involving dozens of steps, and suddenly this doesn't look too difficult. The tough part is that it requires a significant amount of domain specific knowledge, but I'm certainly not the only one with it.
WebGL, as awesome as it is, is a security risk. It's one caused primarily by the fact that GPU vendors have never had to care about security along these lines before. It will be solved eventually, but it's damn sure not solved now.
- off to hide under the bed!
Did you actually see the specific 'security' concerns that that MS shop put out? Part of it was a laughable demo of an 'attack' that actually did not compromise anything, and looked like a mock-up that would be used in a movie. Whether there are potential security concerns or not, the actual 'concerns' that MS and that company raised were definitely FUD.
Almost all of the iOS jailbreak vectors involve chaining together bugs and quirks in multiple different subsystems, to ultimately root the system.
These aren't theoretical concerns. Just because WebGL hasn't yet been exploited doesn't mean it'll never be exploited. And given the way WebGL works, a WebGL exploit may be a very serious problem.
And have you seen them? http://blogs.technet.com/b/srd/archive/2011/06/16/webgl-cons... Let's go over the points together:
> Browser support for WebGL directly exposes hardware functionality to the web in a way that we consider to be overly permissive
The WebGL API -- outside of bounds checking and shader validation/translation -- is a direct conversion of the EGL API. This makes getting your data (legitimate or not) into the lower levels very easy. That cuts both ways, as I detailed.
> Browser support for WebGL security servicing responsibility relies too heavily on third parties to secure the web experience
Read: The security of WebGL depends on GPU driver vendors, who write terrible code. This point is well known by anyone who's worked on enough 3D code, or even just tried to fix graphics bugs in games by doing the driver update dance.
> Problematic system DoS scenarios
For the vast majority of GPUs, there's no way to set timeouts on rendering or shader execution, so DoSes are just downright trivial. This will be the first thing to get better, with the various robustness extensions that are coming.
All in all, I have absolutely no issues with what MS released on the subject.
Bullshit. Completely unsubstantiated.
The browsers themselves are what are actually being compromised in reality, Microsoft by far more than others. The WebGL exploits are just theoretical. Every browser vendor is a third party.
Big fucking deal, somebody makes your browser or system freeze up.. like that is a new thing that you can't do with a browser or with Internet Explorer? Freezing the system isn't that easy to do with WebGL and depends on the specific setup of that machine. That's not a security concern, thats just a potential inconvenience.
I don't give a fuck what you dumbasses think, this is obviously Microsoft FUD. But its just another example of the sort of idiotic rationalizations that normally support the status quo.
> you will see WebGL games starting to take down PC games sales
More like Angry Birds and whatnot... we're a long way from running something like Skyrim or Call of Duty on a browser.
Does this translate to any substantial improvements in speed? Does anyone here know of any benchmarks?
For the kind of software like Opera (and Firefox and Chrome), the additional registers in 64-bit mode help a little, but that tends to be offset by most pointers now being 64-bits and the L1/L2 caches hence being less effective.
And by the way I use opera to open a lot of tabs and it handles those very well (compared with other browsers)
I tried it and to be honest I can't tell the difference.
Also bear in mind that it needs 64-bit Flash and Java plugins which are notoriously problematic.
This isn't helped much by Chrome's aggregate memory use being about 10x higher than other browsers. Takes a good 2-300 tabs in Opera to break 4GB, takes more like 20-30 in Chrome.
My one frustration is that when launching a web page from another app it always opens a new tab so I end up with 10 tabs open and have to close them all every so often.
There are also features that i would love to see on Firefox. Tab Stacking is awesome, way better than Panorama. I really like also how Opera put the tab bar on the left, I find it better than Tree Style Tab.
I'll try the new version later, but i doubt that the new features will be worth a switch for me.
In Opera Ctrl+Click opens a new tab, Ctrl+Shift+Click opens a new tab in the background. It's not a new feature. Learn to play your class. ;)
However, i can't think of any other software where modifier keys makes a difference in context-menus, so i really wouldn't blame people for not knowing.
Opera is always surprising. Did you know you have mouse gestures (such as 'close') in menus such as preferences? It blew my mind.
e.g. right clicking a folder in Finder and holding alt will show different options.
With this configuration change "Right click->Search" will open a new tab.
Uncheck Preferences-Advanced-Tabs-"Reuse current tab".
>on Firefox/Chrome middle-clicking on the back button open the previous page in a new tab.
You can clone tab, so it's possible to implement clone tab and go back macros with custom button like opera:/button/Duplicate%20page,,,%22Back%20in%20background%22,Rewind%20&%20Back
I remember asking for a feature in forums in days of Opera 11.00. The feature was something that every browser has: "Remembering contents of a text field." For example, when I enter my email address once in a website and then come back another day and write first letter of my email id, it is displayed in a dropdown. But Opera outright refused to even consider.
Now, they lack a good full screen mode and drag and drop support in GMail, two real deal breakers for me. I tried Opera 12 for less than 12 min and sent it back to dark corners of my HD!
Goodbye Opera 12.
I know this is not quite the same implementation that other browsers have.
And what is wrong with F11?
And GMail interface has many other features that I prefer.
I prefer the way Safari does it. When I take cursor to top, address and tab bar are shown!
Points re:webmail also taken ^^
I have six email accounts setup in my Opera, all using IMAP. There's a unified INBOX so I can check all my messages, but still be able to review each INBOX separately. Email search is BLAZING fast, the fastest search I have ever used, though it lacks advanced search options like searching only in the subject.
The contacts view is also awesome. Click on a contact and it'll show all the mail to and from that person, instantly. No searching.
The best part is that I never have to "check" my email. Opera notifies me as soon as I get an email (thanks to IMAP) and I keep open the sidebar on the right so I can always see the UNREAD counter to know if I have new messages or not.
Since reading email and browsing the web are things I do all the time, it really makes a lot of sense to me to have those two activities live in the same window and use the same tab navigation system. I love it.
I built a really simple site to see how this all works. It will fall back to flash if you don't have WebRTC support which includes Google Chrome Canary and now Opera 12.
Here's more if you are interested: http://my.opera.com/desktopteam/blog/2012/06/14/twelve-under...
My conclusion is that Chrome on Windows 7 is by far the most 'snappy' and Firefox on any OS most 'dev friendly' (even though Chrome is coming along that way very nicely).
That being said, Opera on mobile is very fine, but I still prefer using whatever stock browser is on particular device. Everything else is a little buggy.
What I found lacking in any of the browsers is the developer friendliness on mobile devices. Anyone has any recommendations on that?
There seems to be documentation here: http://www.opera.com/dragonfly/documentation/remote/
[1] http://en.wikipedia.org/wiki/Cross-origin_resource_sharing - secure cross-domain AJAX without hacks like JSONP, so you can do POST requests, set headers, etc.
To be clear I used to use Opera back when they where the only browser with tabs, but that was close to a decade ago.
Opera really is a web suite, not just a browser.
For me it is configurability (if that's a word). Primarily ability to configure controls out of the box. For keyboard, mouse and mouse gestures. This includes dozens of custom actions, even javascript, all of which can be combined using logical conjunctions. No other browser I tried allows you this, not even close.
Configuring the UI is pretty straight forward as well, and if there is anything not available through the UI you can always dig into config files.
Some other features it's hard to browse without: global and per-site configuration of: blocked content, pop-ups, javascript, cookies, plugins, on demand plugins, images, custom layouts, .... edit: and back button actually works as expected
That's just a small subset of dozens of features I miss in other browsers. I don't use any of those extra apps (reader, mail, torrent, irc, ...) but they don't bother me either.
And what I miss in Opera? Switching tabs by their position (alt/ctrl+number in many tabbed applications). That's it. What bothers me is that many sites do not work properly or are completely blocked in Opera. The former is due to low market share of Opera, the latter is because people are dicks (hi google). Just write that it's not supported and I won't call your support line, don't make me change my user agent all the time (luckily I can configure this per-site :P).
edit: Totally forgot this but other comment pointed it out: Opera can handle a lot of tabs, no other browser I tried could do this: memory, performance and UI wise.
Screw it, I'll do a quick run. Depending on how good your computer is, Chrome will buckle (freeze your computer, in my case) sooner or later after you keep increasing the number of tabs, due to the one process per tab design flaw. That does not usually happen with Opera (unless you have some very demanding pages, which doesn't usually happen to me), it will keep going as long as you have the RAM to supply it. Right now opera:cpu shows me a round number of 115 tabs with 1.5 GB RAM usage, plus the plugin wrapper grabbing an additional 400 megs. Given that this particular computer has 12 GB of RAM I think it's very reasonable.
Of course, I don't have a rocket computer at home but the performance is very good as well on a mediocre laptop.
Now, what good does it do to have 115 tabs if you can't see them or switch between them at your wish? In Chrome you have one line of tabs that keep pushing against another, and at 115 tabs you could not select your tab properly, nevermind reading the tab title. In Opera I just configured my tab bar to wrap to multiple lines and aligned it vertically on the left side. I also have tab groups that work very nicely to minimize unnecessary clutter. I can also turn the tab bar off altogether and move between tabs with ctrl + tab or right mouse button + wheel, or hold ctrl + tab + mouse click.
The possibilities for customization are so numerous I can't be bothered to describe them all. Opera is a true browser and it has all these features out of the box without getting in your way.
You're a hacker? Where's your curiosity? Explore Opera's features (like mouse gestures, keyboard navigation, and so on) and see for yourself.
And by the way, one last thing. The default option for Opera is to restore your tabs from your last browsing session, which was not the case for Chrome and Firefox last time I checked (and if that didn't change it's retarded, although I would understand the reasoning, they don't want to encourage you to keep your tabs open because the browser might buckle under the pressure of 10 open tabs). So really, feel free to keep open as many tabs as you like.
You can also use ghostery (an extension) to block all these resource-consuming background scripts, just in case you have reached the limits of your hardware.
I have enable 'plugins only on demand', so no Flash player will be loaded without my explicit consent. Again, this is out of the box. Also, content blocker. And so on and so forth.
That's impressive, but I can't imagine having over 5 tabs open. It would be impossible for me to use that many at once.
I think it's a matter of habit. You can't use so many tabs if you don't have (at least) a multiline tab bar, preferably one aligned vertically.
Of course you need to use extensions while Opera does it all out of the box. I prefer being able to pick-and-choose features and I appreciate the rich playground for ideas of the Firefox extension ecosystem. If anything I wish Firefox did less out of the box.
I think I usually use only between 30 and 60 tabs, though it's easy to lose count with tree style tabs and I've certainly never hit a ceiling where things seemed to slow down. But maybe Opera really shines in super-heavy browsing loads. Even if that's true, "stuck in the stone-age" is just flamebait rhetoric.
Not so. Firefox and Chrome come out of the box with more or less the same features as Internet Explorer 6, which is stone-age browsing for me. Sure, you can add extensions and add-ons but they (at least for Firefox) slow down your browser, take time to set up (unless you use a portable version you carry everywhere with you), may be a security risk (as history has shown) and are nowhere near as refined as what Opera provides (I really disliked the All-in-one gestures add-on in Firefox, although you can still customize it until it somehow behaves like Opera's implementation, sort of). And really, Opera has so many features that I like it would take a very long time to have an identical setup for Firefox. Maybe someone should develop an 'Opera' extension.
> I prefer being able to pick-and-choose features
What does it matter if you don't use those features and they don't get in the way? For instance you have a torrent downloader embedded in Opera. I don't use it, I never see it, it does not slow down my browser. What is the problem?
> If anything I wish Firefox did less out of the box.
Really? Like what?
Chrome and Firefox have the option option to sync your extensions, as well as bookmarks etc. and settings. I just have to login to Chrome or Firefox on a new computer and it's pretty much identical.
Contrast that to Opera Link, which as far as I can find doesn't sync extensions or settings, so I'd have to configure it and change all the default settings I don't like.
I'm pretty darned sure IE6 doesn't have the ability to sync settings.
> "I prefer being able to pick-and-choose features and I appreciate the rich playground for ideas of the Firefox extension ecosystem."
Well sure, and Opera has extensions, too. It just does some things out of the box that you can't even do with extensions for other browsers, OR for which you have to pay the prices of longer startup and constantly checking for extension updates before starting up.
FF (and Opera, and all browser) extensions are great; as long as you don't have many dozens of them. Then you really really want those features done in core code, not in Javascript and what have you.
Our usages differ quite significantly. Why does that make Chrome stone-age?
"You can also use ghostery (an extension) to block all these resource-consuming background scripts, just in case you have reached the limits of your hardware."
Plugins that are available to pretty much every browser aren't a compelling argument for superiority (http://www.ghostery.com/download), just developer awesomeness. I notice that under Opera it says "/Almost/ full detection", so it's not even as fully featured as on other browsers.
If you're allowing plugins, I'm not sure I can think of a feature in Opera that you can't acheive in Firefox. But of course the argument is that Opera gives you all of them out of the box (whether you need them or not), in which case you can't use widely cross-browser plugins to try and bolster your argument.
"And by the way, one last thing. The default option for Opera is to restore your tabs from your last browsing session, which was not the case for Chrome and Firefox last time I checked"
I almost never want to restore the last session, and when I do Firefox and Chrome (and Opera if you change the default settings) give me the option to without forcing it upon me.
A lot of the defaults in Opera seem to be geared around managing a large number of tabs. I don't have a large number of tabs. I have a few windows with max. a dozen tabs each and I use bookmarks and other tools to manage things I want to keep around long term. I know lots of people who do the same. Yours and my use cases differ. That doesn't make Opera or Chrome or Firefox poorer, it just means different design trade-offs have been made.
Chrome's shortcut for 'reopen recently closed tab' is ctrl-shift-t. If you open a fresh browser window and do that, you get your tabs from the last session.
As a heavy user of both browsers, I can say for sure that all of the things you mention work as well or better in Chromium.
It's also funny to me that you tout Opera's customization ability, then deride the other browsers for having plugins. What's a plugin if not a convenient form of customization? It's even more funny because Chrome can be customized so much better than Opera. There's no Opera equivalent of Vimium, for example.
And "You're a hacker?" Well, Chromium is open source, it doesn't get more hacker friendly than that. Not that I care.
For me, it is several of the following reasons:
* mouse gestures.
* the speed dial.
* the ease to create custom url-bar searches.
* thumbnail images of tabs (to check a potentially nsfw link at work).
* in page link or text search using ',' or '.'
* the ability to search for links in the sidebar, and select all of them (e.g. to copy to a wget script, etc.)
* the ease to customize the content block.
... and probably other stuff, which doesn't come to mind.
Also, and this is important: I'm not trying to convince you here. Just pointing out that some will say the exact thing on the switch from Opera to Chrome, Firefox or Safari, with good reasons of their own. Whatever floats your boat.
Also, mind you, I have firefox and chrome installed. Firefox I almost never use, and chrome is useful to see shiny WebGL stuff, which has a lot more support. Sometimes also to see new CSS-demos that are broken in Opera (mostly because of lazy developers who don't include the -o- extensions).
It is the contrary on my computer: chrome is painfully slow, whereas firefox is OK and opera is faster. I guess opera is not the best for everyone.
It is (was some time ago at least) disabled by default in Chrome, Firefox and even on linux version of Opera.
Anyone has the same issue?
Edit: I've checked the w3 page - it is indeed for touch-enabled devices. Did you test it on a tablet/smartphone?
Now, with 12.0, identifying as Opera/Firefox still shows a blank page and identifying as IE just shows the widget headers and no feeds.
I reported it a couple months ago and have not received any follow-up at all.
So it got fixed. And I don't think they do follow-up unless they need you to reproduce the bug or something.
Now I’m not sure why you say it doesn’t work in Chrome at all. Because at least on my platform (OS X), it does, and it looks beautiful and hi-res.
There's an ugly workaround though - start Opera without internet connection and then reload tabs as needed.
Now Opera is ditching widgets and unite to focus on extenions.
Sure hope the page based css goes to the limbo.