Eyes Above The Waves

Robert O'Callahan. Christian. Repatriate Kiwi. Hacker.

Tuesday 19 March 2013

Why I Work

Recently Pascal Finette quoted Tom Chi as saying:

When you come home from your job in the evening and pretty much all you want to do is slouch on the sofa, watch a movie and have a beer: Quit your job.

There have been many times when that's all I've wanted to do. Does that mean I should quit my job? No.

Before I worked full-time on Mozilla code, my job was computer science research. I'd have to say that was more fun and intellectually stimulating than my job at Mozilla. Does that mean I should quit my job? No.

I work at Mozilla because I think God gave me talent to use for the maximum good of all, not for self-gratification. I work at Mozilla because it's the most important work I can imagine doing. And it's not just me; one of the great things about Mozilla is that many, if not most, of its people have a similar kind of motivation. Mozilla is full of very smart people who have spent years dealing with difficult and frustrating problems, often turning down lucrative offers to do other things, because they believe in what we do. I love them for it.

It would be nice if important tasks were always exciting, energizing and exhilarating. But real life just isn't always like that. Making Flash less painful for our users, or tracking down bizarre graphics driver bugs, or struggling to convince megacorporations to do the right thing, is just draining.

However, it's important to keep a sense of perspective. Most of us are paid ridiculously well to do a job which is generally less stressful or challenging than many other kinds of work. If we make a few small sacrifices, no-one should be overimpressed.


