You’ve probably read how Apple slaps developers in the face, Twitter slaps developers in the face, and Adobe slaps intelligent humans in the face. These are all tempests in teapots, promoted by headline writers exaggerating to win more readers (and with my headline, I’m guilty as charged).
Developers of Twitter clients on mobile platforms are upset that Twitter bought Tweetie, a leading iPhone Twitter client, and intends to re-brand it and put it out for free. Dozens of Twitter clients have already appeared on the iPhone and competed in a features war, to the benefit of everyone involved. So Twitter is apparently “destroying” another market segment (as it says on the hastily distributed T-shirt). But really, is it so surprising that Twitter would do this? Accessing Twitter directly is of strategic importance to Twitter — it’s the natural, evolutionary path for the company to take. Developers who stake a claim on that path will most likely be run over. I wouldn’t be surprised if most Twitter client developers had already considered a Twitter acquisition as the best possible exit strategy. Besides, until Twitter comes up with a revenue model that ordinary humans can understand, developers should expect sudden shifts in offerings, new acquisitions, and new services that tread on existing ones.
According to the Apple-Adobe Flash controversy, there are iPhone and iPad developers (or wannabe developers) who feel entitled to use a non-Apple layer of software on top of Apple’s Cocoa Touch APIs to make their iPhone and iPad apps. There are complex arguments pro and con, but keep in mind that Apple never intended in the first place for the iPhone ecosystem to be open to all types of development.
From Apple’s perspective, prohibiting the use of Flash CS5 and MonoTouch to create iPhone apps makes complete sense. As John Gruber points out (in “Why Apple Changed Section 3.3.1“), “So what Apple does not want is for some other company to establish a de facto standard software platform on top of Cocoa Touch. Not Adobe’s Flash. Not .NET (through MonoTouch). If that were to happen, there’s no lock-in advantage.” Actually, if that were to happen, control over development could shift to companies like Adobe, as Gruber points out: “Consider a world where some other company’s cross-platform toolkit proved wildly popular. Then Apple releases major new features to iPhone OS, and that other company’s toolkit is slow to adopt them. At that point, it’s the other company that controls when third-party apps can make use of these features.” Apple wouldn’t want that, and frankly, as an iPhone or iPad user and developer, I wouldn’t want that.
I know the argument that lock-ins and closed systems stifle innovation, and in particular hurt small, innovative companies. And while that notion is somewhat true in some cases, it’s not true in all cases. I wrote a book about how Microsoft nearly monopolized the desktop and laptop computer industry with lock-ins that stifled innovation. However, as I pointed out then, its much smaller rival Apple found a way to not only survive but lead the industry forward and away from Microsoft. Cynics could liken Apple to a Napoleon stepping into the leadership vacuum left by the French Revolution (considering the Open Source movement as the Revolution). Even so, Apple’s dictatorship over its own ecosystem has produced a remarkably safe and easy computing and Web experience, and a vigorous challenge to computing-as-usual.
In any case, Apple really doesn’t have a monopoly (yet) on mobile computing. And Adobe is being far from altruistic — while its Flash layer enables Flash developers to port their apps to the iPhone, Adobe’s goal is to promote Flash development, not iPhone development. Adobe makes some of the best creative tools ever invented for managing media, and has enjoyed dominating the Web with Flash for a decade. Apple doesn’t want to lose any control over its platform, and it’s in Apple’s best interest to keep me-too Flash apps, which can run on other smart phones, from devaluing the the uniqueness of the native-iPhone-app experience.
While Apple’s rejection of Flash may be bad news to Flash developers, native iPhone developers who play by Apple’s rules are not affected. Web developers already enjoy a multiplicity of options and devices to develop for (whether that’s a blessing or a curse is anyone’s guess).
iPhone users actually benefit by Apple’s restrictive policies. Rejecting Flash means that Apple can offer a more battery-efficient multitasking model and keep its secure, sandbox approach for running apps. Developers relying on cross-platform tools to bring their designs to the iPhone-iPad world could end up with apps that are sluggish or don’t adhere strictly to Apple’s user interface guidelines. Users are spared having to navigate a plethora of inappropriately-designed apps to get to the good ones.
This last point is best expressed by Gruber: “Cross-platform software toolkits have never — ever — produced top-notch native apps for Apple platforms.” My experience with cross-platform development in the late 1990s, and with Mac versions of applications such as Microsoft Word, Excel, PowerPoint, and open-source software such as OpenOffice (vs. NeoOffice), confirm Gruber’s point. You won’t believe how happy I felt when I was finally able to move my work away from Word (and NeoOffice) to Apple’s native Pages application, now that the elegantly-designed Pages has all the features I need. I even like slideshows, now that I can use Keynote over PowerPoint.
And my point is this: developers are not really entitled to anything. The risk is great, but the payoff can also be great. Twitter developers need to steer clear of strategic paths that Twitter might take. Adobe Flash developers need to rethink their designs for the iPhone and iPad, and forget about using cross-platform tools. And all iPhone and iPad developers have to take Apple’s rules and guidelines seriously if they want to take advantage of its totally innovative approach to apps and computing. To ride that train, you have to jump on board. Watch out for the bulls, and don’t put your face up to be slapped — you gotta roll with the punches.