Håkon Wium Lie - CSS, WebM & Opera's Need For Speed

#-Link-Snipped-#
He was first one to propose the concept of Cascading Style Sheets (CSS) - that power almost every web page on the Internet. He is obsessed with speed and works on making the fastest web browser on Earth even faster. He is also working on Web Fonts & WebM project. He is none other than - HÃ¥kon Wium Lie - The Chief Technology Officer, Opera Software. We are proud & honored to have Mr. HÃ¥kon Wium Lie on CE to talk about his awesome work till date and share experiences. Have a look -

CE: In 1994, you proposed the concept of CSS. Tell us what made you think about CSS?

Håkon: There was one big problem. In 1994, authors started to discover the web. They typically came from a world of desktop publishing where they had full control over fonts and typography. In HTML they found a language that expressed structure and semantics, but not presentation. However, authors soon discovered that they could control the presentation of their content by making images of text — just like fax machines do. This would get authors the fonts and colors they wanted, but it would greatly reduce the usefulness of the the web; a web of images could look good, but we would not have had search-able, printable and machine-readable documents.

CSS was #-Link-Snipped-# to stop this downwards slide. By offering authors a way to express the presentational preferences for the various HTML elements, CSS encourages authors to use HTML. As such, the main purpose of CSS was to save HTML.

Also, I proposed CSS because I like beautiful typography. Aesthetics must not be disregarded. In my youth, Steven Levy's Hackers Heroes Of The Computer Revolution was a source of inspiration. It famously includes the Hacker Ethic which states: «You can create art and beauty on a computer». CSS has become a tool for creating art and beauty on many computers.

CE: Could you tell us more about your work at CERN & working with Tim Berners-Lee & Robert Cailliau?

HÃ¥kon: CERN was a truly amazing place for me. I shared office with Tim (and Henrik Frystyk Nielsen), and had long lunch discussions with Robert. Both of them impacted the early design of CSS. You can find Robert's minimalism in there, as well as Tim's sense of syntax. When Tim left CERN for MIT, he also created a new #-Link-Snipped-#: namely the World Wide Web Consortium (W3C).

CE: What brought you to Opera?

Håkon: CSS. Before I came to CERN, I worked for Norwegian Telecom Research. I worked in a group that stumbled across the web in 1992. We were very exited when Mosaic came along in 1993, but some of us thought we could do better. I was not among them; I argued that only Americans could do software. Fortunately, Jon and Geir — the founders of Opera — didn't listen to me and started developing a better browser as I was leaving for CERN in 1994. In 1998, when Netscape and Microsoft had struggled for years to implement CSS correctly, Opera came along with a superior implementation. I said «wow» and returned to Opera and my native Norway.

CE: Opera is smaller & faster than its competitors. What makes this possible?

HÃ¥kon: When joined Opera we were 10 people. We didn't have the money to hire hundreds of programmers. We had to be very smart and resource-conscious in order to compete with Netscape and Microsoft. This reality was reflected in our code, which remains lean and clean to this day. Therefore, we have been able to port Opera to just about anything with and on/off switch. In the history of computing, I don't think you can find another application that has been ported to more operating systems than the Opera browser.

CE: Could you give us technical insights on how do you make opera the fastest browser on the planet?

Håkon: Let me give you two current examples. JavaScript is the programming language of the web and improving JavaScript performance is important to enabling web applications. Opera 10.5 introduced our new Carakan JavaScript engine which is currently — there is healthy competition in this space — the fastest engine out there. Some of our smartest engineers are working hard to make sure this remains the case.

Another approach to increasing performance is compression. Opera offers compression in both mobile and desktop browsers. Opera Mini is a small client which runs on just about any mobile phone. It saves people time and money by compressing web pages up to 10x. The compression is done in server parks in well-connected places. A similar service, Opera Turbo, was recently introduced in Opera for desktop. Although many of us have fast connection most of the time, we also find ourselves in congested areas and over mobile connections where the bandwidth is limited. In such places, Opera Turbo can be much more important for performance than a faster JavaScript engine.

CE: How is Opera different from FF & Chrome at core?

HÃ¥kon: The rendering engine is the core of the browser. Opera develops its own rendering engine (called Presto) which is different from the one used in FireFox (called Gecko) and Chrome (called WebKit). Also, Microsoft have their own rendering engine in Internet Explorer. These are the four rendering engines that are used in modern browsers. I wish there were more. Different rendering engines have different characteristics, and competition between different rendering engines ensure that one vendor cannot control the web.

