I’ve been struggling the past several months. What used to be a tingle of distaste for a brand has become a torrent of madness. Where once reason and uncertainty made me bite my tongue, familiarity has now bred contempt. I speak of course, of Apple.
In the interest of full disclosure, I’ll say here and now: I’ve never owned an Apple product. (I’ve also never employed a prostitute or smoked PCP, but I can still argue against their use.)
For the longest time, I avoided Apple products because the only things in that categorization were computers - and I knew how to use my PC quite well, thank you. Fast forward a decade and a half, Apple is the biggest sensation in tech. Even the pundits that despise Apple can’t keep their mouths shut about ‘em. (Myself included.)
Apple has graced us this month with the release of the iPad. For those of you not following the situation, the iPad is basically a giant iPod Touch:
Okay, so the hardware sucks. The browser sucks. Shouldn’t it be about the apps?
I’m a software developer, so I can appreciate “apps” - little nuggets of easy-to-maintain code and functionality that are sold individually, for cheap prices, to the masses - little nuggets of code that are small enough, I would be tempted to find a means to simultaneously develop for multiple app platforms easily, so that I can move on to the next app without hassle.
And you know what? Microsoft gets this. Google gets this. Apple hates it.
Fresh out of the pearly gates of Cupertino, the Apple iPhone OS 4 SDK license agreement says, amongst many things:
Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited).
What this means, in layman’s terms, for any programmer or software shop that used to sneak apps across the Apple border by cross-compiling their Flash, Java, or C# into C/C++/Objective-C before deployment, they are simply out of luck.
My brain is simply without recourse in its search for a plausible explanation. The most I can figure is, Apple doesn’t want the slew of upcoming Windows Phone 7 apps to be translated and submitted to the Apple App store. (That is, they want developers to pick a side and stay on it.) Or they just really really really want to absolutely kill Flash. It’s no secret that Jobs hates Flash. The fact that his complaints against Adobe and Flash are retorted with the reality that Apple doesn’t have any decent high-performance APIs to code against, doesn’t seem to weaken his resolve.
Despite my nay-saying in the past, and my general bias towards the Microsoft development stack, I have been secretly enthused the last 4 or 5 weeks with the possibility of writing a .NET app that would run on Windows, Xbox, Zune, & Windows Phone 7 – and then using Mono to run it on Mac, iPhone, iPod, and iPad – all with 90% shared code – but Apple has eliminated that possibility. I am no longer tempted to take a bite out of the Apple development community.
This one’s got a worm in it.
© Copyright 2012 Bruce Markham Theme Design by Bryan Bell newtelligence dasBlog 2.3.9074.18820 | Page rendered at Monday, February 06, 2012 8:13:10 AM (Eastern Standard Time, UTC-05:00)