Saturday, 1 May 2010

How much of a hypocrite is Steve Jobs? [about Flash and censorship]

      Steve Jobs has posted a defence to his position on Flash and not surprisingly it’s full of errors and misrepresentations.
Let’s look at the points he makes:

First, there's open
      He asses that “Adobe’s Flash products are 100% proprietary. They are only available from Adobe, and Adobe has sole authority as to their future enhancement, pricing, etc.”
      Sure, Adobe’s Flash products are only available from Adobe. That’s what makes them Adobe’s.
      But there are many open source IDE’s, compilers, RTMP servers and players available.
      Also he claims that “By almost any definition, Flash is a closed system.”
      Flash is a complex system made up from many parts, but the most important part is the swf format. That is an open format, and you can write both a compiler and a player
without needing a license.
So if the swf is open what is Jobs referring to when he says “100% proprietary”?
It cannot be the RTMP and AMF formats since they are open. And the whole SDK with compiler and Flex framework is open.
     The one thing that is not fully open is Adobes own implementation of a Flash Player. Since Apple is one of the licensors behind H.264 one would think that Jobs would be aware of why Adobe cannot release it publicly. It contains proprietary codecs and hence cannot be made open by Adobe.
But if Jobs is concerned with proprietary products, maybe he should work for making H.264 open to help Adobe open the Flash Player as well?
And let’s not forget that the canvas is Apple’s proprietary technology.

Scecond, there's the full web
     Here Jobs claims that “Adobe has repeatedly said that Apple mobile devices cannot access ‘the full web’ because 75% of video on the web is in Flash. What they don’t say is that almost all this video is also available in a more modern format, H.264, and viewable on iPhones, iPods and iPads.”
     To claim that “almost all” the web would be the same as the “full web” is of course dishonest in itself, and in this case the “almost” is very broad since there is countless sites that have not bothered with HTML5 yet.
And he seems to forget that Flash is used for a lot more than displaying video. He does mention games, but seems to think that because there are many games for iPhone today there are no games on the web.
He’s trying to argue that Adobe are wrong when they say Flash is needed to access “the full web”, and in the middle of the argument he switches focus to the app store and how many games there are there. Clearly Jobs has a vision to replace the Internet with his tightly controlled app store, and is expecting users to to the same. But the argument was about the web, and the fact remains that apart from video there are a lot of apps, games and animations which cannot be viewed without Flash.

Third, there's reliability, security and performance
    The reliability and performance arguments never get’s old for Steve. I guess he still hasn’t bother with benchmarking to actually find out that his assumptions are bogus.
HTML5 and JS certainly does not provide greater stability or performance. That should be pretty clear to anyone familiar with the technologies.
Regarding security, looking at data from Secunia and the number of threats and time for them to get patched I would say that Flash has a rather good security record. It’s certainly not the case that JS is secure and Flash isn’t.

Fourth, there's battery life
    Here Jobs goes in to the importance of hardware encoding. What he seems to miss is that Adobe and several hardware manufacturers are cooperating to provide acceleration in Flash Player 10.1.
Of course Apple could have done the same if they where concerned with the battery life, but that would require some effort, and dumping Flash is of course easier.
And don’t forget that Apple is a licensor of H.264, and hence it’s natural Jobs want Flash to die. With Flash developers can freely choose codecs, but with HTML5 you need to make sure the users browsers supports the codec you use. This means in practice that encoding in H.264 will remain obligatory for some time. The reason is that Safari does not support open codecs like Ogg Theora because it’s open, while Mozilla does not support H.264 because it’s proprietary. So with HTML5 Apple has a chance to exert control over the choice of codec, but with the Flash Player H.264 will be optional.

Fifth, there's touch
     Oh dear, I cannot believe this is written by Jobs and not by one of his mindless drones : “Flash was designed for PCs using mice, not for touch screens using fingers. For example, many Flash websites rely on “rollovers”, which pop up menus or other elements when the mouse arrow hovers over a specific spot.”
     So Flash is bad because it has a roll over state…just like pretty much any other technology?
