73: Opera: A proprietary software company doing open source right

I also thought of calling this episode of our Four Freedoms podcast series "The interesting journey of a company producing proprietary software being involved in an open source project," ... not so catchy. Or maybe "Why business and openness do not have to be enemies." The point is that on February 12, 2013, Opera Software announced that it was dropping its own, proprietary rendering engine in favour of the open source WebKit engine. I wanted to know more about that decision and the consequences going forward. What I discovered is a company with a commitment to open standards, knowledge sharing, liberal licensing, and a long-term history of actions to back those claims up.

This podcast is roughly half of a wide-ranging and interesting conversation I had with with Bruce Lawson and Andrea Bovens from Opera Software at the 2013 Mobile World Congress in Barcelona. This was recorded on February 26, 2013 on the trade show floor. The recording quality suffers somewhat from the background noise of the other 63,000 people who were at the MWC with us. I couldn't get them to be quiet.

About my guests

Bruce Lawson is in the Developer Relations Department and the Web Standards Department at Opera Software. His elevator pitch: "I evangelise using open standards on the web." Bruce co-wrote the very first book on HTML5 with Remy Sharp: Introducing HTML5, published by New Riders. Contact Bruce at [email protected]. Follow him on Twitter @brucel.

Andreas Bovens, with Opera since 2007. QA Engineer, then Web Evangelist. Since 2009, Group Leader Developer Relations, also Web Standards Group and Product Manager for Opera extensions. You can contact Andreas at andreas[email protected]. Follow him on Twitter @andreasbovens.

"The web isn't just a mechanism for looking at pictures of kittens"

While we were teasing out the interesting position Opera Software occupies as a proprietary, commercially successful software company that also makes large contributions to web standards, freely licensed online learning materials, and software libraries, Bruce pointed out that the Opera browser, despite being proprietary software, also affects social change and benefits people in developing countries around the world: "I believe that we affect social change using our proprietary engine and will continue to do so with open source. Tens of of millions of Opera users would have no access to the web without [Opera products] because they run on ancient feature phones that are the only things affordable in certain developing economies. The web isn't just a mechanism for looking at pictures of kittens. For many people, the web browser is access to a doctor or medical advice. It is access to the outside world in a closed-off regime. It is a school when you can't afford one. That to me is what we do. That is why I love working for Opera, because we literally bring that about for tens of millions of people every day."

Open wins the web

The old way people thought things would work was to "win the web" with proprietary formats, markup, and more. Internet Explorer and Netscape tried to do that in the early 2000s by "embracing, extending, and extinguishing" ... There was markup and functionality that was browser-specific, some websites only worked in a specific browser. Opera had to create its own, proprietary rendering engine, called "Presto", "to prove that we could be commercially successful using and evangelizing open web standards." This paved the way for using open source, standards compliant code and being commercially successful at the same time. Though it seems commonplace today – thanks to examples like Firefox, Google and many others beyond the world of web browsers (Red Hat, Acquia, Drupal shops galore) – it was a radical idea at the time. Today we can say 'open wins the web.'

"We took the decision that rather than paying engineers to maintain feature parity with other rendering engines," says Bruce, "It seemed to be to us a much better way of using our resources (and to motivate our engineers), to take this open source rendering engine [WebKit], which is great, and then divert those engineers to do really cool sh*t ... fascinating, innovative stuff, rather than constantly playing platform parity."

Giving back from day one

"The day we announced the change, February 13th [ed: fwiw the announcement is dated Feb. 12, 2013], we submitted a small but symbolic patch to WebKit." Bruce describes the patch as being in the "esoteric areas of CSS multi-column support." :-) "It was a small thing, but we wanted to send that message to the WebKit community that we are investing in it as well as using it."

Interestingly, the suggestion to move to WebKit came from engineering and was taken to management. The business case was obviously compelling enough in terms of efficiency and employee motivation that it was accepted and implemented. The old paradigm ("embrace, extend, extinguish") would have held that owning the code, the intellectual property of the rendering engine, would give competitive advantage and that losing control would be dangerous. Now, the ability to innovate faster and concentrate on differentiation wins the day.

Broad adoption is not a monoculture

Following the February 13th announcement, there was criticism that joining WebKit meant that Opera was fostering a monoculture on the web. I don't think those critics are familiar with how things work on the open source side of the fence. Bruce points out that you have, "Competitors working together on HTML5, CSS, [Webkit, Drupal,] sitting down and agreeing stuff that they all take and then ruthlessly compete with. When you have RIM, Nokia, Adobe, Apple, Google, Opera all working together [on WebKit], it's unlikely that there's going to be any one organisation controlling it."

This is a lot like Apple and Samsung cooperating on chip development, but offering competing smart phones. Another example is Sony Music and Warner Brothers Records both contributing and improving Drupal code (Fivestar Module is the classic example) that they need for musician websites, but still competing in their actual area of business: the music marketplace.

Interoperability is key

Bruce continues, "What is obvious to us now is that nobody uses just one browser. My wife uses IE at work, Safari on her iPhone, and Opera on the home computer. It is crazy if a website only works on one or two of those browsers. Not only is it crazy from a business perspective – knocking out a section of people who want to do business with you – but it is also obviously rubbish for a consumer. That was less apparent on 2004. It is obvious in 2013. HTML 5 was designed to guarantee interoperability between browsers. The rendering engine is commoditised."

"If there's a benefit to other people, why not make this stuff open?"

Here are a few of the ways Opera Software has contributed to making the web a better, more standardised place and led the way with open practices. I am in no way affiliated with Opera Software. This list is so long because I was deeply impressed by how Opera operates:

  • Opera Dragonfly, the Opera developer tools have always been open source.
  • Materials on dev.opera.com are under a Creative Commons license.
  • Opera has released Javascript libraries, and documentation under liberal licenses, often only asking for attribution.
  • HTML5Doctor.com was used by the W3C to work on and improve the HTML5 specification. Opera Software supported Bruce Lawson's work on it.
  • Webplatform.org ("Your web, documented."): Opera developed a web standards curriculum as an article series that now comprises more than 50 self-study modules. Since it was liberally licensed, it became part of webplatform.org. Opera Software employee Chris Mills gets 50% of his work time at Opera to work on webplatform.org with the W3C, Mozilla, Google and others.
  • Bruce Lawson also worked with Drupalists team to put together the Drupal HTML5 base theme, Boron (hurray!).