A lot to process in Apple's recent developer's preview of iPhone OS 4.0 (which will be the next iPad OS as well.) I'm going to try to just give a quick run down.

Multi-tasking is finally arriving which has been a big missing piece at least in the sense of people talking about it being missing, if not in the sense that people actually ran into situations very often where they really needed it since the OS actually did multi-task - just not for 3rd party apps. In any case, it's here, and it looks to be pretty sophisticated in the sense of operating transparently to the user and not harming battery life very much. The trade off is that the implementation only allows specific activities to go on in the background. But these should cover what people want (allowing for VoIP, turn by turn GPS navigation, non iTunes background music streaming like Pandora.)

Apple also announced an in App ad platform, iAd, which allows developers to easily place ads inside their applications. This is something they could already do by themselves, but this makes it much easier. Ads are built completely in HTML5 and do not take you out of the application when clicked on (presently ads open in Safari, taking you away from the app.) Apple takes 40%, but does all the hosting and takes care of the transactions. Personally I don't care too much about this, but it seems like an okay deal if you're a developer and there are certainly lots of apps that I wouldn't mind advertising to be a part of if it means I can download them for free. In terms of AAPL this could be a pretty big deal I think.

And the giant Apple is great / evil debate continues to rage. Cory Doctorow is clearly the leader of the anti Apple camp with his post Why I won't buy an iPad (and think you shouldn't either). Gizmodo's Joel Johnson takes the bait other side with Cory Doctorow you are a consumer too. And these same arguments are played out in countless blogs and bulletin boards across the web. It's really interesting how polarizing the iPad (the iPhone OS really) is. I think I can see the danger that people like Cory are warning about. And I definitely feel the excitement of a new computing paradigm taking shape that iPad fans are swept up in. Like many things I don't think there is a clear side to come down on. Maybe I'm closest to Nicholas Carr's take which, if you're at all interested in this debate, I think is worth a read.

And lastly, now that the iPad has been in people's hands for a week we're starting to get some really thorough reviews. I'll go more into this later, but the major thing for me is what appears to be the only big negative. Apple just doesn't have document sharing and syncing worked out. This is exhaustively documented here. This is related to the general and radical way the iPhone OS deals with files. That is, the way it does away with the whole notion of a file system. This of course ties into the great debate above as the anti Apple camp sees this as only a bid for control while the other side sees it, variously, as the evolution of computing and a way to get this technology into the hands of everyone. But that debate is something of a trap I think if it stops us from thinking the real problem through. How can we make computers more simple, but not lose computing power in the process? Google's Android is perhaps way ahead in this one area as they really know how to use the cloud for storage. Apple is firmly tied to syncing through iTunes (attached through USB no less!) This could be the chink in Apple's armor. I don't think they have too long to get it right.

Oh yeah, and also there was a change in the developer's tools terms of service which kills Adobe's plans to allow Flash developers to cross compile to the iPhone (and Android, and Windows 7, etc...) Much ink is being spilled on this as an extension of the great debate but really this is a sideshow in my opinion. If I have time I'll put a short summary in comments but basically this part of the debate (although not necessarily the whole debate) is being blown out of proportion.
- jim 4-10-2010 4:58 pm

I haven't spent much time on the issue, but I think you're understating the change in terms of service for developers.
- mark 4-10-2010 5:37 pm


That very well could be.

It certainly kills Adobe's Flash to iPhone cross compiler plans, which most commentators take to be the point behind the change. And others, like Monotouch, look like they are out of luck too.

But I can see why Apple doesn't want a cross platform compatibility layer built on top of Cocoa Touch (which is the approved Apple tool chain for making native iPhone OS applications.) Write Once Run Anywhere (WORA) development tools (like what Java promised) tend to not make the best software for specific targets. They make software that runs across a variety of platforms, but the advantages (or just differences) of each specific platform are ironed over in order get the "run anywhere" part of the equation. And worse, from Apple's point of view, it takes the evolution of the whole software stack out of Apple's control.