And “many websites rely on rollovers” is simply not true, just like there are very few HTML sites that rely on roll overs. He even goes on to claim that “most Flash websites need to be rewritten to support touch-based devices”.
     Maybe Jobs surfed to with his iPad and got upset?
Calm down Steve, it’s an old experiment and I can assure you that most sites using Flash do not rely on rollovers.
    And since it seems like Steve is a bit clueless about the development process, someone should explain to him that for sites that currently do rely on rollovers it’s a lot easier to change event type for your buttons than rewriting the whole app using a new technology.

Sixth, the most important reson
    This is the only point he does not try to support by lying or misrepresenting facts. He want’s full control over the platform, and if that means not providing a very often requested feature then so be it.
Of course it requires less effort to not have to work together with any third parties…a dictatorship is a very efficient form of government as well.
    Developers and customers expect a certain degree of interoperability and backwards compatibility. And one have to strike a balance between trying to keep the platform progressing and ensuring differentiation in the marketplace while also ensuring that developers and customers are happy.
    Looking at the many voices demanding Flash on the iPhone/iPad and developers outrage over section 3.3.1 it seems to me that Apple clearly is out of balance here, but time will tell. Personally I think a put option on Apple stock is looking better and better for each day.
    He ends with “Perhaps Adobe should focus more on creating great HTML5 tools for the future, and less on criticizing Apple for leaving the past behind.”
Adobe are working on HTML5 tools, but unlike Jobs they are obviously smart enough to realise that there is room for more than one technology.
    And claiming that Flash is the past is of course pure arrogance from Jobs. It’s a product that is very much alive making with frequent major updates, and that is currently used to serve the vast majority of the multimedia on the web.
    It’s designed specifically for delivering multimedia and rich applications in the browser, while HTML5 is an attempt to add that functionality to an aging mark-up language.

And now, just for laughs :)
  • Replace Adobe with Apple
  • Replace Flash with closed, as a catchall for Apple's myriad of closed technology

Adobe’s Flash products are 100% proprietary. They are only available from Adobe, and Adobe has sole authority as to their future enhancement, pricing, etc. While Adobe’s Flash products are widely available, this does not mean they are open, since they are controlled entirely by Adobe and available only from Adobe. By almost any definition, Flash is a closed system.

Apple’s closed products are 100% proprietary. They are only available from Apple, and Apple has sole authority as to their future enhancement, pricing, etc. While Apple’s closed products are widely available, this does not mean they are open, since they are controlled entirely by Apple and available only from Apple. By almost any definition, closed is a closed system.
     Of course this, although perfectly accurate, is nothing but a joke compared to how ridiculous his letter actually sounds like if you're to analyze and think through everything he says. I do give him, or whoever wrote that big bag of BS, credit for the style in which it is done and the skillful choice of words - seriously, the guy could be a science fiction novelist!

     But let us move on to the next "interesting" aspect of the iPhone 4.0 SDK license agreement and a  brief demo of the OS 4.0 multitasking.
     This is a priceless snapshot of The Man himself demoing a non-Objective-C/C+ (LUA-based) app on stage during the iPhone OS 4 launch.
     Ironically, given the iPhone SDK 3.3.1 language rollout that same day, and it's license agreement, that forbids the development of such applications.
     Clearly as a manager, our Steve has no idea about the implications his tiny clause has and that it actually not only denies developers the use of Flash on iPhone but also that more than half of the apps in the iStore are now using languages not approved by Apple. and should be withdrawn as they can't pass the approval process - however Apple change the rules to their liking all the time. It's not that the apps can't be recompiled to fit the new request, it's that it's clearly that every developer feels good to work with the tools he likes best and not the ones imposed on him.
     We're sure somebody got fired for pulling this practical joke on Jobs's demo phone, but heck it was worth to prove how much this guy really has no idea about the product he's selling.

Just look at him playing that non-Objective-C LUA-based app! Go Steve go! 

Many many thanks, Leo!