<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Christopher Blizzard &#187; Google</title>
	<atom:link href="http://www.0xdeadbeef.com/weblog/category/google/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.0xdeadbeef.com/weblog</link>
	<description>I love you.</description>
	<lastBuildDate>Thu, 26 May 2011 20:29:33 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.4</generator>
		<item>
		<title>intellectual honesty and html5</title>
		<link>http://www.0xdeadbeef.com/weblog/2010/06/intellectual-honesty-and-html5/</link>
		<comments>http://www.0xdeadbeef.com/weblog/2010/06/intellectual-honesty-and-html5/#comments</comments>
		<pubDate>Fri, 04 Jun 2010 18:48:39 +0000</pubDate>
		<dc:creator>Christopher Blizzard</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Standards]]></category>

		<guid isPermaLink="false">http://www.0xdeadbeef.com/weblog/?p=2351</guid>
		<description><![CDATA[OK, this is the post that contains everything that everyone on the inside of the browser market knows, but doesn&#8217;t say out loud. It&#8217;s time for someone to expose the emperor. It&#8217;s a shame that the main victim here turns &#8230; <a href="http://www.0xdeadbeef.com/weblog/2010/06/intellectual-honesty-and-html5/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>OK, this is the post that contains everything that everyone on the inside of the browser market knows, but doesn&#8217;t say out loud.  It&#8217;s time for someone to expose the emperor.  It&#8217;s a shame that the main victim here turns out to be Apple, given that the king of these tactics is Google, but hey, Apple managed to come out with something that was so brash and misleading it deserves a good tear-down.  (Google at I/O managed to take native client and the Chrome Store and make it all sound like it was part of html5 &#8211; it was beautiful.  But that&#8217;s for another post on another day.)</p>
<p>First, let&#8217;s start with the awesome dichotomy.  You start with this:</p>
<p><a href="http://www.apple.com/html5"><img src="http://www.0xdeadbeef.com/weblog/wp-content/uploads/2010/06/web-standards-marketing.png"/></a></p>
<p>My god, what a beautiful thing.  <em>They are the web.</em>  I love that.  I could have written it myself.  I <em>should</em> have written it myself.</p>
<p>That classic Apple dark headline and light grey subtext that everyone loves.  And the text: standards, CSS, JavaScript, web designers, puppies and rainbows.  Who could possibly disagree with that?  From a marketing perspective, it&#8217;s beautiful &#8211; non-specific, feels good, it means that Apple loves the web, and loves you.</p>
<p>But how do they prove it?</p>
<p><img src="http://www.0xdeadbeef.com/weblog/wp-content/uploads/2010/06/safari-only-fuck-you.png"/></p>
<p>That&#8217;s right.  If you&#8217;re not on Safari, then <em>Fuck You.</em></p>
<p>Aside from the incendiary language I&#8217;ve used to help you understand how it feels the real underlying message here is that if you don&#8217;t have access to Safari then you must not have access to HTML5.  <em>Wait, only Safari supports HTML5??</em></p>
<p>Nope, lots of browsers do.  A huge percentage of the world <em>does</em> have access to standards like HTML5.  Today.  In fact, given the page <em>says</em> html5, you might ask, who has the best html5 support across the browsers right now?  Not Safari.  Not Chrome.  The browser that also happens to have a lot of market share &#8211; Firefox:</p>
<p><a href="http://caniuse.com/#agents=All&#038;eras=All&#038;cats=HTML5&#038;statuses=rec,pr,cr,wd,ietf"><img src="http://www.0xdeadbeef.com/weblog/wp-content/uploads/2010/06/caniuse-summary.png"/></a></p>
<p>(The best overall site that gives you useful information for this stuff is actually one that a lot of people don&#8217;t use, but should: <a href="http://caniuse.com/#agents=All&#038;eras=All&#038;cats=HTML5&#038;statuses=rec,pr,cr,wd,ietf">caniuse.com</a> lovingly maintained in his own time by <a href="https://twitter.com/Fyrd">Alexis Deveria</a>)</p>
<p>Of course, the big problem is that html5 has come to mean a lot of things, mostly thanks to Google.  They&#8217;ve basically been riding that and flogging it and making it their own.  (That and performance &#8211; simple, great marketing messaging.  I appreciate it, even if the dishonesty of it makes my blood boil.)  </p>
<p>And I&#8217;m sure that this entire apple site is a result of <em>exactly</em> the same problem we&#8217;ve been struggling with at Mozilla as of late.  This is best described by a recent experience that we had from a candidate that came in to interview.  He asked:</p>
<blockquote><p>
Hey, are you guys ever going to support html5?
</p></blockquote>
<p>Like, what?  Are you fucking <em>kidding</em> me?  Truth that marketing works.  The perception-to-reality gap is <em>giant</em>.</p>
<p>I&#8217;m sure this was Apple is having exactly the same problem.  Basically they are saying internally &#8220;omg, no one thinks we support html5, we need to prove them otherwise!  We&#8217;ll put up tests!  Demos!  The world will then know and we can go back to being perceived as actually leading the WebKit project which is also made of puppies and rainbows!&#8221;</p>
<p>So you end up with sites like this.  Sites that entirely miss the point of the web, interoperability, standards and html5.  The demos that they put up are just filled with stuff that Apple made up, aren&#8217;t part of HTML5 and are only now getting to the standards process.  Part of CSS3?  Kind of, sort of, but under heavy development and still in a feedback process.</p>
<p>Let me be clear.  I&#8217;m being snarky here essentially to get your attention.  Because this is actually important.  And if there&#8217;s one paragraph you should read here it&#8217;s this one:</p>
<p>The most important aspect of HTML5 isn&#8217;t the new stuff like video and canvas (which Safari and Firefox have both been shipping <em>for years</em>) it&#8217;s actually the <a href="http://hacks.mozilla.org/2010/05/firefox-4-the-html5-parser-inline-svg-speed-and-more/">honest-to-god promise of interoperability</a>.  Even stodgy old Microsoft, who has been doing their best to hold back the web for nearly a decade, understands this and you&#8217;ll see it throughout their marketing for IE9.  (Their marketing phrase is &#8220;same markup&#8221; &#8211; watch for it and you&#8217;ll see it everywhere in their messaging.)  The idea that the same markup, even with mistakes, will be rendered exactly the same.  HTML5 represents the chance for browsers to work together and find common ground.</p>
<p>Before people misunderstand me, this is different than the question of how <a href="http://http://www.0xdeadbeef.com/weblog/2010/04/innovation-in-browsers/">we innovate in browsers</a>.  Standards are part of that process, but standards follow more often than lead.  HTML5 contains lots of new stuff that isn&#8217;t in IE, so it looks innovative, but most of HTML5 is like breathing to Mozilla.  We&#8217;ve been doing that stuff for years.  We&#8217;re more interested in what&#8217;s next at this point.</p>
<p>But it&#8217;s unfortunate, and I guess inevitable, that browsers would compete on how much html5 they are bathed in.  But it&#8217;s important to ask: when you see someone making a claim, what does it really mean?  Is that a made up test by a vendor?  A demo of something that goes well beyond the standards that exist?  (Tons of room for that, <a href="http://hacks.mozilla.org/2010/06/beyond-html5-database-apis-and-the-road-to-indexeddb/">but it should be labeled as such</a>!)  Is it a test that is designed to show off other browser&#8217;s bugs in a meaningful and constructive way?  Does the person running the tests know what they are doing and respond to constructive comments?</p>
<p>Apple&#8217;s messaging is clearly meant to say &#8220;hey, we love the web&#8221; but the actual demos they have and the fact that actively block other browsers from those demos don&#8217;t match their messaging.  It&#8217;s not intellectually honest at all.</p>
<p>Since you made it this far I&#8217;ll make a promise.  I can&#8217;t go back and fix the past, but I can help propose a new future.  I personally end up driving a lot of the messaging that comes out of Mozilla (although maybe I won&#8217;t be after this post!)  I promise that:</p>
<ul>
<li>I&#8217;ll be as honest as I can be about what we&#8217;re doing, what it means to other browsers and even to the new darling brand of the web: html5.</li>
<li>I&#8217;ll work to make sure that demos that Mozilla does work in as many browsers as possible, even with graceful fallback.</li>
<li>Demos or messages that are meant to show off stuff that&#8217;s not part of any standards process at all will be labeled as such.</li>
</ul>
<p>HTML5 is in a dangerous place since everyone wants to own it, but everyone is in a different place in terms of support or even what it means.  I can&#8217;t promise what other organizations will do, but I can at least say what I will do in the future.  At Mozilla, intellectual honesty matters and it matters to me personally.  So I don&#8217;t think you&#8217;ll see us do things like this in the future.  To us, the web and its users matter more than any particular standard or browser.  And you&#8217;ll see that reflected in messaging that comes from me and shows up as marketing.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.0xdeadbeef.com/weblog/2010/06/intellectual-honesty-and-html5/feed/</wfw:commentRss>
		<slash:comments>213</slash:comments>
		</item>
		<item>
		<title>my thoughts on google&#8217;s 3d experiment</title>
		<link>http://www.0xdeadbeef.com/weblog/2009/04/my-thoughts-on-googles-3d-experiment/</link>
		<comments>http://www.0xdeadbeef.com/weblog/2009/04/my-thoughts-on-googles-3d-experiment/#comments</comments>
		<pubDate>Wed, 22 Apr 2009 00:52:11 +0000</pubDate>
		<dc:creator>Christopher Blizzard</dc:creator>
				<category><![CDATA[3D]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Open Web]]></category>
		<category><![CDATA[OpenGL]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[Standards]]></category>

		<guid isPermaLink="false">http://www.0xdeadbeef.com/weblog/?p=1223</guid>
		<description><![CDATA[Google has announced the availability of a plugin that implements 3D technology and makes it available over the web. You can read about the announcement in in the Google Code Blog and in an excellent article by Ryan Paul in &#8230; <a href="http://www.0xdeadbeef.com/weblog/2009/04/my-thoughts-on-googles-3d-experiment/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Google has announced the availability of a plugin that implements 3D technology and makes it available over the web.  You can read about the <a href="http://google-code-updates.blogspot.com/2009/04/toward-open-web-standard-for-3d.html">announcement in in the Google Code Blog</a> and in an <a href="http://arstechnica.com/software/news/2009/04/google-releases-3d-graphics-plugin-for-browsers.ars?utm_source=microblogging&amp;utm_medium=arstch&amp;utm_term=Main%20Account&amp;utm_campaign=microblogging">excellent article by Ryan Paul in Ars Technica</a>.</p>
<p>Ryan points out that there are significant differences between what Google has built here and what <a href="http://blog.vlad1.com/2009/03/28/canvas-3d-extension-update-2/">we&#8217;ve built</a>.  I thought it might be worth it to expand on that a bit since it isn&#8217;t explained in depth in the Ars article.</p>
<p>Google&#8217;s 3D work is a plugin.  So much like how Flash or Silverlight works you get a rectangle in the browser to draw into.  They provide a <a href="http://code.google.com/apis/o3d/docs/techoverview.html">high level scene graph API</a> which uses the <a href="https://collada.org/mediawiki/index.php/Main_Page">COLLADA</a> format for loading objects underneath.  It&#8217;s a very large chunk of code.  If you take a look at the <a href="http://code.google.com/apis/o3d/docs/reference/index.html">API</a> and click around at the packages and classes you can see that there&#8217;s a lot there.  Their use case is games and game-like things &#8211; virtual worlds.  So it&#8217;s a great piece of work, but it&#8217;s also at a very high level.</p>
<p>Mozilla&#8217;s current proposal to Khronos is a very <a href="http://people.mozilla.com/~vladimir/canvas3d/docs/glweb20binding.html">simple API</a> that&#8217;s a wrapper around OpenGL ES 2.0.  It&#8217;s currently available as an extension to Firefox 3.5 and is likely to be rolled into a version of Firefox after 3.5.  The proposal is very focused on 3D.  For example, we didn&#8217;t try to include video or audio because those are being covered by other web standards and we&#8217;re interested in making sure they are well integrated instead of trying to wrap those into a 3D spec.  We&#8217;ve bound it to the canvas element so you can use it in much the same way you use the current canvas 2D context.  Things like asset loading (via COLLADA or other systems) are things we haven&#8217;t dealt with because those can be handled entirely outside of the 3D api and layered on top of it.  (Later in this post you&#8217;ll understand why this is important.)  But the important thing is that it&#8217;s something that you can easily mix with the rest of the open web.  Open Video and Audio, CSS, HTML, Canvas 2D, Canvas 3D, etc &#8211; you should be able to mix them all together and that&#8217;s our goal.</p>
<p>So these two 3D things from Mozilla and Google are pretty different.  Not really competitive, either, because they have such different goals.  The Google software is a very high level API 3D graphics API and what we&#8217;re proposing is more akin to the low level graphics API that those high-level systems are built on.</p>
<p>Given the title of the google blog post (&#8220;Towards an open web standard for 3D graphics&#8221;) it&#8217;s important to point out these differences since they affect how the standards process might look, and what the output might be.  We&#8217;ve been through this a few times with different standards and it&#8217;s easy to point out what the key success factors are to build a successful standard.  Here&#8217;s a quick iteration on those principals in my mind:</p>
<p><strong>1. It&#8217;s important to keep the scope as small as possible.</strong></p>
<p>The smaller the scope of the standard, the easier it is to understand the interaction of the various parts, what your goals are and what it takes to build an interoperable implementation.  It&#8217;s also the easiest thing you can do to remain as future-proof as possible.  It&#8217;s easier to add new APIs later if your scope is very very small.</p>
<p><strong>2. Clear rules for interaction with the rest of content.</strong></p>
<p>How does it work with the rest of the HTML spec?  CSS?  Video?  Images?  How can you copy content in and out?  Can you use them as textures?  These are just some of the questions that you have to raise as a way to describe how something like this might work with content.  Once again, this is gated on #1 above &#8211; if the functionality is simple then the interactions can generally be pretty simple as well.</p>
<p><strong>3. Allow the scope to change slowly over time.</strong></p>
<p>Understanding that technology &#8211; especially on the web &#8211; does not exist in a vacuum outside of time.  Standards do change over time and understanding how people use technology in the real world is the best possible way to understand how something should change and improve.  Understanding that standards are an iterative process is important.  Note that in #1 above &#8211; controlling scope &#8211; I mention that it&#8217;s important to keep things future-proofed via small and simple APIs.  This is why &#8211; because you know that you will need to improve that API once you understand how people are using it in the field.</p>
<p><strong>4. Allow most of the innovation to happen next to and on top of your API.</strong></p>
<p>Last point &#8211; your standard should allow as much iteration and work to happen on top of your API as possible.  This allows you to learn as much as possible about how people are using your software and gives them huge amounts of freedom to experiment and teach you about what you need to improve in the next iteration.  If people are stretching your APIs and finding gaps in performance, you can add convenience APIs to make things faster &#8211; as long as they are simple APIs.  We saw this in the real world with the JS libraries (dojo, jQuery) &#8211; we&#8217;ve been optimizing our engines and APIs over time to assist them as they have pushed our browsers to the limits.  But we would not have known had we tried to implement everything that the libraries could have possibly done at the browser level.</p>
<p>OK, so those are the things that we think make for a successful standards process.  I&#8217;ll point out one particular example of a dichotomy that I believe illustrates these rules so that people understand what I&#8217;m talking about: Canvas vs. SVG + SMIL.</p>
<p>Canvas is a <a href="http://www.nihilogic.dk/labs/canvas_sheet/HTML5_Canvas_Cheat_Sheet.png" rel="lightbox[1223]">very simple API</a> (<a href="https://developer.mozilla.org/en/HTML/Canvas">more info</a>), much like what we&#8217;ve proposed to Khronos for 3D support.  It&#8217;s well-scoped, well understood and integrates very well with other web technologies.  And it&#8217;s been getting a huge amount of traction on the web.  People are writing all kinds of really neat technology on top of it, including useful <a href="http://vis.stanford.edu/protovis/">re-usable libraries for visualization</a>.  Have a look through Google&#8217;s own <a href="http://www.chromeexperiments.com/">promotional site for Chrome</a> &#8211; a huge number of them use canvas.  It has traction.  And we&#8217;ve gone through a couple of iterations &#8211; we&#8217;ve added support for text and a couple of other odds and ends once we understood what people were trying to do with it.</p>
<p>Now compare this to SVG and SMIL.  Each of those specs are multi-hundred page documents with very large APIs and descriptions of how to translate their retained-mode graphics into something that&#8217;s usable on the web.  (SVG 1.1 is a <a href="http://www.w3.org/TR/SVG11/REC-SVG11-20030114.pdf">719 page PDF</a>.  SVG 1.2 Tiny is <a href="http://www.w3.org/TR/SVGTiny12/REC-SVGTiny12-20081222.pdf">449 pages</a>.  The spec for <a href="http://www.w3.org/TR/2008/REC-SMIL3-20081201/smil30.html">SMIL</a> is a 2.7MB HTML file.)  We&#8217;ve seen some implementation of SVG and SMIL in browsers, but it&#8217;s been slow in coming and hasn&#8217;t seen full interoperability testing nor any real pick up on the web.  The model for these specs was wrong, and I think it shows.</p>
<p>So I&#8217;ve spent some time talking about the context for standardization and what makes standards successful.  How does this related to our stuff or Google&#8217;s stuff?  Well, quite a bit actually.  If we want something that browser vendors can easily implement, we need to understand that context and what we&#8217;re trying to standardize.  Much of the work that Google did happened before browsers got as fast as they have, so there&#8217;s a good reason why they felt that they needed to implement so much of the code as native code and deliver it as a plugin.  Their API is a good example of what a scenegraph API would look like on top of Canvas 3D.  JS engines have gotten a <em>lot</em> faster since they started their plug-in and we think that it&#8217;s time that we start using them.  Hence a low-level API that we can build on.</p>
<p>There&#8217;s a lot of great stuff going on with 3D on the web.  We&#8217;ll be working with Google (and others!) via the Khronos group to try and standardize on a low-level API that browsers can support.  It&#8217;s going to be a really fun year and I&#8217;m happy that we&#8217;re working to drive the web forward.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.0xdeadbeef.com/weblog/2009/04/my-thoughts-on-googles-3d-experiment/feed/</wfw:commentRss>
		<slash:comments>25</slash:comments>
		</item>
		<item>
		<title>performance, chrome, mozilla and tracemonkey</title>
		<link>http://www.0xdeadbeef.com/weblog/2008/09/performance-chrome-mozilla-and-tracemonkey/</link>
		<comments>http://www.0xdeadbeef.com/weblog/2008/09/performance-chrome-mozilla-and-tracemonkey/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 17:15:43 +0000</pubDate>
		<dc:creator>Christopher Blizzard</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Google Chrome]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Metrics]]></category>
		<category><![CDATA[TraceMonkey]]></category>
		<category><![CDATA[V8]]></category>

		<guid isPermaLink="false">http://www.0xdeadbeef.com/weblog/?p=704</guid>
		<description><![CDATA[So, V8. Well-hyped. It&#8217;s got a cool logo. And many claims are being made about its performance. But it is not the only kid on the block. As we blogged about a couple of weeks ago, Mozilla has been investing &#8230; <a href="http://www.0xdeadbeef.com/weblog/2008/09/performance-chrome-mozilla-and-tracemonkey/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>So, V8.  Well-hyped.  It&#8217;s got a cool logo.  And many claims are being made about its performance.  But it is not the only kid on the block.  As we blogged about <a href="http://weblogs.mozillazine.org/roadmap/archives/2008/08/tracemonkey_javascript_lightsp.html">a couple of weeks ago</a>, Mozilla has been investing over the last couple of months in a super-fast JS engine as well.
</p>
<p>
In terms of claims some members of the V8 team have been <a href="http://news.cnet.com/8301-17939_109-10030717-2.html?part=rss&#038;tag=feed&#038;subj=Webware">bragging a little bit</a> about how V8 is &#8220;many times faster&#8221; than TraceMonkey.  In fact, some <a href="http://www.iht.com/articles/2007/12/10/sports/football10.php"><i>guarantees</i></a> may have been made.
</p>
<div align="center">
<a href="http://weblogs.mozillazine.org/roadmap/archives/2008/09/tracemonkey_update.html"><br />
<img width="315" src="http://weblogs.mozillazine.org/roadmap/tm-v8-sunspider-totals.png"/><br />
</a>
</div>
<p>
Based on the data above, we&#8217;re running about 20% faster than V8 on SunSpider.  While I&#8217;m sure there will be changes to each of the engines in the coming months I think that the claim that &#8220;many times faster&#8221; is ludicrous on its face and should be tempered by actual data. [ Note that the Google test is recursion heavy, something we're adding to TraceMonkey right now.  This explains the gap on that one type of test.  See Brendan's post above or John's post below for more details. ]
</p>
<p>
It&#8217;s also important to realize another fact.  Google has had a small army of people working on the V8 engine for <i>two whole earth years.</i>  We&#8217;re about 60 days into TraceMonkey and we&#8217;re already starting to match the performance characteristics of V8.  As <a href="http://weblogs.mozillazine.org/roadmap/archives/2008/09/tracemonkey_update.html">Brendan put it</a>:</p>
<blockquote><p>
What spectators have to realize is that this contest is not a playoff where each contending VM is eliminated at any given hype-event point. We believe that <a href="http://andreasgal.com/publications/">Franz&#038;Gal-style tracing</a> has more &#8220;headroom&#8221; than less aggressively speculative approaches, due to its ability to specialize code, making variables constant and eliminating dead code and conditions at runtime, based on the latent types inherent in almost all JavaScript programs. If we are right, we&#8217;ll find out over the next weeks and months, and so will you all.
</p></blockquote>
<p>
If you want data across browsers you should look at this post from <a href="http://ejohn.org/blog/javascript-performance-rundown/">John Resig</a> that contains some graphics that give relative performance of various browsers including Safari, Firefox 3.0.1, IE, etc.  His overview is great and gives a much wider view of relative browser performance.
</p>
<p>
Also as a side note because I have your attention.  There are some bizarre and incorrect claims made in the comic about garbage collection.  <a href="http://ejohn.org/blog/javascript-performance-rundown/#comment-320194">Brendan puts things right as a comment in John&#8217;s post</a>:</p>
<blockquote><p>
@Ben: Chrome has a nice GC: exact rooting, generational with copying. Single-threaded, too (not an option for SpiderMonkey, which is used in AT&#038;T 1-800-555-1212 and 411 AVR massively multi-threaded services built by tellme.com, now owned by Microsoft!). It definitely helps cut down on pauses and keep memory use flatter.</p>
<p>The Chrome comic book did have one piece of misinformation, though: it said other browsers&#8217; engines use conservative GC, and have false positive problems because they can&#8217;t distinguish random integers from pointers into the heap. This is not true of Firefox, IE, or Opera.
</p></blockquote>
<p>
We do live in interesting times.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.0xdeadbeef.com/weblog/2008/09/performance-chrome-mozilla-and-tracemonkey/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
		</item>
		<item>
		<title>competing for an open (generative) web</title>
		<link>http://www.0xdeadbeef.com/weblog/2008/08/competing-for-an-open-generative-web/</link>
		<comments>http://www.0xdeadbeef.com/weblog/2008/08/competing-for-an-open-generative-web/#comments</comments>
		<pubDate>Mon, 11 Aug 2008 23:32:08 +0000</pubDate>
		<dc:creator>Christopher Blizzard</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Freedom]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[OGG]]></category>
		<category><![CDATA[Open Web]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://www.0xdeadbeef.com/weblog/?p=545</guid>
		<description><![CDATA[John Lilly pointed people at a really good article in the New York Times by John Markoff about the Olympics as a hook to get Silverlight onto people&#8217;s computers. It&#8217;s a good overview and is worth reading. The article covers &#8230; <a href="http://www.0xdeadbeef.com/weblog/2008/08/competing-for-an-open-generative-web/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>
John Lilly <a href="http://twitter.com/johnolilly/statuses/882955200">pointed people</a> at a really <a href="http://www.nytimes.com/2008/08/10/sports/olympics/10stream.html?ex=1376020800&#038;en=7c0d06e2f71eb678&#038;ei=5124&#038;partner=permalink&#038;exprod=permalink">good article in the New York Times</a> by John Markoff about the Olympics as a hook to get Silverlight onto people&#8217;s computers.  It&#8217;s a good overview and is worth reading.
</p>
<p>
The article covers well tread ground: People are worried that Microsoft will leverage its market power to create a leadership position for multimedia on the web.  Replacing the (proprietary) Flash video codecs with the (proprietary) Silverlight video codecs and associated tools.  In some ways it looks like a battle between two companies and strategies that no one would care about.  More lock-in, more proprietary tools, more opportunities to undermine the main single item that makes the web great: it&#8217;s open nature.  But those companies have existing market reach and they will do anything they can to convert that into even more leverage over how you interact with the web.  If nothing else, they will buy their way with cold hard cash onto your computers.  These two industry players should be taken seriously.
</p>
<p>
John Lilly is quoted in the article as talking about the &#8220;generative Web&#8221; (via Jonathan Zittrain.)  I like this phrase quite a bit.  I think that might be an even be a better way to describe what we (as in the Mozilla Project) think is the most important part of the open web.  That is, by the act of creation on the web you are also creating things that other people can build on.  Everything from scraping data to create a search engine like Google to being able to look at other people&#8217;s HTML and JavaScript to discover how they do something clever.  Transparency and openness creates innovation &#8211; innovation by thousands and thousands of people, each of which has a positive impact on the millions who use the web.
</p>
<p>
Think about it another way.  The main metric that I would use to describe the health of a truly open web is this: That as the ecosystem expands, the raw number of people, companies or groups who hold power inside the ecosystem, and can affect its direction, grows as the ecosystem grows.  Put another way, the power center is decentralized over time.  Change inside of that ecosystem require more voices to agree that change is good.  That&#8217;s healthy.  And that&#8217;s an open web.
</p>
<p>
Then there&#8217;s the other side of the metric.  That as an ecosystem expands it enhances the power of a <em>single</em> player in the market instead of creating <em>many</em> players in the market.  Change in that market requires the permission of only that one player and that one player can make decisions on behalf of everyone who is also part of it.  That&#8217;s not healthy.  And it&#8217;s not the open web.
</p>
<p>
Based on those metrics for health the battle is between those who would expand for the sake of expanding the opportunity for everyone vs. those who would expand for the sake of centralizing their own market power.  In one phrase: it&#8217;s expansion vs. centralization.  That&#8217;s what you should be looking for and what you should be thinking about when you hear someone talking about the open web.
</p>
<p>
All of this is nice, of course, but it doesn&#8217;t really describe what we have to do to create the world we want to live in.  It talks about the nature of the marketplace but it&#8217;s not really a roadmap for people to understand how, as the good guys in this picture, we can continue to compete and win against much larger competitors.  I first word in the title for this post is &#8220;competing&#8221; for a reason.  Because that&#8217;s what we really need to do.
</p>
<p>
Recently at the Firefox summit I was reminded in one of Mitchell&#8217;s talks about how Firefox is a mechanism.  Firefox is the best representation of our vision for an open + generative web that we can come up with:  As a rule our users love it, we&#8217;ve built an ecosystem of thousands of add-ons, we continue to protect our users from the worst aspects of the web, we continue to both compete and collaborate with other browser vendors and we manage to do all that in an open forum with open source code.  Firefox is a reflection of our larger view of the transparency that we want to see in an open web.  Put simply: We are the change we want to see on the web.
</p>
<p>
So that&#8217;s a lot of talk.  Back to the issue at hand.  Silverlight, video, adobe, multimedia, market power.  How do we compete?  Or, really, how do <em>you</em> compete?  Because Mozilla isn&#8217;t going to create this change alone.  We&#8217;re very very small by any standard in the tech marketplace.  Our reach is pretty good with Firefox 2 + Firefox 3, and we&#8217;re starting to have real market effects, but we&#8217;re not going to be able to buy our way onto millions of computers by sponsoring the olympics.
</p>
<p>
People who have talked to me have heard me talk about two things on this topic.  I usually say something like &#8220;you need to learn how to build a product&#8221; or &#8220;you need to find out what you can lead at and go do that.&#8221;  There&#8217;s usually more than that, but that&#8217;s the main part of the message.  And I think that if we want to make sure that the web isn&#8217;t overtaken by the acts of industry giants, that there are real actionable things we can do to make that happen. </p>
<p>
I&#8217;ll use video on the web as a simple example.  Here are the things that I think need to happen to make Theora a player in the real world.
</p>
<p>
1. Make sure there&#8217;s a really great video plugin for Apple Quicktime that delivers the OGG Theora video format to people who use the video tag in Safari. When I tried to play the ogg theora video from my post the other day the ogg plugin jumped around, showed a white screen for long periods, paused for a few seconds at a time &#8211; bad!
</p>
<p>
2. Create a control that brings the video tag to IE like <a href="http://blog.vlad1.com/2008/07/30/no-browser-left-behind/">Vlad did for the canvas tag</a>. The world is much bigger than just Firefox.  This would make it very easy to deliver and build content and make it easy for consumers to get access to it. Bring ubiquity to content like Adobe was able to do with Flash. (Note: Cortado isn&#8217;t good enough &#8211; it&#8217;s still stuck in the plugin prison!)
</p>
<p>
3. Make a super-easy, <em>consumer-focused</em>, high-quality encoder for ogg theora that anyone can use to encode their videos for the web. (Here&#8217;s a hint: Handbrake is still too hard to use.) Hook it up to the various video camera providers on mac and windows so that it&#8217;s super easy to create content, encode it, and with the tools listed above, upload it and make it available to others.
</p>
<p>
4. Even better, build a business around the tools above. Or even a service for people to upload to. Sustainability is an important component and it should not be left behind.
</p>
<p>
5. Create awesome demos of what you can do with the video tag, or even better mixed with the recent stuff we&#8217;ve been showing off with video + svg filters. Blur effects, video driven by content, content people can create and overlay onto existing videos, etc. Some of this stuff is out there, some of it isn&#8217;t. But it&#8217;s a start.  Try mixing video with other content on the web &#8211; mash it up, cover it up, add value and context to otherwise boring videos.  Its easier to do with the video tag than it is when it&#8217;s hidden inside of Flash or Silverlight.
</p>
<p>
So that&#8217;s just a short list of things people can do to help with video.  There are lots of other things that people can do in other areas, other than just video, but I wanted to give an example of my thinking around OGG Theora as an example.
</p>
<p>
People seem excited about us including OGG Theora in our next Firefox release. But keep in mind it&#8217;s only a start. If the same ecosystem that we&#8217;ve seen develop around the open + generative web doesn&#8217;t grow around open video like it has around the web then we will end up with the status quo: a vibrant growing web but with large parts that are hobbled by a model that doesn&#8217;t grow on itself. Mozilla isn&#8217;t going to be able to do this job entirely on its own, but we&#8217;re doing our part. It&#8217;s going to take others to understand how we do what we do, copy its model and try to create the same effects in the other important parts of the ecosystem.
</p>
<p> I wonder what the world will look like five years from now. It&#8217;s going to be an interesting ride. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.0xdeadbeef.com/weblog/2008/08/competing-for-an-open-generative-web/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>some random mozilla-related links for your enjoyment</title>
		<link>http://www.0xdeadbeef.com/weblog/2008/05/some-random-mozilla-related-links-for-your-enjoyment/</link>
		<comments>http://www.0xdeadbeef.com/weblog/2008/05/some-random-mozilla-related-links-for-your-enjoyment/#comments</comments>
		<pubDate>Fri, 30 May 2008 17:54:22 +0000</pubDate>
		<dc:creator>Christopher Blizzard</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[GNOME]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Open Web]]></category>

		<guid isPermaLink="false">http://www.0xdeadbeef.com/weblog/?p=380</guid>
		<description><![CDATA[Ari Jaaksi talks about Linux on Phones and what&#8217;s going on at Nokia. He mentions that he&#8217;s working with us at Mozilla &#8211; very true. And good fodder for another post on another day. He also touches on an important &#8230; <a href="http://www.0xdeadbeef.com/weblog/2008/05/some-random-mozilla-related-links-for-your-enjoyment/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>
<b><br />
<a href="http://jaaksi.blogspot.com/2008/05/phones-no-ubuntu-yes.html">Ari Jaaksi talks about Linux on Phones and what&#8217;s going on at Nokia.</a><br />
</b>
</p>
<p>
He mentions that he&#8217;s working with us at Mozilla &#8211; very true.  And good fodder for another post on another day.
</p>
<p>
He also touches on an important topic for me, which is the difference between between being &#8220;open&#8221; and being &#8220;good.&#8221;  Being open is easy.  Being good is not.  I&#8217;ll write more about that at a later date as well.
</p>
<p>
<b><a href="http://www.toolness.com/wp/?p=41">Atul Varma talks about how Weave works and some of the wider goals for the project.</a></b>
</p>
<p>
Weave is a very interesting part of the Mozilla project.  The underlying mechanisms are very simple (just a webdav store and a private and public key system, basically.)  But the fact that we&#8217;ll be able to use it to share data between users on their terms and extension authors should be able to take advantage of the storage that&#8217;s there &#8211; well &#8211; it could be huge.  Lots of great potential here.
</p>
<p>
He also touches on an important part of weave.  That we want user data to be private and we want users to control what they are exposing to the world.  Mozilla&#8217;s servers can&#8217;t read the data that you post and neither can anyone else.  That&#8217;s an important piece of what Weave represents.
</p>
<p>
<b><a href="http://googleblog.blogspot.com/2008/05/happy-birthday-google-gears.html">Google drops the Google from Gears and will be adding Firefox 3 support.</a></b>
</p>
<p>
It&#8217;s clear that Google is trying to build a larger community around the Gears plugin and is willing to give up branding in order to try and make that a reality.  Also good that they are porting to Firefox 3 given that a huge chunk of the world is <a href="http://www.spreadfirefox.com/en-US/worldrecord">about to update to it</a>.
</p>
<p>
<b><a href="http://stompbox.typepad.com/blog/2008/05/also-in-defense.html">Jorge Castro talks about his views on Mozilla&#8217;s commitment and investment in Linux.</a><br />
</b>
</p>
<p>
Jorge is a pretty fantastic guy and I&#8217;m happy that he&#8217;s willing to jump out there and say something about the hard work that our community put in for this release of Firefox on Linux support.  Great native integration, memory and performance improvements, a great experience for users, etc.  Good to see him focus on the big picture which is how much better Firefox 3 will be vs. Firefox 2.
</p>
<p>
Anyway, that&#8217;s it for Friday.  Thanks for tuning in!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.0xdeadbeef.com/weblog/2008/05/some-random-mozilla-related-links-for-your-enjoyment/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

