There was a talk at the Web 2.0 Expo Tokyo last Friday afternoon by Håkon Wium Lie, chief technical officer with Opera Software. He has been working on the Web since the early nineties, and is well known for his foundational work on CSS. Opera is headquartered (and Håkon is based) in Norway.
Håkon (pronounced “how come”) started by talking about the Opera browser. Opera has browsers for the desktop, for mobiles and for other devices (e.g., the Nintendo Wii and the OLPC $100 laptop). He thinks that the OLPC machine will be very important (he also brought one along to show us, pictured), and that the browser will be the most important application on this device.
Another product that Opera are very proud of is Opera Mini, which is a small (100k) Java-based browser. Processing of pages takes place via proxy on a fixed network machine, and then a compressed page is sent to Opera Mini.
He then talked about new media types on the Web. Håkon said that video needs to be made into a “first-class citizen” on the Web. At the moment, it takes a lot of “black magic” and third-party plugins and object tags before you can get video to work in the browser for users. There are two problems that need to be solved. In relation to the first problem – how videos are represented in markup – Opera proposed that the <video> element be added to the HTML5 specification. The second problem is in relation to a common video format. The Web needs a baseline format that is based on an open standard. Håkon stated that there is a good candidate in Ogg Theora, which is free of licensing fees, and in HTML5 there may be a soft requirement or recommendation to use this format. He showed some nice mockups of Wikipedia pages with embedded Ogg videos. You can also combine SVG effects (overlays, reflections, filters, etc.) with these video elements.
He then talked about the HTML5 specification: the WHAT working group was setup in 2004 to maintain HTML, and a W3C HTML working group was also established earlier this year. HTML5 will include new parsing rules, new media elements, some semantic elements (section, article, nav, aside), and also some presentational elements will be removed (center, font).
Håkon next described how CSS is also evolving. As an example, he showed us some nice screenshots from the css Zen Garden, which takes a boring document and asks people to apply their stylesheets to change the look. Most of them use some background images to stylize the document (rather than changing the fonts dramatically).
CSS has a number of properties to handle fonts and text on the Web. Browsers have around ten fonts that can be viewed on most platforms (i.e., Microsoft’s core free fonts). But there are a lot more fonts out there, for example, there are 2500 font families available on Font Freak. Håkon says that he wants to see more browsers being able to easily point to and use these interesting fonts. In CSS2, you can import a library of fonts, and he reiterated his hope that fonts residing on the Web will be used more in the future.
Another use for CSS3 is in professional printing. Using the Prince tool, Håkon has co-written a book on CSS using CSS3. CSS3 can allow printing requirements to be specified such as multiple columns, footnotes, leaders, etc.
He then talked about the Acid2 test. Acid2 consists of a single web page, and if a browser renders it correctly, it should show a smiley face. Every element is positioned by some CSS or HTML code with some PNGs. Unfortunately, Internet Explorer performs worst in this test. But I also tested out Firefox 2 and got something distorted that looked like this.
The last thing he talked about was 3D. He gave a nice demo of Opera with some JavaScript that interfaces with the OpenGL engine to render a PNG onto a cube and rotates it. He also showed a 3D snake game from Opera (only a hundred or two lines of code), which is available at labs.opera.com.
I really enjoyed the forward-looking nature of Håkon’s presentation, and said hello briefly afterwards to say thanks for Opera Software’s (via Chaals and Kjetil) involvement in our recent SIOC member submission to the W3C.