iCloud and App Store Transition: Yojimbo

Today, Bare Bones Software posted an advisory to educate the users of Yojimbo (BB’s fab personal data archiver and organizer) about the transition from MobileMe to iCloud:

As one of the very first developers to adopt MobileMe for synchronization, we’re accustomed to working closely with Apple to address the complexities involved. iCloud represents a radical change in how data synchronization operates; it’s unfortunately not just a switch that developers can throw.

It’s easy for us all to think “Apple has this new iCloud service that’s way, way better than MobileMe. This is going to be great!” But a lot of developers are really feeling the pain. Products that were working just fine are now broken. Time, money, and resources that developers could be investing in making a great product even better must instead be spent just to keep their software working.

“So what’s the big deal?” you might wonder. “An app used to rely on MobileMe…now it has to use iCloud. iCloud is much better than MobileMe. Developers should quit whining, grit their teeth, and get on with it.”

They can’t. It’s horribly like a home renovation.

(And anybody who’s ever renovated a home is now shuddering.)

It’s not as easy as swapping the old cast-iron tub in the master bath for a whirlpool spa. You need to change the flooring so it’ll support the new tub. New pipes need to come in to feed it. The old water heater isn’t big enough for the new tub. You’ll need a new one of those, too. You hire a plumber to upgrade the house’s 50-year-old water service…

…And oh, ****. He can’t do the work without a construction permit. You go to your Town Hall. An inspector tells you that the plumbing in your 50-year-old house isn’t up to code, and your entire water service has to be upgraded. Your plumbing is perfectly safe mind you…it’s just that since the system was installed, the town chose to change their definition of “safe.”

See? All you wanted to do was take a bath with your spouse, like in that super-hot scene between Kevin Costner’s and Susan Sarandon’s butt-doubles in “Bull Durham.” And now, here you are, fighting a massive bureaucracy just so that you can continue to have running water in your house.

That’s what many Mac developers are dealing with right now. An app does syncing through MobileMe. Now, it needs to do it through iCloud. Fine. But Apple won’t let an app use iCloud unless it’s sold in the App Store. Fine. But Apple won’t approve an app for the App Store unless it’s sandboxed. And for many developers, sandboxing means that half of their app’s features will either no longer work at all, or will need to be dumbed way, way down. Selling your app there also means being cut off from any kind of simple and direct line of communication with your users.

The knock-forward list of problems here is a long one. My initial “what’s the harm?” reaction to the App Store’s requirements was based on the idea that a developer could still sell their apps outside of the Store if he or she wanted to. My attitude has changed. iCloud is just one example of a larger (and kind of nasty) problem: Apple is making the newest and most desirable features of the OS exclusively available to App Store software. How does that encourage developers to create the best apps possible?

No wonder so many developers are feeling a little bit smacked around by Apple. I wouldn’t necessarily read that conclusion into Bare Bones’ update page, of course. But that’s the impression I get from so many developers of so many popular apps. They’ve been sharing some profoundly sad stories with me over the past year. Yes, I’ve heard the phrase “that’s it; I’m out” at least once.

This is bad hoodoo. Very, very bad hoodoo. It doesn’t mean that MacOS is doomed. But it means that many apps aren’t going to be as good as they can possibly be. I worry that many of the best and most Mac developers are going to start to ask themselves if this is all worth it.