A few more points that occurred to me, following up on my last post.
Whither the Mouse?
Since its inception in 1984, the Mac user interface has obviously been designed for desktop computers with a mouse and a keyboard. When notebook computers came along and we wanted to be able to use them without carrying a mouse everywhere, or without even a flat, stable surface to put the mouse on, they had to emulate the mouse as best they could. This may now be reversing.
In the announcement of Mac OS X Lion, there was great emphasis placed on the use of multitouch gestures as a means of control. I think Lion will be the first OS designed for notebooks with multitouch trackpads, with the desktop Macs left to emulate the MacBooks as best they can. If you consider that a sizeable majority of the hardware Apple sells today is mobile and primarily operated via some form of multitouch instead of a mouse, this move seems sensible. And all new desktop Macs ship with the multitouch-capable Magic Mouse as standard now.
The Costs of Supporting Java
With regard to Java, there’s been a few comments along the lines of “all the hardware Apple sells to Java developers must more than cover the cost of the handful of engineers needed to keep maintaining Java”. I think this underestimates the costs involved. Supporting Java means, in addition to the engineers, that:
- Java must be accounted for in development plans
- Java must be accounted for in QA plans
- Customer support needs to deal with it
- Security vulnerabilities need to be investigated and fixed
The true cost isn’t so much the money, it’s that it unavoidably diverts some of the company’s attention from things it would rather focus on. While continuing with Java support wouldn’t be hugely onerous for Apple, eliminating distractions that aren’t bringing much benefit can really help competitiveness.
Also, as the vast majority of Java work (since the switch to Intel) has been on the GUI, I’d expect the Java team knows the guts of the Mac GUI pretty well by now. Engineering talent isn’t exactly a fungible resource. There’s probably a development manager somewhere in Apple salivating at the thought of having the Java people on her team.
Apple and the Server Side
Folks have pointed out that Apple is a heavy user of server-side Java in their web services. I can think of many ways they can deal with that, and have no idea which option they’ll take. But I think we can be sure they’ve got a plan and aren’t leaving it to chance. And despite everyone (including me) getting very animated over “Apple dropping Java”, it’s worth remembering that their Java team isn’t going to be shutting down tomorrow.
More generally, Apple’s plans for the cloud are completely opaque to me right now. We’re all assuming they have big plans for cloud services: they built that huge new data centre, and their hardware strategy seems to imply more reliance on cloud services in the future. The iPad’s greatest weakness is that so much of its functionality, including just initialising it, requires USB synchronisation with a PC or Mac. MobileMe syncing is great, but it only works for a few things.
The new MacBook Air models were just announced, including one with an 11” screen, which I think is a first for Apple notebooks. When making the announcement, Steve Jobs said something like “we think this is the future of MacBooks”. With their emphasis on mobile, wireless use and limited storage, these too are crying out for more cloud services.
And I think this could be Apple’s greatest weakness. If I were Steve Jobs, the thing that would worry me most about Android isn’t its “openness” (however you care to define it), or the temporary situation of shelf-space in U.S. phone outlets, but the fact it is backed up by the world’s best cloud services. And they’re only going to get better. Obstacles remain, but the movement towards doing more and more in the cloud is inexorable. Where Google has no rival, Apple’s track record is not that great. The iTunes store is a huge success, obviously, but it’s not really all that “cloudy”, as you need a Mac with enough hard drive to hold all your content. MobileMe is expensive, and often unreliable and slow; it really only survives due to the first class client support on Mac and iOS. The iWork service is not bad, but lacks Google’s killer feature of collaborative editing. Apple has its work cut out for it when it comes to the cloud.
Flash, Core Animation and Multitouch
In my last post I claimed Flash didn’t support Core Animation or Multitouch. Well, @johnyanarella set me right on that. Flash does support both of these. I haven’t used that many Flash apps, so now I’m wondering to what extent the multitouch support is actually used in apps.