An Unexpected Opinion

For some reason Steve Jobs has lost his marbles. He doesn’t want developers to use abstraction layers such as Flash when developing applications for the iPhone.

His main argument:

We’ve been there before, and intermediate layers between the platform and the developer ultimately produces sub-standard apps and hinders the progress of the platform.

Ridiculous. In so many ways that I don’t know where to start. In no specific order:

  • What is an intermediate layer? Perhaps we should code in zeros and ones to prevent any intermediate layer? Am I allowed to layer my application? If so, do I need to code all layers again for my next application even when it means that I do a complete copy-paste?
  • Most application development is being done using intermediate layers (Java, .NET, Flash, Silverlight, Scripting Engines/environments, browsers) Besides offering a huge foundation to build upon these platforms also provide protection for the machine. Most intermediate layers create some sort of sandbox and protect the developer from making disastrous mistakes.
  • By tying an application to an intermediate layer is becomes easier to migrate the application to the next version of the hardware so progression of the platform is made easier because porting applications is less difficult.
  • Sub-standard applications can be written in any language. Intermediate layers have nothing to do with that. I even think that intermediate layers protect us from the most destructive errors.
  • Hardware is sold because of software. Of course, Apple has been very successful in selling hardware but the importance of software should not be overlooked. The amount of (good, diverse) available applications is essential to the success of a machine. The opener the platform for development the more applications will be available. Something that is being ignored(?) by Microsoft now that they are switching to Windows Phone 7 (Microsoft even made deployment of LOB applications questionable due to the fact that they only allow deployment via the Marketplace; a hint was given that the Marketplace might open up for private and enterprise distributions or even hacking an USB cable into the phone)

Am I missing something or can someone give Steve and Steve their marbles back?