<?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>Robert Accettura&#039;s Fun With Wordage &#187; safari</title>
	<atom:link href="http://robert.accettura.com/blog/tag/safari/feed/" rel="self" type="application/rss+xml" />
	<link>http://robert.accettura.com</link>
	<description>Robert Accettura&#039;s Personal Blog on Web Development and Tech</description>
	<lastBuildDate>Thu, 09 Feb 2012 01:43:47 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<atom:link rel='hub' href='http://robert.accettura.com/?pushpress=hub'/>
<cloud domain='robert.accettura.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
		<item>
		<title>Protecting Photo Privacy Via Browsers</title>
		<link>http://robert.accettura.com/blog/2010/08/11/protecting-photo-privacy-via-browsers/</link>
		<comments>http://robert.accettura.com/blog/2010/08/11/protecting-photo-privacy-via-browsers/#comments</comments>
		<pubDate>Wed, 11 Aug 2010 22:08:04 +0000</pubDate>
		<dc:creator>Robert</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[google chrome]]></category>
		<category><![CDATA[internet explorer]]></category>
		<category><![CDATA[opera]]></category>
		<category><![CDATA[safari]]></category>
		<category><![CDATA[WebKit]]></category>

		<guid isPermaLink="false">http://robert.accettura.com/?p=4471</guid>
		<description><![CDATA[Browsers can do more to protect users from inadvertently violating their own privacy. The NY Times today had an article about a topic that has been discussed in various circles several times now. The existence of geotagging data in photos. &#8230; <a href="http://robert.accettura.com/blog/2010/08/11/protecting-photo-privacy-via-browsers/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Browsers can do more to protect users from inadvertently violating their own privacy.  The NY Times today had an article about a topic that has been discussed in various circles several times now.  The existence of <a href="http://www.nytimes.com/2010/08/12/technology/personaltech/12basics.html?src=twr">geotagging data in photos</a>.  Many cameras, in particular smart phones like the iPhone can tag photos with GPS data.  This is pretty handy for various purposes including organizing photos at a later date, iPhoto for example does a pretty nice job of it.  Most photo applications however don&#8217;t make this information very visible, as a result many users don&#8217;t even know it exists, others simply forget.</p>
<h3>What the problem looks like</h3>
<p>The data, embedded in a photo looks something like this:</p>
<pre>
GPSLatitude                    : 57.64911
GPSLongitude                   : 10.40744
GPSPosition                    : 57.64911 10.40744
</pre>
<p>Which I could <a href="http://maps.google.com/maps?f=q&#038;source=s_q&#038;hl=en&#038;geocode=&#038;sll=57.64911,10.40744&#038;sspn=0.059156,0.154324&#038;g=57.64911+10.40744&#038;ie=UTF8&#038;t=h&#038;layer=x&#038;ll=57.64911,10.40744&#038;spn=0.000924,0.002411&#038;z=19&#038;iwloc=video0">map</a>.</p>
<h3>Proposal</h3>
<p>I propose that browsers need to have a content policy for when users upload images that can better protect them from uploading information they may not even realize.  Here&#8217;s what I&#8217;m imagining:</p>
<p>The first time a user attempts to upload a photo that has EXIF or XMP data containing location they are prompted if they want it stripped from the image they are uploading.  The original file remains unharmed, just the uploaded version won&#8217;t have the data.  They can also choose to have the browser remember their preference to prevent being prompted in the future.  They can revise their choice in the preferences window later if they want.  This isn&#8217;t to different from how popups are handled.  I thnk that per-site policy might be too confusing and not warranted, but perhaps I&#8217;m wrong.</p>
<p>Warning users about hidden information they may be revealing is a worthwhile effort.  It&#8217;s only a matter of time before someone uses a &#8220;contest&#8221; or some other form of social engineering to solicit pictures that may reveal location data for users.  Evildoers always find creative ways to exploit people.</p>
<h3>Caveat</h3>
<p>There are a notable caveat to this approach.  The most notable is that flash uploaders would bypass this security measure though individual uploaders could do it themselves, or Adobe could do it, but I don&#8217;t think that&#8217;s enough of a turnoff to this approach.  The same caveat applied to &#8220;private browsing&#8221; in browsers.</p>
<h3>Prior Work</h3>
<p>As far as I know no browser actually implements a security feature like this yet.  There are a few Firefox Add-ons like <a href="https://addons.mozilla.org/en-US/firefox/addon/3905/">Exif Viewer</a> and <a href="https://addons.mozilla.org/en-US/firefox/addon/5673/">FxIF</a> (both written in pure JavaScript) that look at EXIF data but nothing that intercepts uploads.</p>
<h3>Who Can Do It First?</h3>
<p>I&#8217;m curious who can do it first.  By add-on (seems like it should be possible at least in Firefox), and dare I say include in a browser itself?  If this were earlier in the year I would have added this to the  <a href="https://wiki.mozilla.org/Community:SummerOfCode10">Summer of Code ideas list</a>.  Instead I&#8217;m just throwing it into the wind until 2011 rolls around.
<div id="rja_commentCountImage"><a href="http://robert.accettura.com/?p=4471#comments"><img src="http://robert.accettura.com/wp-content/commentCount/2010/08/0fd7e4f.gif" alt="Comment Count" style="border:0;" /></a></div>
]]></content:encoded>
			<wfw:commentRss>http://robert.accettura.com/blog/2010/08/11/protecting-photo-privacy-via-browsers/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Debating Ogg Theora and H.264</title>
		<link>http://robert.accettura.com/blog/2009/07/06/debating-ogg-theora-and-h-264/</link>
		<comments>http://robert.accettura.com/blog/2009/07/06/debating-ogg-theora-and-h-264/#comments</comments>
		<pubDate>Tue, 07 Jul 2009 02:40:42 +0000</pubDate>
		<dc:creator>Robert</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[h.264]]></category>
		<category><![CDATA[html 5]]></category>
		<category><![CDATA[ie]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[ogg theora]]></category>
		<category><![CDATA[opera]]></category>
		<category><![CDATA[safari]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://robert.accettura.com/?p=2847</guid>
		<description><![CDATA[Since the big HTML 5 news that there will be no defined codec for &#60;audio/&#62; or &#60;video/&#62; there has been a lot of discussion about the merits of such a decision, and what led to it. To quote Ian Hickson&#8217;s &#8230; <a href="http://robert.accettura.com/blog/2009/07/06/debating-ogg-theora-and-h-264/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Since the big HTML 5 news that there will be <a href="http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2009-June/020620.html">no defined codec</a> for <code>&lt;audio/&gt;</code> or <code>&lt;video/&gt;</code> there has been a lot of <a href="http://arstechnica.com/open-source/news/2009/07/decoding-the-html-5-video-codec-debate.ars">discussion</a> <a href="http://www.techcrunch.com/2009/07/06/html-5-ogg-theora-vs-h264-in-the-battle-for-a-web-video-standard">about</a> the merits of such a decision, and what led to it.  To quote Ian Hickson&#8217;s email:</p>
<blockquote cite="http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2009-June/020620.html"><p>
Apple refuses to implement Ogg Theora in Quicktime by default (as used by Safari), citing lack of hardware support and an uncertain patent landscape.</p>
<p>Google has implemented H.264 and Ogg Theora in Chrome, but cannot provide the H.264 codec license to third-party distributors of Chromium, and have indicated a belief that Ogg Theora&#8217;s quality-per-bit  is not yet suitable for the volume handled by YouTube.</p>
<p>Opera refuses to implement H.264, citing the obscene cost of the relevant patent licenses.</p>
<p>Mozilla refuses to implement H.264, as they would not be able to obtain a license that covers their downstream distributors.</p>
<p>Microsoft has not commented on their intent to support <video tabindex="0"> at all.<br />
</video></p></blockquote>
<p>I think everyone agrees this is going nowhere and isn&#8217;t likely to change in the near future.  For the sake of moving HTML5 forward, this is likely the best decision.</p>
<p>Here&#8217;s how I interpret everyone&#8217;s position:</p>
<h3>Apple&#8217;s Argument</h3>
<p>One of the undeniable perks behind H.264 right now is that there is hardware decoding available and used on on certain devices.  One of the most notable is the iPhone.  Using hardware decoding means your not using the CPU which results in better performance, and most importantly better battery life.  </p>
<p>Thus far there&#8217;s no hardware Theora decoder on the market (if you know of any let me know, my research says none), which I suspect is why Apple is hesitant to jump on board.  Until there&#8217;s hardware that&#8217;s proven to perform well, be cost-effective in the quantities Apple needs, and not be bombarded with patent infringement claims, I suspect they&#8217;d rather settle with H.264.  The patent part is critical.  Apple can update software to comply with patent wars pretty quickly, as many other companies have done with software in the past.  Hardware is not so easy.  Last minute hardware changes are harder to deal with than software because of the many things it impacts, and the inability to update at a later date.</p>
<p>I&#8217;m almost positive the lack of hardware support is the exact same reason Apple has been so against Flash support.  Remember the YouTube application isn&#8217;t using VP6 like regular flash, it&#8217;s using H.264 (that&#8217;s why it took so long for all of YouTube to be available on the iPhone).</p>
<p>If there&#8217;s enough Theora content out there, there will likely be Theora decoder hardware made to meet market demand.  To get to this point will be difficult with the amount of VP6 (Flash) and H.264 content already on the web.  H.264 alone has a major head start in <a href="http://en.wikipedia.org/wiki/H.264/MPEG-4_AVC#Applications">applications</a>.  VP6 has several years of video on the web now (and I still don&#8217;t think it has a hardware decoder on the market though that might be due to licensing again).</p>
<p>In the long run, I think mobile technology will improve enough to make this a somewhat unnecessary constraint.  Mobile CPU&#8217;s and GPU&#8217;s are just starting to get to the caliber needed for video.  Performance per watt should improve.  Battery technology is just starting to get pushed to the limits.  This is a good thing for Theora in the long run, but the question is how long?</p>
<p>Until it can be played with minimal impact on battery life, I don&#8217;t think any company who has a heavy investment in mobile will want to jump on board.</p>
<h3>Google&#8217;s Argument</h3>
<p>Google has money and can license H.264.  Shocker.  Google however has trouble when it comes to Chromium.  I suspect Google doesn&#8217;t care too much about which way this goes since what they support in Chrome doesn&#8217;t mandate that YouTube support it. However if the encoding quality for a given bitrate is good enough, it becomes a viable option.</p>
<p>Regarding the quality argument, I&#8217;ll simply point to this <a href="http://people.xiph.org/%7Egreg/video/ytcompare/comparison.html">comparison</a>.  I the quality today is comparable already, and likely to get better as the encoders improve.  I&#8217;ll leave this discussion here.</p>
<h3>Opera&#8217;s Argument</h3>
<p>Opera says H.264 is to expensive to license.  I don&#8217;t know what the costs are, and what they would be for Opera, but I&#8217;ll take their word on it.  After all, the do have a product available for free download.  While commercial and closed source, they don&#8217;t have Google&#8217;s revenue stream and I respect that.</p>
<h3>Mozilla&#8217;s Argument</h3>
<p>Mozilla can&#8217;t license for downstream Gecko use etc.  I&#8217;m sure a good part of the argument is also that requiring licensing fees to use <code>&lt;video/&gt;</code> is bad for the web and open source.  I agree.</p>
<h3>Microsoft&#8217;s Argument</h3>
<p>No comment.  Historically they implemented <code>&lt;marquee/&gt;</code> but not the <code>&lt;blink/&gt;</code>.   Make of that what you will.</p>
<p><code>&lt;video/&gt;</code> could be supported by plugin if needed.  I recall Adobe supporting SVG by plugin a few years ago.</p>
<h3>Where to go from here?</h3>
<p>I think there are a few possible outcomes.  As for what I think are the most likely:</p>
<ol>
<li>There&#8217;s a push for hardware decoding that makes Theora on mobile technically possible and working well.  If Apple legally is satisfied and jumps on board that changes the game. As I stated earlier I think Google is mostly ambivalent since they support both right now.  Opera doesn&#8217;t want H.264 anyway, so they are cool.  IE 8 can likely be handled by a plugin.  Apple really is the deciding factor. Theora is the future.</li>
<li>See what the web does.  I suspect at least for a long while the web will just stick with Flash since it works on almost all desktops.  For mobile the iPhone and Android make up pretty much the bulk of the mobile video market and that doesn&#8217;t look like it&#8217;s changing so fast.  Content providers that want mobile will encode for mobile.  That means 3 target platforms, not ideal but reasonable.  H.264 and whatever Adobe adopts is the future.</li>
</ol>
<p>I know how the media is interpreting all of this.  How do other developers, and open source folks see it?
<div id="rja_commentCountImage"><a href="http://robert.accettura.com/?p=2847#comments"><img src="http://robert.accettura.com/wp-content/commentCount/2009/07/fdf1bc5.gif" alt="Comment Count" style="border:0;" /></a></div>
]]></content:encoded>
			<wfw:commentRss>http://robert.accettura.com/blog/2009/07/06/debating-ogg-theora-and-h-264/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>3rd Party Web Browsers For iPhone</title>
		<link>http://robert.accettura.com/blog/2009/01/14/3rd-party-web-browsers-for-iphone/</link>
		<comments>http://robert.accettura.com/blog/2009/01/14/3rd-party-web-browsers-for-iphone/#comments</comments>
		<pubDate>Wed, 14 Jan 2009 14:17:13 +0000</pubDate>
		<dc:creator>Robert</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[safari]]></category>
		<category><![CDATA[WebKit]]></category>

		<guid isPermaLink="false">http://robert.accettura.com/?p=2378</guid>
		<description><![CDATA[There&#8217;s some buzz around the web regarding 3rd party web browsers for the iPhone now appearing in the App Store. This really isn&#8217;t as good as it sounds. In fact, it&#8217;s misleading. From what I can tell they are all &#8230; <a href="http://robert.accettura.com/blog/2009/01/14/3rd-party-web-browsers-for-iphone/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>There&#8217;s some <a href="http://www.macrumors.com/2009/01/13/apple-allows-3rd-party-web-browsers-in-app-store/ ">buzz around the web</a> regarding 3rd party web browsers for the iPhone now appearing in the App Store.  This really isn&#8217;t as good as it sounds.  In fact, it&#8217;s misleading.  From what I can tell they are all using WebKit (Safari) API&#8217;s.  <code><a href="http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UIWebView_Class/Reference/Reference.html">UIWebView</a></code> to be specific.  These are just applications that serve as an alternative UI for WebKit.</p>
<p>This isn&#8217;t even totally new as there are several apps that have done this in the past, the most popular being <a href="http://iconfactory.com/software/twitterrific">Twitterrific</a> who ships a &#8220;mini-browser&#8221; for the purpose of viewing links in tweets without leaving the application.  What&#8217;s new is that an application&#8217;s sole purpose can be a browser.  Though there&#8217;s no official word on a policy that I know of.</p>
<p>That means no you will not see Java, you will not see Flash, you will not see Firefox.  You may perhaps see some user experience improvements which of course are welcome, but not another &#8220;browser&#8221;.
<div id="rja_commentCountImage"><a href="http://robert.accettura.com/?p=2378#comments"><img src="http://robert.accettura.com/wp-content/commentCount/2009/01/3837a45.gif" alt="Comment Count" style="border:0;" /></a></div>
]]></content:encoded>
			<wfw:commentRss>http://robert.accettura.com/blog/2009/01/14/3rd-party-web-browsers-for-iphone/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>We May Look At That</title>
		<link>http://robert.accettura.com/blog/2008/11/07/we-may-look-at-that/</link>
		<comments>http://robert.accettura.com/blog/2008/11/07/we-may-look-at-that/#comments</comments>
		<pubDate>Sat, 08 Nov 2008 03:18:39 +0000</pubDate>
		<dc:creator>Robert</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[gecko]]></category>
		<category><![CDATA[ie 8]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[safari]]></category>
		<category><![CDATA[WebKit]]></category>

		<guid isPermaLink="false">http://robert.accettura.com/?p=2107</guid>
		<description><![CDATA[The big story over the past 24 hours is Steve Ballmer&#8217;s statements regarding WebKit: &#8220;Open source is interesting,&#8221; he said. &#8220;Apple has embraced Webkit and we may look at that, but we will continue to build extensions for IE 8.&#8221; &#8230; <a href="http://robert.accettura.com/blog/2008/11/07/we-may-look-at-that/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The big story over the past 24 hours is Steve Ballmer&#8217;s <a href="http://www.techworld.com.au/article/266449/microsoft_interested_open_source_browser_ballmer">statements regarding WebKit</a>:</p>
<blockquote cite="http://www.techworld.com.au/article/266449/microsoft_interested_open_source_browser_ballmer"><p>
&#8220;Open source is interesting,&#8221; he said. &#8220;Apple has embraced Webkit and we may look at that, but we will continue to build extensions for IE 8.&#8221;
</p></blockquote>
<p><span id="more-2107"></span></p>
<p>Let me say I highly doubt Microsoft would switch to WebKit or Gecko at any point in the near future.  The most obvious reason is it would cause a massive bruised ego.  It would be an undeniable admission that they fell asleep with a monopoly during IE6.  A business <a href="http://en.wikipedia.org/wiki/The_Tortoise_and_the_Hare">Tortoise and the Hare</a>.  I don&#8217;t think they would want to do that.  They are still trying to <a href="http://www.mojaveexperiment.com">change the public opinion that Vista stinks</a>, while they aggressively try to <a href="http://www.microsoft.com/windows/windows-7/">fix Windows</a>.  Will they be successful there?  Who knows.  They are however listing to customers and working on things like <a href="http://blogs.msdn.com/e7/archive/2008/08/29/boot-performance.aspx">boot time</a>, but I digress.  This is a company culture thing.</p>
<p>Besides for that, it would mean Microsoft would loose some control over the rendering engine.  Control is very important to them.  The reason IE exists is to bridge Windows and the web.  A browser without proprietary extensions means the web is completely portable (runs on any OS).  This isn&#8217;t very beneficial to Microsoft, who coincidentally sells operating systems.  Microsoft needs to bring Windows to the Internet as much as it needs to bring the Internet to Windows.  Otherwise the operating system becomes even more irrelevant and any old internet appliance will suffice.  Even if it ran Mac OS X or Linux.</p>
<p>Eventually Microsoft&#8217;s business may be in cloud computing and the OS and software for it may just be a legacy products, but today it&#8217;s still a decent sized business that they care about.</p>
<p>They could implement proprietary extensions on top of WebKit to their hearts content or simply fork WebKit and use it as a starting point for IE 9.  Either way, they will have new issues regarding changes to WebKit in the future since it&#8217;s not exclusively theirs.  This approach will also create angry developers who have yet another IE rendering engine to deal with since it won&#8217;t be pure WebKit.  Their own developers will have to be familiar with an even larger code base.  With larger code bases comes more surface area for security issues, though there would be at least some help on the WebKit side.</p>
<p>Another option is for them to simply use WebKit as another rendering engine in IE now that each tab is a separate process.  Very simple on the surface since it&#8217;s just embedding WebKit into IE.  However, this could be very complicated since there needs to be communication between processes (marking links as read, iframes etc.), a somewhat consistent UI (features in browser chrome need to work in all rendering engines), and of course plugins (NSAPI vs. ActiveX).  I&#8217;m just scratching the surface here.  It&#8217;s complicated.  Netscape&#8217;s approach (Netscape <img src='http://robert.accettura.com/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /> to multiple engines really didn&#8217;t work out since users didn&#8217;t know what the hell that even meant.</p>
<p>These approaches don&#8217;t make much business sense either.  It would be easier to just bundle Google Chrome or Safari instead of iexplore.exe.  They could leave the MSHTML alone since other applications depend on it.  That would be cheaper and accomplish the same goal.  If the goal were to simply provide a better browsers.  As I mentioned before, it&#8217;s to provide hook into the Internet.</p>
<p>Personally I found this quote to be much more fascinating:</p>
<blockquote cite="http://www.techworld.com.au/article/266449/microsoft_interested_open_source_browser_ballmer"><p>
Ballmer began his answer philosophically, saying Microsoft will need to look at what the browser is like in the future and, if there is no innovation around them, which he thinks is &#8220;likely&#8221;, Microsoft may still need its own browser because of proprietary extensions that broaden its functionality.</p>
<p>&#8220;There will still be a lot of proprietary innovation in the browser itself so we may need to have a rendering service,&#8221; he said.
</p></blockquote>
<p>At first I was confused by this statement, but then I realized there may be an <a href="http://en.wikipedia.org/wiki/Delusional_disorder">explanation</a>.  Anyway, looking around at Firefox, Safari, Android, Opera, and IE, the one with the least innovation is really IE.  Most of the IE 8 features are just variations of what other browsers have done.  The rendering engine improvements are mainly catching up.  Is that innovation?</p>
<p>Then he mentions proprietary innovation&#8230; ah ha!</p>
<p>Gecko doesn&#8217;t really resolve any of these issues except making an ActiveX implementation a <a href="http://mxr.mozilla.org/seamonkey/source/embedding/browser/activex/src/plugin/">little easier</a>.</p>
<p>That&#8217;s why I don&#8217;t think Microsoft will make the jump to an open source rendering engine.  Feel free to disagree.</p>
<p>That said, I like what Microsoft has done in regards to making IE 8 more standards compliant and fixing long existent bugs.  I&#8217;ve worked with the browser and found that it&#8217;s much more on par with other browsers on the market than anything Microsoft has ever put out, except perhaps <a href="http://en.wikipedia.org/wiki/Tasman_(layout_engine)">Tasman</a> which was really ahead of it&#8217;s time.
<div id="rja_commentCountImage"><a href="http://robert.accettura.com/?p=2107#comments"><img src="http://robert.accettura.com/wp-content/commentCount/2008/11/9185f3e.gif" alt="Comment Count" style="border:0;" /></a></div>
]]></content:encoded>
			<wfw:commentRss>http://robert.accettura.com/blog/2008/11/07/we-may-look-at-that/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mobile Browsing UI</title>
		<link>http://robert.accettura.com/blog/2008/09/27/mobile-browsing-ui/</link>
		<comments>http://robert.accettura.com/blog/2008/09/27/mobile-browsing-ui/#comments</comments>
		<pubDate>Sun, 28 Sep 2008 01:54:37 +0000</pubDate>
		<dc:creator>Robert</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[fennec]]></category>
		<category><![CDATA[safari]]></category>
		<category><![CDATA[user-interface]]></category>
		<category><![CDATA[web browsers]]></category>

		<guid isPermaLink="false">http://robert.accettura.com/?p=2019</guid>
		<description><![CDATA[It&#8217;s interesting to watch mobile web browsing UI develop. This is really the first time since web browsers existed that they have received a large overhaul. Sure things like tabs are &#8220;major&#8221;, but when you really look at it, Safari, &#8230; <a href="http://robert.accettura.com/blog/2008/09/27/mobile-browsing-ui/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s interesting to watch mobile web browsing UI develop.  This is really the first time since web browsers existed that they have received a large overhaul.  Sure things like tabs are &#8220;major&#8221;, but when you really look at it, Safari, Chrome, IE, Firefox are all strikingly similar to the original Mosaic (this is 1.0 running on Windows XP):</p>
<p><img src="http://robert.accettura.com/wp-content/uploads/2008/09/20080927_ncsa_mosaic_ui.png" alt="NCSA Mosaic UI" class="centered size-full wp-image-2020" /></p>
<p>I&#8217;m not sure who&#8217;s idea it was to put the title in the UI like that, especially in a time when displays were small.  That was a gigantic waste of space.  The address bar in this version is read only, you need to select open and enter your URL there.  Other than that, it&#8217;s pretty much the same browser UI since 1993.  That&#8217;s right, 15 years of really the same user interface.  The window to the web has always looked that way.  There&#8217;s now bookmarking, a fancier address bar, favicons, and a search box.  Firefox goes nuts by letting users install add-ons.  Overall: Not very different. </p>
<p>There&#8217;s a few reasons why it hasn&#8217;t changed too much.  First of all, it&#8217;s a pretty good design.  Minus some quirks which were worked out pretty fast, it&#8217;s effective.  If it wasn&#8217;t the web wouldn&#8217;t have caught on.  Secondly, people know how to use it already.  Why make people re-learn?</p>
<p>The mobile space is different yet surprisingly the same.  Like days of old there&#8217;s a need to conserve screen space.  Unlike days of old there&#8217;s no reason to believe it will get bigger since small phones are always desirable.  Until screens are foldable, the iPhone is about as big as you&#8217;ll see.  Even when phones get thinner and lighter, the screen size won&#8217;t likely get any larger since it will be awkward to hold and put in your pocket.</p>
<p>With a touch screen you can only make items in the UI as small as a fingerprint.  Any smaller and they are unusable to people.  A stylus while clunkier and more awkward allows for a much more compact UI.  This leaves very little space to get a lot accomplished.  Too add to the complexity of the problem websites are designed for big displays meaning there&#8217;s a lot to cram into a small space.</p>
<p>Apple&#8217;s allegedly making a <a href="http://blog.wired.com/gadgets/2008/09/iphone-22-safar.html">pretty interesting change</a> to iPhone 2.2.  Safari will break out the search box into a more desktop-like separate box.  This results in a smaller address bar and the reload icon being moved inside the url bar.  I think the reason for this is to better parody the desktop, and remind users they can search from the browser chrome.</p>
<p><img src="http://robert.accettura.com/wp-content/uploads/2008/09/20080927_iphone-safari.jpg" alt="iPhone 2.2 Safari With Search Box" class="centered size-full wp-image-2021" /></p>
<p>To be perfectly honest, I&#8217;m not sure the address bar is even needed in a mobile browser on a touchscreen device.  Unlike a desktop you can&#8217;t type directly into it because of the small size.  Your essentially going to another UI to enter the text anyway.  Why not just make it a button?  You could argue you need the address bar as a way to know where you are.  Of course you can likely merge it with the Title to accomplish that.  All that&#8217;s needed in the main UI is the title and hostname.  That can be all in the title of the window.  I think I&#8217;d prefer a back button more than the address bar on a mobile device.  Of course if I could tap or tilt the device to go backwards or forwards that would be cool too.  One less thing for the UI.</p>
<p>The most similar to this is <a href="https://wiki.mozilla.org/Mobile/UI/Designs/TouchScreen/workingUI">Fennec</a>. </p>
<p>On a side note, thanks to Apple&#8217;s insane SDK licensing and app store policy it is unlikely to ever live on an iPhone.  Maybe one day Apple will realize that just like 3rd party applications (something they were originally against), an even more open device would be even more enticing.  But I digress.</p>
<p><img src="http://robert.accettura.com/wp-content/uploads/2008/09/20080927_nintendo_ds.jpg" alt="Nintendo DS" class="alignright size-full wp-image-2024" />Another concept I&#8217;d really love to see and experiment with is a dual screen format.  Similar to that of the Nintendo DS.  This would be perfect for a flip phone style smart phone. As phones can be made thinner folding them over is an option to keep the physical device small enough for portability but the display size can then be doubled.  By the time the iPhone can be made half the thickness (remember the iPod G1 was much thicker than it is now) this is feasible.</p>
<p>There are several fun things about this design.  First of all you essentially <a href="http://www.artlebedev.com/everything/optimus/">Optimus Maximus keyboard</a> on your phone.  Secondly you can now separate the content from the chrome in applications.  Perfect for things like web browsers.  This is also handy for watching movies as controls don&#8217;t overlay video but are still available.  It also would be great for multi-tasking.</p>
<p>That&#8217;s where I predict things will ultimately go.  We&#8217;re once again in the era of Bar form phones.  Anyone remember the Nokia 1100/5110/3210/3310 fad a few years ago?  Then flip phones came back in style.  The flip phone style also has the advantage of protecting the internal display from scratches and involuntary button pressing.</p>
<p>It will be fun to see how the interface evolves.  I&#8217;m relatively certain despite all the different UI prototypes surfacing right now regarding web browsers, as they mature they will adopt features from each other and become surprisingly similar to each other.</p>
<p><small>iPhone Safari image via <a href="http://blog.wired.com/gadgets/2008/09/iphone-22-safar.html">Wired</a>.  Nintendo DS image via <a href="http://en.wikipedia.org/wiki/Image:Nintendo_DS_Trans.png">Wikipedia Commons</a>]</small>
<div id="rja_commentCountImage"><a href="http://robert.accettura.com/?p=2019#comments"><img src="http://robert.accettura.com/wp-content/commentCount/2008/09/ea6b2ef.gif" alt="Comment Count" style="border:0;" /></a></div>
]]></content:encoded>
			<wfw:commentRss>http://robert.accettura.com/blog/2008/09/27/mobile-browsing-ui/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Initial Thoughts On Google Chrome</title>
		<link>http://robert.accettura.com/blog/2008/09/02/initial-thoughts-on-google-chrome/</link>
		<comments>http://robert.accettura.com/blog/2008/09/02/initial-thoughts-on-google-chrome/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 02:00:53 +0000</pubDate>
		<dc:creator>Robert</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[ben-goodger]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[chromium]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[mozilla prism]]></category>
		<category><![CDATA[safari]]></category>
		<category><![CDATA[v8]]></category>
		<category><![CDATA[WebKit]]></category>

		<guid isPermaLink="false">http://robert.accettura.com/?p=1950</guid>
		<description><![CDATA[I figured I&#8217;d blog my initial thoughts on Google chrome. Rather than a hard to read essay, I figured bullet points are easier to read/scan, so that&#8217;s what I&#8217;ll do. Announcement Another One Bites the Dust &#8211; The classic Queen &#8230; <a href="http://robert.accettura.com/blog/2008/09/02/initial-thoughts-on-google-chrome/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I figured I&#8217;d blog my initial thoughts on Google chrome.  Rather than a hard to read essay, I figured bullet points are easier to read/scan, so that&#8217;s what I&#8217;ll do.</p>
<h4>Announcement</h4>
<ul>
<li><strong><a href="http://www.youtube.com/watch?v=hMenB9Ywh2Q" class="youtube">Another One Bites the Dust</a></strong> &#8211; The classic Queen song was played both before and after the presentation.  I can&#8217;t help to think this was an intentional joke about a browser biting the dust.</li>
<li><strong>From Scratch</strong> &#8211; How can a browser be both written from scratch, and based on the existing WebKit at the same time? Is this a bug? <img src='http://robert.accettura.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </li>
<li><strong>Ben Goodger</strong> &#8211; Did a good job selling the UI.</li>
<li><strong>BSD License</strong> &#8211; All of it is BSD licensed.  Very interesting that it&#8217;s not <a href="http://robert.accettura.com/blog/2008/02/28/apples-api-advantage/">pulling a Safari</a>.  <a href="http://code.google.com/p/chromium/">Chromium Project</a>, <a href="http://code.google.com/p/v8/">V8</a>.</li>
<li><strong>Incognito Mode</strong> &#8211; Ben/Brian discussed it without mentioning the word &#8220;Porn&#8221;, though you can somewhat tell that they were both dying to use the &#8220;P&#8221; word&#8230;. uhh for research&#8230; for a friend!</li>
<li><strong>Static Content Performance</strong> &#8211; As shown in the demonstration: IE7: 220.64ms, Chrome: 77.28ms.  Less is more.</li>
<li><strong>Dynamic Content Performance</strong> &#8211; As shown in the demonstration: IE7: 5.8 RPH, Chrome: 569.3RPM.  More is more.</li>
<li><strong>Search Box Missing</strong> &#8211; I agree with merging the search box with the url bar.  It makes sense and results in a cleaner UI.</li>
</ul>
<h4>My Testing</h4>
<ul>
<li><strong>Build</strong> &#8211; This is build  0.2.149.27 (1583)</li>
<li><strong>Useragent</strong> &#8211; <code>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.27 Safari/525.13</code>.  Noteworthy that they keep &#8220;<code>Safari</code>&#8221; in there.  This looks like what I&#8217;d expect.</li>
<li><strong>Bug Type</strong> &#8211; &#8220;reporter&#8221; feature has a &#8220;Bug type&#8221; called &#8220;browser crash&#8230; go boom&#8221;.  I like jokes in software.</li>
<li><strong>Tubes</strong> &#8211; The gears plugin in the chrome install has the file description &#8220;These are the Gears that power the tubes!&#8221;.  Awesome Ted Stevens reference.</li>
<li><strong>History View</strong> &#8211; I always wanted the history view in Firefox to be in a page rather than a sidebar.  I understand the thought behind the implementation, but when you see how Chrome is laid out, it&#8217;s clearly superior.</li>
<li><strong>No PPC Support</strong> &#8211;  Because of how V8 works, I <em>strongly suspect</em> Google Chrome will never support Mac/PPC despite it still being supported by Apple until (likely) 10.6.  In the press conference they said anyone can port V8 to another platform, if you have 3-4 months.  Doubt they will use any other engine for that one platform.  I&#8217;d say it&#8217;s toast.</li>
<li><strong>Chrome API</strong> &#8211; The announcement mentioned plans for an extension API.  Looking at the files it ships, it looks like almost all dll&#8217;s.  Because of this I doubt we&#8217;ll see a method as simple as Firefox.  Not sure how the interface is put together but it doesn&#8217;t look like anything as flexible as XUL, Boxely or XAML.</li>
<li><strong>about:</strong> &#8211; So far I&#8217;ve found <code>about:</code>, <code>about:memory</code>, <code>about:plugins</code>.</li>
<li><strong>Slickspeed Test</strong> &#8211; Ran a test and found Chrome did 115ms, 130ms, Safari 3.1 did: 28ms, 68ms, while Firefox 3 did 179ms, 294ms (prototype, jQuery).  Interesting that Safari selectors are still faster.</li>
<li><strong>Walt Mossberg</strong> &#8211; Everyone&#8217;s favorite tech writer Walt Mossberg <a href="http://ptech.allthingsd.com/20080902/first-test-of-googles-new-browser/">wrote</a>:<br />
<blockquote cite="http://ptech.allthingsd.com/20080902/first-test-of-googles-new-browser/"><p>Despite Googleâ€™s claims that Chrome is fast, it was notably slower in my tests at the common task of launching Web pages than either Firefox or Safari. However, it proved faster than the latest version of IE â€” also a beta version â€” called IE8.</p></blockquote>
</li>
<li><strong>Icon</strong> &#8211; Daniel Glazman identified the <a href="http://www.glazman.org/weblog/dotclear/index.php?post/2008/09/02/Deja-vu">source of inspiration for the icon</a>.</li>
<li><strong>Phone Home</strong> &#8211; Matt Cutts has a blog post on <a href="http://www.mattcutts.com/blog/google-chrome-communication/">when Chrome phones home</a></li>
<li><strong>Omnibox</strong> &#8211; It&#8217;s ability to find new search engines is pretty neat&#8230; wonder how well that really works in day to day browsing though.  Otherwise it&#8217;s essentially an Awesomebar to me.</li>
<li><strong>Application Shortcut</strong> &#8211; The Prism-like functionality is just that.  Essentially it just passes the url as a param into the Chrome exe via a shortcut.  Looks like unless Gears is used you&#8217;ll use the Favicon which looks pretty bad.</li>
<li><strong>Download Manager</strong> &#8211; The download manager is pretty cool, but if you download a number of files, I think this interface can get pretty cumbersome.  Just like Thunderbird with a lot of attachments.</li>
<li><strong>Font Rendering</strong> &#8211; It looks like they are using <a href="http://robert.accettura.com/blog/2008/03/25/gdi-text-rendering-for-safari-on-windows/">GDI Text rendering</a> to avoid that blurry mess that Safari uses on Windows.  I suspect Apple will do the same soon.</li>
</ul>
<p>Overall it seems pretty smooth.  From what I&#8217;ve seen, the process model does result in more memory in total than Firefox 3, since most tabs I open stay open for quite a while.  It&#8217;s clearly still a little rough, but it&#8217;s not even out for 12hrs yet.</p>
<p>I await a Mac release.  I just realized <a href="http://weblogs.mozillazine.org/pinkerton/archives/019560.html">Pinkerton</a> is working on Chromium as well, so I have a feeling the Mac release won&#8217;t suck but will be a real port that looks and feels like a Mac application should.</p>
<p>I don&#8217;t think it was mentioned in the press conference, but the <a href="http://blog.chromium.org/">Chromium blog</a> is open.</p>
<p>Wired has a great article on <a href="http://www.wired.com/techbiz/it/magazine/16-10/mf_chrome">inside the project</a>.  In addition to the <a href="http://robert.accettura.com/blog/2008/09/01/google-browser-redux-ii/">names I mentioned yesterday</a>, Bryan Ryner was also involved in at least the prototype.</p>
<p>I&#8217;ll make one prediction: The code most likely to find it&#8217;s way into other browsers is the GreenBorders stuff.  It was originally for IE/Firefox, making it most suitable for possible adaptation to be included in other browsers.  I&#8217;m not sure how much of it remains and how easy to adapt it would be though.</p>
<p>I&#8217;ll leave this &#8220;review&#8221; right here and unfinished since it&#8217;s still an ongoing project.  Just wanted to share my initial thoughts.  I&#8217;ll follow up at some point in the future when I feel it&#8217;s right to do so.</p>
<p>Any thoughts/additions?  Feel free to leave a comment.</p>
<p><strong>Edit [9/2/2008 @ 10:55 PM EST]</strong> &#8211; Added prediction about GreenBorders and link to Wired Article.
<div id="rja_commentCountImage"><a href="http://robert.accettura.com/?p=1950#comments"><img src="http://robert.accettura.com/wp-content/commentCount/2008/09/03e7d2e.gif" alt="Comment Count" style="border:0;" /></a></div>
]]></content:encoded>
			<wfw:commentRss>http://robert.accettura.com/blog/2008/09/02/initial-thoughts-on-google-chrome/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>Opera&#8217;s Evangelism</title>
		<link>http://robert.accettura.com/blog/2008/06/25/operas-evangelism/</link>
		<comments>http://robert.accettura.com/blog/2008/06/25/operas-evangelism/#comments</comments>
		<pubDate>Thu, 26 Jun 2008 01:31:48 +0000</pubDate>
		<dc:creator>Robert</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[evangelism]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[ie 8]]></category>
		<category><![CDATA[opera]]></category>
		<category><![CDATA[Reporter]]></category>
		<category><![CDATA[safari]]></category>

		<guid isPermaLink="false">http://robert.accettura.com/?p=1805</guid>
		<description><![CDATA[Opera is said to be sending evangelism emails to websites that have compatibility problems with their browser. What&#8217;s interesting is that they are customizing the emails with actual fixes for the problems. This is pretty clever. In theory it will &#8230; <a href="http://robert.accettura.com/blog/2008/06/25/operas-evangelism/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Opera is said to be <a href="http://www.techcrunchit.com/2008/06/25/opera-sends-website-owners-auto-compliance-feedback/">sending evangelism emails</a> to websites that have compatibility problems with their browser.  What&#8217;s interesting is that they are customizing the emails with actual fixes for the problems.  This is pretty clever.  In theory it will improve the problems regarding compatibility and make the web more standards compliant (which is where Opera excels). </p>
<p>One thing I do question is if webmasters will read it, at least where it matters.  Most large companies have a contact form, or an email address, but it&#8217;s often forwarded to customer support, or sometimes just into a giant bin where a handful get processed.  Will the information get to the people who need it?  I suspect it will for small companies who read all the email they get from the web.  For large companies, I doubt it, and that&#8217;s where I think it matters the most.  The bigger sites that the majority of the web visit.</p>
<p>Regardless, it&#8217;s interesting to see, for me in particular since I wrote <a href="http://reporter.mozilla.org">reporter</a>.  I suspect the best efforts are still to encourage the industry as a whole to adopt best practice.  Considering the move to go mobile, and be more flexible on the front-end, using standards is just becoming more of a requirement.  I think that will ultimately end up being the winning effort.  It&#8217;s already winning as newer sites are generally pretty good when it comes to standards.  The old ones will take time.</p>
<p>With Safari 3 and Opera 9.5 out, Firefox 3 taking off, IE 8 coming soon, it&#8217;s pretty obvious that standards are the future.
<div id="rja_commentCountImage"><a href="http://robert.accettura.com/?p=1805#comments"><img src="http://robert.accettura.com/wp-content/commentCount/2008/06/7ffd85d.gif" alt="Comment Count" style="border:0;" /></a></div>
]]></content:encoded>
			<wfw:commentRss>http://robert.accettura.com/blog/2008/06/25/operas-evangelism/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Tramp</title>
		<link>http://robert.accettura.com/blog/2008/06/20/tramp/</link>
		<comments>http://robert.accettura.com/blog/2008/06/20/tramp/#comments</comments>
		<pubDate>Fri, 20 Jun 2008 13:33:12 +0000</pubDate>
		<dc:creator>Robert</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[comic]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[joy of tech]]></category>
		<category><![CDATA[opera]]></category>
		<category><![CDATA[safari]]></category>

		<guid isPermaLink="false">http://robert.accettura.com/?p=1802</guid>
		<description><![CDATA[Firefox was featured in a Joy of Tech comic today. I think IE and Safari are just jealous. Enjoy.]]></description>
			<content:encoded><![CDATA[<p>Firefox was featured in a <a href="http://www.geekculture.com/joyoftech/joyarchives/1120.html">Joy of Tech comic</a> today.  I think IE and Safari are just jealous.  Enjoy.  <img src='http://robert.accettura.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />
<div id="rja_commentCountImage"><a href="http://robert.accettura.com/?p=1802#comments"><img src="http://robert.accettura.com/wp-content/commentCount/2008/06/dc40b71.gif" alt="Comment Count" style="border:0;" /></a></div>
]]></content:encoded>
			<wfw:commentRss>http://robert.accettura.com/blog/2008/06/20/tramp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Safari&#8217;s New JS Interpreter: SquirrelFish</title>
		<link>http://robert.accettura.com/blog/2008/06/03/safaris-new-js-interpreter-squirrelfish/</link>
		<comments>http://robert.accettura.com/blog/2008/06/03/safaris-new-js-interpreter-squirrelfish/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 02:27:00 +0000</pubDate>
		<dc:creator>Robert</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[3g]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[javascript interpreter]]></category>
		<category><![CDATA[mozilla2]]></category>
		<category><![CDATA[safari]]></category>
		<category><![CDATA[squirrelfish]]></category>
		<category><![CDATA[tamarin]]></category>
		<category><![CDATA[WebKit]]></category>

		<guid isPermaLink="false">http://robert.accettura.com/?p=1773</guid>
		<description><![CDATA[There&#8217;s an announcement on the Safari blog about SquirrelFish, their new JS interpreter. To sum it up: SquirrelFish is a register-based, direct-threaded, high-level bytecode engine, with a sliding register window calling convention. It lazily generates bytecodes from a syntax tree, &#8230; <a href="http://robert.accettura.com/blog/2008/06/03/safaris-new-js-interpreter-squirrelfish/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>There&#8217;s an announcement on the Safari blog about <a href="http://webkit.org/blog/189/announcing-squirrelfish/">SquirrelFish</a>, their new JS interpreter.  To sum it up:</p>
<blockquote cite="http://webkit.org/blog/189/announcing-squirrelfish/"><p>
SquirrelFish is a register-based, direct-threaded, high-level bytecode engine, with a sliding register window calling convention. It lazily generates bytecodes from a syntax tree, using a simple one-pass compiler with built-in copy propagation.
</p></blockquote>
<p>Some performance data can be <a href="http://summerofjsc.blogspot.com/2008/06/squirrelfish-has-landed.html">found here</a>, as well as <a href="http://www.satine.org/archives/2008/06/03/squirrelfish-is-faster-than-tamarin/">here</a>, which even tests against Tamarin (slated for inclusion in Mozilla2).  I think the motive for this move might have been best summarized here:</p>
<blockquote cite="http://www.satine.org/archives/2008/06/03/squirrelfish-is-faster-than-tamarin/">
<ol>
<li>I can imagine the â€œperformance per wattâ€? power consumption for SquirrelFish is also much lower. Good for my iPhoneâ€™s battery life.</li>
</ol>
</blockquote>
<p>Especially with the iPhone going 3G next week which will consume more power, making a web browser be as efficient as possible with CPU cycles not only makes the experience better, but will save battery life.  This doesn&#8217;t just impact the iPhone as Google&#8217;s <a href="http://robert.accettura.com/blog/tag/android/">Android</a> also includes WebKit.</p>
<p>David Mandelin has some analysis and comparison to the Mozilla work being done on <a href="http://blog.mozilla.com/dmandelin/2008/06/03/squirrelfish/">his blog</a>.</p>
<p>It&#8217;s pretty interesting stuff.
<div id="rja_commentCountImage"><a href="http://robert.accettura.com/?p=1773#comments"><img src="http://robert.accettura.com/wp-content/commentCount/2008/06/4abe17a.gif" alt="Comment Count" style="border:0;" /></a></div>
]]></content:encoded>
			<wfw:commentRss>http://robert.accettura.com/blog/2008/06/03/safaris-new-js-interpreter-squirrelfish/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Rebreaking The Web</title>
		<link>http://robert.accettura.com/blog/2008/05/29/rebreaking-the-web/</link>
		<comments>http://robert.accettura.com/blog/2008/05/29/rebreaking-the-web/#comments</comments>
		<pubDate>Fri, 30 May 2008 02:10:33 +0000</pubDate>
		<dc:creator>Robert</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[adobe]]></category>
		<category><![CDATA[apng]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[BrowserPlus]]></category>
		<category><![CDATA[canvas]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[firefox 3]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[google-gears]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[html 5]]></category>
		<category><![CDATA[ie]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[opera]]></category>
		<category><![CDATA[safari]]></category>
		<category><![CDATA[WHATWG]]></category>
		<category><![CDATA[yahoo]]></category>

		<guid isPermaLink="false">http://robert.accettura.com/?p=1761</guid>
		<description><![CDATA[It&#8217;s happening again. Once upon a time, browser vendors started adding their own features without consulting with each other and agreeing upon standards. What they created was a giant mess of inconsistencies across browsers and platforms that is still in &#8230; <a href="http://robert.accettura.com/blog/2008/05/29/rebreaking-the-web/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s happening again.  Once upon a time, browser vendors started adding their own features without consulting with each other and agreeing upon standards.  What they created was a giant mess of inconsistencies across browsers and platforms that is still in effect today.  Ask any web developer and they can tell you of the pains that they have suffered trying to make seemingly trivial things work everywhere consistently.  It&#8217;s no easy task.  Before IE 7, even an ajax required something along the lines of:</p>
<pre>

var httpRequest;
if (window.XMLHttpRequest) { // Mozilla, Safari, ...
    httpRequest = new XMLHttpRequest();
} else if (window.ActiveXObject) { // IE
    httpRequest = new ActiveXObject(&quot;Microsoft.XMLHTTP&quot;);
}
</pre>
<p>That&#8217;s right, IE 6 didn&#8217;t support the native xmlHttpRequest object (<a href="http://developer.mozilla.org/en/docs/AJAX:Getting_Started#Step_1_.E2.80.93_How_to_Make_an_HTTP_Request">more here</a>).  This is just one of many examples in JavaScript and CSS.  <code>document.all</code> anyone?</p>
<p>The end result of this problem became to be known as the &#8220;Web Standards&#8221; movement.  Simply put it&#8217;s an idea that code should follow a standard that results in consistent output across all browsers on various platforms.  Write once, run anywhere.  While it&#8217;s taken years for this to manifest, it&#8217;s slowly become a reality.  Firefox, Safari, Opera have fairly consistent rendering (at least in comparison to the mess of just a few years ago on the browser scene.  IE 6 was fairly poor in terms of modern web development, but IE 7 made progress, and IE 8 is Microsoft&#8217;s greatest effort to date to bring their browser up to speed.</p>
<p><span id="more-1761"></span></p>
<p>Unfortunately, all that &#8220;progress&#8221; is really catch up and making specs from several years ago work across browsers as the biggest area of problems (<a href="http://www.w3.org/TR/REC-CSS2/">CSS 2</a>) become a recommendation in 1998.  10 years and a few days ago.  Web sites, and developers want to do new things.  </p>
<p>As a result groups like <a href="http://www.whatwg.org">WHATWG </a> and   <a href="http://www.w3.org/html/wg/html5/">HTML 5</a> formed with the intent to provide modern features such as 2D drawing (canvas), media playback, drag and drop, offline mode, and storage.  All things desperately desired by web developers.  Some of this stuff to date has been supplemented by the use of plugins such as Flash which can provide some of this functionality, in particular video.  It should be noted the development of standards is a historically slow process since it&#8217;s essentially a bunch of geeks arguing until their keyboards wear out.  This process takes a <a href="http://wiki.whatwg.org/wiki/FAQ#When_will_HTML_5_be_finished.3F">long time</a>.</p>
<p>To speed things up, some once again bypassed standards and instead decided to implement things on their own:</p>
<ul>
<li>Apple implemented Canvas, which has some notable <a href="http://en.wikipedia.org/wiki/Canvas_%28HTML_element%29#Reactions">concerns regarding intellectual property</a>, though can still be standardized (and is <a href="http://www.w3.org/html/wg/html5/#the-canvas">still in the HTML5 specs</a> as I&#8217;m typing this). </li>
<li>Google released <a href="http://gears.google.com/">Gears</a> which originally provided offline support for web browsers, but has since expanded to allow for better desktop integration and running javascript in the background on browsers it supports.</li>
<li>Yahoo just announced <a href="http://browserplus.yahoo.com/">BrowserPlus</a>, which is an API &#8220;that allows developers to create rich web applications with desktop capabilities&#8221; (that&#8217;s verbatim from their page).</li>
<li>Mozilla added to Firefox 3 <a href="http://developer.mozilla.org/en/docs/Online_and_offline_events">Online/Offline events</a>, <a href="http://developer.mozilla.org/en/docs/Web-based_protocol_handlers">Web-based protocol handling</a>, which are both part of the WHATWG Web Application 1.0 specs.  In addition, <a href="http://developer.mozilla.org/en/docs/Animated_PNG_graphics">APNG</a> and <a href="http://developer.mozilla.org/en/docs/Drawing_text_using_a_canvas">text extensions to Canvas</a> were added, though it&#8217;s noted that they are experimental and essentially Firefox only for now.</li>
</ul>
<p>There are dozens of other little things in various browsers that are specific to them, but I won&#8217;t even go into that.  These are just the more high profile things at this time.</p>
<p>Does anyone else see the problem here?  At the rate things are progressing, it&#8217;s going to be pretty tough to build a competitive and user-friendly web application without requiring at least one framework being installed on the client side.  This means before a user can enjoy a good web experience they will need to install:</p>
<ul>
<li>Standards Compliant Web Browser (may come with OS)</li>
<li>Latest version of Adobe Flash (essentially the video standard right now)</li>
<li>BrowserPlus (for some sites)</li>
<li>Google Gears (for some sites)</li>
</ul>
<p>This really is starting to feel like another browser-bubble, this one being more of a &#8220;browser feature bubble&#8221;.  People rapidly trying to add features to meet application needs without standardizing.  This time instead of building it all into the browser, they are also providing plugins to add the functionality.  This is marginally better at best.  While it allows for support on multiple browsers/platforms it restricts innovation since not all browsers/platforms are supported.</p>
<p>Google Gears still doesn&#8217;t support the iPhone, despite it running in Safari due to Apple&#8217;s restrictions on 3rd party software.  It also doesn&#8217;t run on all portable Linux devices, or Blackberry&#8217;s.  Not to mention Opera or Camino.  It works on other Mozilla browsers that support extensions provided you tell your users to follow <a href="http://code.google.com/support/bin/answer.py?answer=83191&#038;topic=11691">these instructions</a> (you can essentially call that &#8220;unsupported&#8221;).  </p>
<p>Yahoo&#8217;s BrowserPlus is no darling either.  As of yet, it only supports Intel Mac&#8217;s running 10.4 or later (sorry PPC millions), and only Windows / Mac running Firefox 2+ or IE 7+.  That leaves out millions of IE 6, Safari, and Opera users.  Plus all of the mobile users (who are growing in number).  Yahoo promises that will improve, but we&#8217;ve got to wait for Yahoo engineers to get around to that.  If Yahoo is acquired by someone, who knows what that companies priorities will be for this project.</p>
<p>Apple implemented Canvas in Safari, Mozilla implemented it in Firefox.  But it&#8217;s adoption has been slow from a developer&#8217;s point of view since IE doesn&#8217;t support it.    There are several libraries (<a href="http://code.google.com/p/explorercanvas/">including one by Google</a>) that attempt to add support, but they are pretty slow and don&#8217;t provide the same experience to IE users (in particular older IE 6 users).  APNG is supported in Firefox 3 and Opera 9.5, both not released just yet.  APNG degrades nicely, but if your using an animation, you want an animation for all users, not just Firefox and Opera users.</p>
<p>Yes, adoption can grow for canvas, Yahoo and Google can support more platforms and browsers, but that doesn&#8217;t fix the root problems here:</p>
<ul>
<li>The entire web is waiting on a company to update their enhancements to support a platform/browser.  Open sourcing the code doesn&#8217;t really fix the problem since distribution is still problematic.  Also just increases the chances of forking which makes it even more painful.  Installing a browser in bits and pieces sucks.  Users shouldn&#8217;t be subjected to that.</li>
<li>There are multiple API&#8217;s to essentially do the same thing (drag &#038; drop, offline support, video, etc.).</li>
</ul>
<p>Does anyone else see this new form of fragmenting to be problematic?</p>
<p>While I agree the features each vendor is adding in are desired, I don&#8217;t think this is the right way to do it.  One of a few things will happen here:</p>
<ul>
<li>After a period of time, one or more of these API&#8217;s will become deprecated as one becomes dominant.  That&#8217;s a major pain for developers who choose the &#8220;wrong&#8221; one, and an expense for companies who are in that situation.  Nobody wants to be in this situation.</li>
<li>Things will continue to fragment and we&#8217;ll be back to the &#8220;Designed For Netscape&#8221; era, but it will be &#8220;Designed for Firefox 3+, Google Gears, Flash 9.0 r124, whatever&#8221;.  I get a chill just thinking about it.</li>
<li>Horrifically complicated code that essentially supports multiple products by using a subset of their functionality.  This might be the &#8220;best&#8221; and it still sucks on a massive scale since it increases costs for development and decreases fun.  You could use a JS library to abstract functionality to a more platform neutral API, but more libraries add overhead you may not want.  Not to mention more code your relying on someone else for.</li>
</ul>
<p>None of these are a good outcome.  </p>
<p>I&#8217;m not saying that the standards route is perfect.  There&#8217;s no binding requirement for anyone to adopt anything, or even accomplish a final spec.  There are many half implemented specs, and many that never go anywhere.  Perhaps that&#8217;s part of the problem.  Perhaps it&#8217;s that standardization has historically been a closed process, though it&#8217;s slowly opening up (thanks WHATWG).  Participation is also pretty touch as not many can manage to read all that email.</p>
<p>Browser vendors are not without their faults either.  They are historically a slow to fully adopt specs, and generally don&#8217;t collaborate on where they will start their implementation.  Partial support is as good as no support unless a it&#8217;s adopted uniformly across all popular browsers.  Perhaps that&#8217;s a place that browser vendors can best help developers.  By simply agreeing to implement <code>X</code>Y.</p>
<p>That said, one could create a plugin that implements a standard.  It&#8217;s already be done.  Adobe released an <a href="http://www.adobe.com/svg/">SVG plugin</a> (prior to the whole Macromedia deal as I&#8217;m not sure what the status is considering the Flash business is a closed source competitor), there&#8217;s also an <a href="https://addons.mozilla.org/en-US/firefox/addon/824">XForms plugin</a> for Mozilla browsers.</p>
<p>I really hope some caution is used before we have a browser feature bubble.  This is just going to become a mess of technologies that nobody can keep up with.  A lot of progress has been made in the past few years to fix mistakes of the past.  Is this process of add-ons really the right method of giving web developers what they want?</p>
<p>To be fair, Google&#8217;s Aaron Boodman recently blogged regarding <a href="http://gearsblog.blogspot.com/2008/04/gears-and-standards.html">Google Gears and standards</a>.   And does indicate the desire to become become compatible with HTML5:</p>
<blockquote cite="http://gearsblog.blogspot.com/2008/04/gears-and-standards.html"><p>
Currently, the Gears Database and LocalServer modules are not fully compatible with the HTML5 proposals for the same functionality. This is only because those specs were written after Gears was released, and not because of any desire to be different. In fact, we were involved in the design of both HTML5 specs, and we are currently implementing the proposal for database access.
</p></blockquote>
<p>This is good, but it&#8217;s still a moving target on a moving target as Google Gears is in beta and still being changed to match specs which are still evolving.</p>
<p>To avoid any misconceptions, I do think these features are a good thing.  I like canvas, offline support, drag &#038; drop integration, and want to implement them myself as well.  But I don&#8217;t think the process to add them has been successful thus far.  I think it&#8217;s just asking for trouble later on and will take a long time to repair.  This isn&#8217;t about Firefox extensions, or javascript libraries like jQuery, YUI or Prototype.  I love them and use them every day.  This is about having non standard ways to do things that clearly need to be standardized (and are in the process of being standardized), and encouraging other developers to implement a method that&#8217;s tied to a particular piece of software.</p>
<p>Who is at fault here?  Pretty much everyone.  Standards bodies are to slow for a fast moving industry for starters.  Secondly browser vendors fail to coordinate their progress on spec implementations.  While nobody expects CSS 3 to be implemented overnight, of vendors would agree on milestones in which certain features would be implemented, that would greatly help implementation for web developers.  Lastly plugin developers need to ensure what they are offering is widely available, free of any licensing problems that would impede implementation in other products, and are on a parallel track for standardization.</p>
<p>The web wouldn&#8217;t have succeeded if you needed to install a plugin for a <code>&lt;a href=""/&gt;</code>, or <code>&lt;img/&gt;</code>.
<div id="rja_commentCountImage"><a href="http://robert.accettura.com/?p=1761#comments"><img src="http://robert.accettura.com/wp-content/commentCount/2008/05/7283518.gif" alt="Comment Count" style="border:0;" /></a></div>
]]></content:encoded>
			<wfw:commentRss>http://robert.accettura.com/blog/2008/05/29/rebreaking-the-web/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
	</channel>
</rss>