Franklin Chen
Rob, a timely post at a moment when I just switched back to Firefox from its main competitor over the weekend because I want to support "doing the right thing" (I had switched out of Firefox a year or so ago because it had suddenly become unusable for a certain period of time, but it seems to be functioning for me now, and I appreciate the work you and others put into keeping the Web open.
Dirk Schulze
Wouldn't it be more useful for the web to do "the right thing" at the competitor of Firefox? What does it help the author and the web in general if just Firefox benefits of it? This is of course a controversy reply. Your response seemed to imply that just Mozilla tries to do the right thing. In fact, we all do. Even corporations and foundations like Microsoft, Mozilla, Opera, Apple, Google, Adobe, IBM and dozens of others do. But we all have different perspectives, different interests and different backgrounds. Sometimes these lead to different directions we go. That doesn't mean that someone is doing "the right thing" and someone else is doing "the wrong thing". What matters at the end is to keep the web platform successful, interoperable and accessible. I agree that this is best served with open standards. Even that is just one opinion and maybe just one way to reach this goal.
Dirk, I think Mozilla really is different --- to Microsoft, Google and Apple at least. At Mozilla our mission is more important than our products. Our products only matter to the extent that they help us to achieve our mission. Sometimes we have to do things for the sake of the open Web that actually hurt our products. You don't see Microsoft, Google and Apple doing anything for the sake of the open Web that could damage their products or reduce their market share. The H.264 debacle is a great example: we avoided supporting it because we think the Web needs unencumbered codecs, knowing we would take a hit. On the other hand Google said they would follow suit in Chrome, but mysteriously never did.
Dirk Schulze
And Mozilla said that they never would support H.264 as long as not all open source application can benefit of it. Yet Firefox does on Android (soon on Windows as well), by "relying" on the codec support of the operation system. Even Mozilla needs to make compromises for it's own applications. I do not judge that, because it is better for the web. I do not question that Mozilla does want the best for the web. And I really appreciate that. That does not mean that other partners of Mozilla are not nobel as well. Even if certain products are driven by the companies interest, most products are driven by the customers of these companies. The customers are the web users. What can be better for the web to fulfill customers needs in combination with royalty free web standards? These contributions are a huge benefit for the web. Ask your self: Who did a lot of innovations and gave them royalty free to W3C and Khronos? Companies like Microsoft, Apple and Google.
You can't equate Google's position with ours. We put skin in the game and took damage in the hope of promoting unencumbered codecs on the Web. Google said they would, but didn't. We changed our position only because it wasn't producing any benefit for the open Web (which is partly because Google didn't follow through on their promises). "What can be better for the web to fulfill customers needs in combination with royalty free web standards?" Unfortunately, simply pleasing customers and grabbing market share does not necessarily lead to a good result for the open Web. For example, promoting free Web games that only work in one browser (e.g. http://www.ibtimes.com/angry-birds-wonderful-pistachios-launch-new-game-377254) pleases customers but isn't good for the open Web. I know a lot of people who work for our competitors care deeply about the open Web and work hard for it, and that's great. But their employers have nothing like the dedication to it that Mozilla has.
Dirk Schulze
I don't equate Google's position with the one of Mozilla. I just said that Firefox will (at least indirectly) support H.264 against it's mission in favor for it's browser. With the exception of some platforms on the mobile market, users can choose their browser. This is a free choice. Users take their choice why IE is not the dominating browser on Windows anymore and Safari not on Macs. Web users used their possibility with choosing Firefox and Opera first, Chrome later. That free games unnecessary require certain platforms is a problem with exclusivity. We have it in a lot of areas outside the web. It indeed does not help the open web. The fact that they can/could work on all platforms is important. But which technologies do they use? Who invented them? Why have they been invented? The answer for most of these technologies is comercial companies to please their customers. Canvas? CSS Transforms? CSS Transitions? CSS Animations? SVG? WebGL? WebCL? Masking? Blending? WebRTC? even JavaScript? All heavily used or on the way to be used. All of these technologies are important for the web platform, all are more or less important for gaming and communication, all are open for the web - and all are coming (or came) from comercial companies (with the assumption that Mozilla Corp does not have any commercial interest). Mozilla's mission is more important than the products it ships? Maybe. Maybe Mozilla is just focused on the open web. For the companies mentioned above, this is often just one of many goals with the main goal to please customers. Is pleasing customers bad? I don't think so. I tend to believe that this is what the web drove forward 20 years ago, is driving it forward and will drive it in the future.
Dirk Schulze
In the last comment it may sound like I am questioning Mozilla's mission or even questioning that Mozilla follows the mission to open the web. This is not the case. Not only do I have deeply respect to Mozilla's mission, I strongly support it and appreciate all the work Mozilla is doing.
You'll notice that in the case of CSS transforms, transitions and animations, Apple created some cool stuff, shipped it behind a webkit prefix, and then did very little to help them get turned into real interoperable specs ... David Baron had to take it over. Despite being the richest company on earth they couldn't justify hiring a single Web standards person to help do that. Which makes sense for them, because shipping features to customers is much more important than the open Web to Apple. Companies' main goal isn't even to please customers; it's to make money. That's actually fine, but it's foolish to assume the profit motive (or pleasing customers) alone will lead to a thriving open Web.
Dirk Schulze
To clarify: David does a great job on Transitions with contributions of Dean Jackson (Apple). For Animations most of the editing work is/was done by Sylvain Galineau (MS at that time) and Dean Jackson (Apple). For Transforms it is Dean Jackson (Apple), Simon Fraser (Apple) and me. It is true that Apple shipped these technologies prefixed quite early. But prefixed properties are another topic. However, the initial drafts for all the named specifications were written and submitted by David Hyatt (Apple) and Dean Jackson (Apple) with contributions from Edward O'Connor (Apple) and Chris Marrin (Apple) before or while they shipped it with a release product. I do not see a reason to blame Apple for these specifications in any way. This is maybe different with CSS Masking (which is just getting formalized to a specification), CSS reflections, background masking and background compositing. All supported for years by WebKit but never specified. That doesn't mean that these technologies are proprietary. They can be adapted by any other browser. The source code of WebKit is as open as the one of Gecko. And it doesn't seem to be different from Mozilla techniques that never have been specified like multiple borders, -moz-force-broken-image-icon, -moz-margin-start and -moz-margin-end, -moz-window-shadow and more. It was absolutely valid to experiment with new techniques at this time and still is. Some of them might never be specified or might be to irrelevant to specify. That is the way it is.
You can't ignore the fact that Apple created draft specs for these features and then their editors spent years ignoring all feedback. Dean even apologized for it. (Nothing against Dean, I'm sure it was not his decision.) And these aren't experimental features. Apple evangelized use of these features in their marketing and documentation. Mozilla has never evangelized use of any of the stuff you mentioned --- most of them couldn't even be useful to authors. But yes, we're not perfect and we've let a few nonstandard things leak out. Anyway, that isn't really the point. Individual people at these companies do great work for the open Web. The point is that companies like Google, Apple and Microsoft have bigger priorities than the open Web.
Dirk Schulze
For sure these companies have bigger priorities than the open web. My point is just that the web still benefits by their contributions, even if they are done to please customers. These contributions may even made the web competitive to native solutions.
+1 Couldn't express it better. Thanks roc.
Patrick Finch
Terrific post, thank you. We're hardly martyrs, but doing difficult and tiring work which has outcomes I identify with is very important to me.
Franklin Chen
Rob, for your "amusement": a work colleague has recently been struggling with an incompatibility between WebKit-based browsers and Firefox, in which the WebKit browsers are doing the "wrong" thing. If he doesn't find a workaround, we may have to tell our users to get Firefox. Funny, that's what we did earlier when struggling with Internet Explorer!
Mario De Roma