CE: How does Opera offer more support to modern standards than competitors?

HÃ¥kon: Web standards has always been core to Opera. Without web standards, it would not have been possible to create a browser in Norway, and web standards ensure that the web remains free and open to all. At Opera, we are investing huge efforts into both developing the web standards and to develop code to support the web standards. HTML5, CSS3, W3C Widgets, and SVG are among the specifications we focus on at the moment.

We're not alone, though. We collaborate with other browser vendors to develop the standards, and we compete with them to implement the standards. There is much more competition in the standards space now than some years back. Gecko and WebKit are also focused on standards and even Microsoft is coming around.

Opera can still offer something unique in this space. We are not tied to any specific operating system, and we offer Opera — and therefore support for standards — on more platforms than anyone else.

CE: Could you give us a brief overview of the web fonts project you're working on?

HÃ¥kon: Giving designers access to fonts was one of the motivations for creating CSS. CSS has many properties for fonts and in 1998 CSS2 offered authors a way to link to font files. Alas, webfonts were implemented differently by Microsoft and Netscape and the millenium passed without webfonts in use.

In 2005 I thought it was time to try again, and launched a campaign to make use of the #-Link-Snipped-#; there were thousands of free TrueType fonts on the web, but they could not be used in web pages. An #-Link-Snipped-# in #-Link-Snipped-# opened the eyes of many people.

Webfonts are now widely available. All browsers, bar IE, now support linking to TrueType/OpenType files. Also, W3C has launched a working group to develop a compressed encoding of TrueType/OpenType fonts called WOFF File Format 1.0 Submission Request to W3C; compression is good and commercial vendors are open to releasing their designs in this format.

Also, webfonts are supported by Prince - Convert HTML to PDF with CSS, a HTML-to-PDF-via-CSS converter. Prince is able to create some truly Prince - Sample Documents by fetching fonts, content, and style sheets from various places. I discovered Prince when Bert Bos and I wanted to #-Link-Snipped-#. (I also joined the board of YesLogic to ensure they fix my favorite bugs 😀

CE: Could you give us a brief overview of WebM <video> project, its status and future?

HÃ¥kon: Video is, like fonts, an important media type which hasn't had its rightful place on the web. We all have video cameras in our pockets, but we can't publish video in our home pages without resorting to markup voodoo. Therefore, in 2007, Opera #-Link-Snipped-# a simpler solution: the <video> element. Getting consensus around the <video> was quite easy. Getting consensus around the codec is much harder. The Theora project showed us how important it is to have an open codec, and Google came forward with VP8 which, along with Ogg Vorbis, forms the basis for the WebM format.

WebM is currently making its way into browsers and video authoring applications. I have high hopes for its future. Google is converting the YouTube catalog into WebM, and I think the greater Web community will embrace the openness of WebM.

CE: Opera has released the browser update implementing support for WebM, VP8 & HTML5. It's a golden feather in the Opera's hat. We would like to hear more about it from the man himself.

Håkon: I'm proud that Opera 10.60, with WebM support, has been released today. But must admit to not doing it all by myself. In fact, I haven't written a single line of C++ code while working for Opera — Opera has some fantastic programmers that are much better coders than me. I'm a thankful colleague.

CE: What will be your message to CEans?

HÃ¥kon: I'd like to challenge all crazy engineers out there to create some leading edge content. Start writing Packaged Web Apps (Widgets) - Packaging and XML Configuration (Second Edition), #-Link-Snipped-#, #-Link-Snipped-#, and WebM video. Here's #-Link-Snipped-# — I'm sure you can do better 😀

Replies

You are reading an archived discussion.

Related Posts

Have you ever wondered that what would happen to the person’s profile if he/she dies? The information about any person, his/her Facebook profile or the Blogger account can be preserved...
Very useful & informative article, Vik! 😀
CEans, It's a pleasure to announce that the inventor of the cellular phones, Mr. Martin Cooper will answer your questions. Here's your lifetime opportunity to ask questions directly to Mr....
CEans, Mr. Larry Bock is the Founder of Nanosys Inc.  He is a General Partner of CW Ventures, a $100M life sciences venture capital fund, and a  Special Limited Partner...
Have you seen the new offering by Google? It's a big release and it's called 'Google Instant'. G00gle Instant starts searching as soon as you start typing in the search...