If I can write in Flash and cross compile to a bunch of different platforms (iPhone, Android, Windows 7) then there is going to be a big monetary incentive to develop this way. But then when Apple introduces a new API they have to wait for Adobe to update their tools before developers using the Adobe tool chain have access to the new features. But Adobe would have no incentive to roll these changes out quickly, and might even be technically unable to take advantage of some features that couldn't be duplicated on other platforms. Or they might have political reasons for dragging their feet.

For sure Apple wants to control the whole thing (hardware and software) from the ground on up. I don't think anyone is doubting this. The disagreement is just over their motives for doing so (because they are greedy bastards out to ruin the world; because they are trying to radically redefine the human computer interface and they need total control to do so; or, more likely I think, some combination of the two.)

They went through a somewhat similar situation with OS X. They had internal projects to create a Windows compatibility layer on top of OS X so that Windows binaries could run along side Mac binaries (just like Mac OS 9 binaries can run inside Rosetta next to native OS X binaries.) But they didn't do it because if developers could just cross compile their Windows apps to OS X they would have no incentive to write native OS X programs. And Apple believed that their OS was significantly better than Windows and non native apps wouldn't be able to take advantage of any of those benefits. This resulted in Microsoft writing a native OS X Office suite that was a huge success and that introduced many new features on OS X before they even came to the Windows side. If Microsoft could have cross compiled you can guess what you would have gotten on OS X - a Windows clone that looked and felt like the Windows version. You can also see this all the time with Java apps for OS X. They run, but they just don't look or feel right. The native controls aren't the same. They don't follow all the OS X conventions. They lack a certain polish. And that's because they don't use the Apple developer tools.

So it's just another case of Apple thinks they know better than other people (often including you the consumer which really pisses some people off.) And that does sound arrogant and destined to be wrong the way most arrogant stances are. But you could also say that they just have a strong desire to build their product exactly the way they want to build it. They want it to run exactly the way they envision it. And to me that just sounds like what any artist (in the biggest definition of the word) would do. This isn't how I understand most companies go about things (for instance, most companies do extensive user research on new features and functions to see what works for people; Apple doesn't do this sort of testing - they build it the way Jobs wants it to be built and just figure people will realize that's what they want too after using it.) But I'm sort of glad that someone building consumer electronics is taking this route. It certainly has worked from an industrial design point of view. And they want the software design to all be similarly "Apple-y" which they can enforce to some degree by forcing people to only use their tools to build software.

My guess is that it's not a big deal in the sense that it won't force enough developers to abandon the platform to make any difference. And for the iPhone OS user it won't result in the unavailability of any particular application type that they might have had access to if Apple allowed these other tools to be used. So only certain developers who invested in non Apple supported tool chains will really be hurt. And that's genuinely a shame for them (and they are talking very loudly on the web.) But I just can't see it making any difference to anyone else.

But I've been wrong before</understatement>
- jim 4-10-2010 7:51 pm


Just wanted to add to my already too long reply above: of course I'm sure the developer lock in this helps create isn't lost on Apple. I just don't think that's the only reason they are going this way. But it sure does make them look like jerks. Still, I think for most people this doesn't matter (in the sense that most people will never hear of or understand this technical point about developer terms of service), and even for developers I don't think it will drive enough of them away to change the landscape of apps that get created for the platform. But I wish Apple would approach it differently.

I wish they would figure out their no filesystem document syncing issues even more though! If I was google I'd be hammering them on this point. That's the real weakness I see. I don't think the various lock in gambits are going to bother the target market. What matters is just whether things work seamlessly or not. And right now my sense is that they are close but not quite there.
- jim 4-11-2010 4:02 pm





add a comment to this page:

Your post will be captioned "posted by anonymous,"
or you may enter a guest username below:


Line breaks work. HTML tags will be stripped.