<?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>ryan norris &#187; Flash</title>
	<atom:link href="http://www.ryannorris.com/tag/flash/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ryannorris.com</link>
	<description>managing software teams and delivering great results</description>
	<lastBuildDate>Fri, 25 Jun 2010 13:44:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Adobe: Apple&#8217;s Vietnam</title>
		<link>http://www.ryannorris.com/2010/05/30/adobe-apples-vietnam/</link>
		<comments>http://www.ryannorris.com/2010/05/30/adobe-apples-vietnam/#comments</comments>
		<pubDate>Sun, 30 May 2010 17:38:47 +0000</pubDate>
		<dc:creator>Ryan Norris</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[adobe]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[GWT]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[itunes]]></category>

		<guid isPermaLink="false">http://www.ryannorris.com/?p=173</guid>
		<description><![CDATA[The iPhone OS 4 SDK licensing agreement has been, well, unpopular.  To anyone who has paid attention to Apple over the past 20 years, it&#8217;s certainly not surprising that they want to lock down the ecosystem.  This has been their modus operendi for as long as I can remember.  So while Apple&#8217;s &#8220;take the ball [...]]]></description>
			<content:encoded><![CDATA[<p>The iPhone OS 4 SDK licensing agreement has been, well, unpopular.  To anyone who has paid attention to Apple over the past 20 years, it&#8217;s certainly not surprising that they want to lock down the ecosystem.  This has been their modus operendi for as long as I can remember.  So while Apple&#8217;s &#8220;take the ball and go home&#8221; strategy certainly generates a roll of the eyes from many, what&#8217;s surprising is the indignation that Adobe developer&#8217;s have expressed in being locked out of Apple&#8217;s poker game.</p>
<p>That indignation seemed to find an ally in Google.  At <a title="Google I/O" href="http://code.google.com/events/io/2010/" target="_blank">Google I/O 2010</a>, there was much ballyhoo about open standards and open platforms.  There was direct mention of Flash being an important part of the internet at large, and Adobe fans seemed to have found a Mao for their Ho Chi Minh.  Outside of sharp words, Adobe had very little ammunition in this battle.  Adding Google as a key ally seemed at least to justify their position &#8211; even solidify a dynamic place in the marketplace for media delivery.</p>
<p>The politics of this war are less about openness of platform, however.  Apple&#8217;s exclusivity practices in the past few decades have been largely about limiting competition and thus maximizing margins from a niche product.  When the product suffered and competition increased in the early 90&#8242;s from Microsoft and others, Apple was only able to recover not by changing their strategy but by executing on the fundamentals that allowed this strategy to succeed in the first place &#8211; high quality.  Today, Apple has maximized the potential for the platform itself &#8211; whether it be a mobile device, laptop, or media center, to sustain it&#8217;s own profitability.  But with the computer and handheld market on lengthy cycles between purchases, maximizing revenue opportunity becomes a challenge of ensuring that customers are purchasing Apple product more frequently.  This is where the iTunes Music Store is so critically important to Apple&#8217;s strategy.</p>
<p>Flash as a platform is flawed, says Steve Jobs.  His arguments have some merit, particularly on handheld devices.  But once again, this is a proxy argument.  The problem with Flash isn&#8217;t that Jobs can&#8217;t control the content developed in the platform.  The problem is that by allowing Flash into the Apple ecosystem, Jobs would be opening a wormhole into an alternative media delivery platform.  Flash is a development tool &#8211; but by leaps and bounds it&#8217;s greatest claim in the frontier of the internet is multimedia content delivery.  YouTube, Brightcove, and Vimeo are all powered by Flash and all deliver the same content for free that Apple wants to be able to charge for.  This is where Apple dogma and Google dogma meet, and Adobe is simply a place for this war to be fought.</p>
<p>Adobe cannot win and remain sovereign in this battle.  Apple&#8217;s desktop platform is the chosen home for many creative&#8217;s who use Adobe&#8217;s landmark products like Photoshop and Fireworks.  Google owns YouTube, has <a title="GWT" href="http://www.ryannorris.com/category/gwt/" target="_self">built it&#8217;s own rich internet application framework</a>, and fully backs the HTML5 standard that allows the modern web browser to do all of the things one could only do with the support of Flash in the past.  Google has Adobe smiling with a knife at their back.  For Google, the relationship is convenient to buy time until Android devices overtake Apple devices (likely in 2011).  Apple&#8217;s aggression gives Adobe little choice but to ally with the greater but less immediate threat.</p>
<p>Apple&#8217;s fatal flaw in this fight is not the control over development for their devices, but how users will get media delivery to those devices.  It&#8217;s not that Google is on the opposite side of the debate &#8211; they simply don&#8217;t care.  Google is a data company that is using mobile platforms as another tool for understanding their users as to maximize the ad revenue that has made them so successful.  Whether or not the user buys their content from Amazon or Apple or Walmart is inconsequential.  If the user clicked an ad for one of those companies to buy an MP3 and Google made $.05 from that click &#8211; it&#8217;s been a successful day for Google.  The Google approach is open solely because it maximizes revenue potential by maximizing the channels that can generate that revenue &#8211; not because of some religious developer fervor.</p>
<p>So Adobe can scream and yell at Apple all they want about openness and freedom.  They have the backing now of a much stronger, much better positioned ally that could turn on them at any minute.  One move for Adobe could be to find a way to exclusively integrate their products with iTMS.  Such a move would at least leverage them against any passive Google aggression.  But ultimately they are but a proxy in the coming Apple/Google apocalypse.  To me, it&#8217;s more curious that Apple has decided to bring this battle to such an intermediary first, rather than to try to stunt the emergent competition in Google head on.  It could well be that the cost of such a direct war would be so great to Apple that they&#8217;d rather not play offense but instead focus on defense &#8211; ensuring exclusivity of content delivery on Apple platforms.  It could also well be that we&#8217;ll be watching TV on our Android devices in 2015 and forwarding through the &#8220;I&#8217;m an Android.  I&#8217;m an iPhone.&#8221; commercials.  Only John Hodgman will be wearing the Steve Jobs mock turtleneck.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ryannorris.com/2010/05/30/adobe-apples-vietnam/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Revenge of the Compiler &#8211; The Era of GWT and the Birth of Flash on the iPhone</title>
		<link>http://www.ryannorris.com/2009/10/13/revenge-of-the-compiler-the-era-of-gwt-and-the-birth-of-flash-on-the-iphone/</link>
		<comments>http://www.ryannorris.com/2009/10/13/revenge-of-the-compiler-the-era-of-gwt-and-the-birth-of-flash-on-the-iphone/#comments</comments>
		<pubDate>Wed, 14 Oct 2009 01:38:31 +0000</pubDate>
		<dc:creator>Ryan Norris</dc:creator>
				<category><![CDATA[Building Better Software]]></category>
		<category><![CDATA[Java Development]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Computer Science]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Geek]]></category>
		<category><![CDATA[GWT]]></category>

		<guid isPermaLink="false">http://www.ryannorris.com/?p=96</guid>
		<description><![CDATA[For a while now, interpreted languages have reigned.  They were fast to develop in, cheap to build teams around, and were less strict about the rules of the road than many of their more strongly-typed brethren.  But as the modes of web application delivery have changed &#8211; indeed, as the modes of any sort of [...]]]></description>
			<content:encoded><![CDATA[<p>For a while now, interpreted languages have reigned.  They were fast to develop in, cheap to build teams around, and were less strict about the rules of the road than many of their more strongly-typed brethren.  But as the modes of web application delivery have changed &#8211; indeed, as the modes of any sort of software delivery has changed &#8211; the era of the interpreter is likely in decline.  As platforms are stretched to their limits and developers look for new ways to deploy high-performing, scalable web and mobile applications &#8211; an old friend emerges from the fog of battle to demonstrate why it was such a valuable innovation 50 years ago.  Compiled software is back &#8211; this time to once again relegate a past generation of development platforms to the same museum as assembly.</p>
<p><span id="more-96"></span>What <a title="Perl" href="http://www.perl.org" target="_blank">Perl</a>, <a title="PHP" href="http://www.php.net" target="_blank">PHP</a>, <a title="Python" href="http://www.python.net" target="_blank">Python</a>, and <a title="Ruby" href="http://www.ruby-lang.org/" target="_blank">Ruby</a> have done for application development, particularly classic web application development, has been nothing short of revolutionary.  Take C out of the picture.  Facade it with modern concepts that young developers can take to quickly and get results with.  Lose all accountability for memory management.  Push the heavy lifting to the open source teams maintaining these languages, let them deal with security concerns.</p>
<p>But in the last few years, web applications have changed.  The focus has shifted to moving state management and logic to the browser.  Rich internet applications aim to deliver experiences and tools that simply can&#8217;t be solved by these scripting languages or even their more heavy-handed older siblings, J2EE and ASP.Net.  Javascript is the new soup du jour.  A slew of abstractions have grown up around the limited facilities of Javascript, all trying to simplify this new mode of development through quirky but innovative approaches to DOM management, component reuse, and RPC.  But all of them are still Javascript.  All of them still take the code written by the engineer and with limited optimization execute it with the browser runtime.  As the complexity of these applications has scaled, the task of making them scalable and performant has become sisyphean.  Web developers have always needed to deal with issues of cross-browser compatibility, interactions with different operating systems, etc.  But now more and more we are talking about the limited capabilities of the browser itself and how it doesn&#8217;t manage memory in our Javascript applications the way that we are magically accustomed to.  For all the RIA frameworks we have today &#8211; Flash, Silverlight, JavaFX, etc., there&#8217;s still only one platform we can count on to deliver client-centric browser applications, and that&#8217;s Javascript.</p>
<p>So when the cost of delivering these solutions begins to increase incongruently with the complexity of the functionality we are looking to deliver, what are we to do?</p>
<p>An interesting thing happened the other day in the mobile application space.  iPhone development &#8211; typically the domain of pompous Mac owners like myself and a few willing Webkit jockeys, suddenly opened it&#8217;s doors to Adobe&#8217;s Flash platform.  After months &#8211; no, years of wrangling &#8211; Adobe has finally found a way to play on Apple&#8217;s lucrative mobile platform.  But this isn&#8217;t <a title="Keith Peters" href="http://www.bit-101.com/blog/?p=2410" target="_blank">Keith Peters&#8217;</a> Flash.  This is Actionscript being compiled magically into native iPhone runtime applications.  It&#8217;s a stunning development, one drawing ire and concern about performance.  But it&#8217;s not the first time that a development platform hailed for it&#8217;s scalability and ease of entry now has been used to usurp a underlying native platform which has proven to be a barrier in and of itself into development for the target platform.</p>
<p><a title="Google Web Toolkit" href="http://code.google.com/webtoolkit/" target="_blank">Google Web Toolkit</a> started the latest generation of application development, with it&#8217;s seeds in Microsoft .Net&#8217;s CLR.</p>
<p>As I noted, Javascript development today is hard.  It requires a significant amount of skill and experience to do right, and there&#8217;s simply not enough talent around to deliver the types of applications that every web site should be delivering.  There are fantastic software platforms written in C &#8211; but as we saw in the initial explosion of web applications, C is not a language that lends itself well to a pool of experienced and <em>cheap </em>labor.  PHP was that language.  Perl was that language.  It distilled down the concepts an engineer needed to know about to deliver a reliable application and simplified those concepts &#8211; memory management, semaphores, I/O, etc.  It allowed engineers to focus on solving the business problems of the dot-com boom and subsequent flurries of enterprise IT demands.  Now that the nature of those problems have changed &#8211; PHP as a tool is simply a square peg for a round hole.  And given the dreadful performance of our target operating environment, an interpreted language on top of Javascript is not an option.  What is an option is another language platform that could be compiled into JavaScript, complete with optimizations for memory management and portability.  GWT made Java the potential language of choice when it came to RIA development in Javascript.  It once again gave power back to engineers to be able to focus less on the non-functional needs of the application and put the focus back on fulfilling the functional requirements.</p>
<p>While the performance of GWT is stunning and it&#8217;s architecture a stark deja vu of past optimizations approaches to software compilation &#8211; our other example may not quite have the grit.  Compiling ActionScript to Objective-C is a nice trick, but may only solve the problem of heterogeneous development environments for Flash developers who haven&#8217;t had the guts yet to get into Cocoa development.  Natively, Objective-C is rather optimized, with device performance on the iPhone of platform applications running remarkably well.  So the compiler optimizations that web applications gain from GWT development aren&#8217;t really there.</p>
<p>But guns are certainly drawn on the problems of complex platform development, whether it be the arcane and aging Javascript platform in the modern web browser or the stifled promise of mobile application development.  For years, the complexity of executing a piece of software on a mainframe (or older system) acted as a significant barrier to delivery of commercial software.  The innovation of the compiler changed all of that.  Fast-forward 50 years later and we see the same problem, and the same solution is staring right at us.  The odd natural selection of software languages will repeat itself it seems.  Once again, the compiler saves the day.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ryannorris.com/2009/10/13/revenge-of-the-compiler-the-era-of-gwt-and-the-birth-of-flash-on-the-iphone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
