Opera's developer blog covered web standards, browser features, and projects like Opera Unite, IndexedDB, and CSS will-change.
HN links it for Opera's web standards articles and technical history; commenters recall Opera fondly and discuss user agent strings and early video support.
Since you say you know html,css, then I think the easiest thing to do would be to learn javascript and jquery and get a github account. This will probably let you see results and start contributing to open source the fastest. Once you get good enough in js you can do some bug fixes for any of the tons of js projects on github and work your way in on that route. I'd say with any non web-centric language (i.e. c, c++, ruby, go, haskell)- especially since you don't know coding yet - your looking at a minimum of two years before you could start actively contributing to a project.
Here's some links to learn js/dom:
MDN: https://developer.mozilla.org/en-US/
Opera Developer Site: http://dev.opera.com/
Javascript Repos on github: https://github.com/languages/JavaScript (read the source!)
Also "javascript the good parts" by Crockford is a good javasceript book.
The "Opera Mini" mode renders webpages into a specialised format (OBML), so they function more like interactive images; I'd bet they finally implemented a OBML rendering/UX layer for iOS. "Opera Turbo" would be a standard iOS UIWebView except it routes your requests through a caching and optimisation server for smaller payload and quicker downloads.
Chrome on iOS renders in a UIWebView, too, and enables a similar "bandwidth saving proxy" technique by default which achieves similar results.
More about Opera Mini's compression, OBML (outdated but gives a good overview): http://dev.opera.com/articles/opera-binary-markup-language/
Sadly, I seem to only be able to install the previous version of the app which is a vastly different experience to the screenshots in the App Store. It might not have caught up to Australia's cache servers yet.
This is awesome.
Here is a link to the 3d web compass I built and submitted to Hacker News 3 years ago [1] (direct link to a demo @ [2]).
I also released a JavaScript library based on that research that may help others use web device orientation without needing to understand all the math involved [3]. That in turn is based on a primer I made for web developers @ [4].
I hope this helps others who want to use device orientation on the web to build web-based compasses, Virtual Reality and Augmented Reality experiences!
[1] https://news.ycombinator.com/item?id=4115768.
[2] https://richtr.github.io/Marine-Compass/
[3] https://github.com/richtr/Full-Tilt
[4] https://dev.opera.com/articles/w3c-device-orientation-usage/
My favourite javascript raycaster was P01's "Wolf5k" (http://www.wolf5k.com/) - a raycaster in 5k of Javascript: before there was any such thing as canvas! It worked using an obscure, two colour, but programable image format - .xbm files, now killed by the browsers, so it won't work anymore.
But there is a great article on the Opera Dev blog about how to build your own like the parent's: http://dev.opera.com/articles/view/creating-pseudo-3d-games-with-html-5-can-1/ (in fact, looking at the code it seems like this post is just a re-write of the Opera code by Jacob Seidelin - though it might me a coincidence)
> could anyone give an example of a modern application that checks against the user agent string?
Gmail. Google docs, every single page titled something demo, ... basically every other site. And it should die already. Browser vendors put up with it because there are thousands and thousands of sites that wouldn't work just because you have the wrong user-agent string and the web developer was incompetent. Great examples include Chrome's idiotic string[1] and Opera's version 9.80[2].
1. Discussed around.
2. http://dev.opera.com/articles/view/opera-ua-string-changes/
This article was useful and concise.
I urge web developers to consider the trade-offs when using CSS hardware acceleration. Properties like `will-change` or `transform3d` substantially increase the client device's energy usage. This has battery-life implications for users on portable devices such as laptops, tablets, and mobile phones. As with any other feature, ask "why" before "how" when prioritizing interactive motion in your webapp.
More info: https://dev.opera.com/articles/css-will-change-property/