Is HTML5 Ready for Prime Time vs. Native? (Mobile App Development) 2/26/11

In my last post I compared frameworks for building app-like mobile experiences with Web technologies: Sencha Touch, jQuery Mobile, jQTouch, and Titanium Mobile. For my own app, Pints, I went with Sencha Touch. But in truth there isn’t a clear winner: for a simpler, more page-based app I’d probably go with jQuery Mobile. (David Kaneda wrote a nice comparison of jQTouch and Sencha Touch — both of which he created. Much of what he says about jQTouch applies equally to jQuery Mobile.)

Each of these frameworks can help you toward the same goal: a cross-platform, native-like experience built on Web technologies. The fundamental question is: is that goal realistic? My answer is a qualified yes. Read More →

Dropbox on Eliminating Complex Features 2/3/11

There’s a fascinating discussion on Quora about how Dropbox beat the competition. This comment by Isaac Hall struck me:

After I left Syncplicity, I ran into the CEO of Dropbox and asked him my burning question: “Why don’t you support multi-folder synchronization?” His answer was classic Dropbox. They built multi-folder support early on and did limited beta testing with it, but they couldn’t get the UI right. It confused people and created too many questions. It was too hard for the average consumer to setup. So it got shelved.

Some tasks have an inherent complexity that even the best design can’t fix. At times they can be implemented as “power user” features, buried enough to stay out of novice users’ way. But when such a feature is in high demand users will find it and their product experiences will suffer.

Multi-folder synchronization is a useful feature. There are workarounds, but by omitting it Dropbox is forcing users to do things the Dropbox way instead of their own. They made an explicit and difficult trade-off: frustrate users a little by making them change their workflows, instead of frustrating them a lot by giving them a confusing experience they’d be guaranteed to use. And it worked out for them.

We often design by identifying user needs, prioritizing them, and then building the best product we can to meet them. This is a great reminder that it’s not that simple.

Comparing Mobile Web (HTML5) Frameworks: Sencha Touch, jQuery Mobile, jQTouch, Titanium 1/23/11

It’s been an exciting year for the mobile Web. Adoption of HTML5 and CSS3, improved performance in mobile browsers, and an explosion of mobile app frameworks mean it’s more feasible than ever to create rich, interactive Web experiences for mobile devices. Using a wrapper like PhoneGap, you can distribute them via the native app stores for iPhone, iPad, and Android —targeting multiple platforms with a single codebase.

Or can you?

I needed a platform for Pints — a mobile app that answers answer the question, “Which beer should I order?” As someone who works in Web technologies on a daily basis I saw HTML5 & friends as an alluring option.

Pints isn’t complicated: a home screen, a few lists screens, a few forms. Its greatest complexity lies at the data level: as an iPhone app destined for San Francisco bars it can’t possibly rely on an Internet connection, so it has to keep a local copy of the beer database and sync it with the server when that’s available. HTML5 has the necessary building blocks in the form of several offline storage options; it’s just a question of writing the synchronization code.

Mobile Web developers have a plethora of frameworks to do the heavy lifting for them: animated transitions, toolbars, buttons, list views, even offline storage. Most of these are new and the landscape is shifting rapidly. I started Pints in jQTouch, then migrated to jQuery Mobile, and finally rewrote the whole app (now in private beta) in Sencha Touch. Along the way I also investigated Appcelerator’s Titanium Mobile. Here’s what I found: Read More →

Pixel Perfect 11/11/10

Lately we’ve been using the term pixel perfect at AOL, a goal representing more than just pixels. Sensing some ambiguity in its interpretation, fellow AOLer Matt LaBarge created a good, concise definition: high-quality, usable, and flawless. But the conversation got me thinking…

I have a former colleague who’s infamous for his hatred of every product ever. It’s been known to drive me nuts: he looks at a promising, innovative, life-changing product and trashes it for some random detail.

But maybe…maybe I’m frustrated because I agree with him. He’s the little voice in the back of my head, the sinking feeling in my gut when a detail is out of place. That quiet, agonizing shattering of disbelief when the illusion of a perfect product comes apart.

Friends are often surprised at the anger I direct at Apple, coming as it does from someone in possession of his tenth Mac, third iPhone, and an iPad. Apple comes closer to pixel perfection than most, and that makes the moments when they don’t especially painful…especially when their track record is worsening and no one else has stepped up. I want the perfect product, and I think we can do better than anyone is today.

Pixel perfection is an asymptote. It’s the unattainable dream of a product whose every detail—pixel or otherwise—is flawless in the service of a clear, focused goal. We will never achieve pixel perfection. But we have to try, because the quest is what allows us to innovate, delight, and amaze.

A Tale of Two Ecosystems 10/30/10

Building on my last post, a further take on the forthcoming Mac App Store. Here’s how the next 18 months will go:

The Mac App Store releases to great fanfare. Existing iOS developers flock to it, re-releasing their apps with minimal modification. They’re joined by more obscure Mac developers who see a distribution opportunity. Established developers, lacking real incentive, stay where they are. Why invest in modifying an already-successful product for the App Store when the reward is reduced revenue and increased overhead?

The result is a success: many Mac users find and manage their software almost exclusively via the App Store. Most occasionally install an app via other means (games, plug-ins, Flash Player, Photoshop, Firefox, etc.) but these manage their own updates anyway, so everything’s fine. Pundits argue that the App Store has only added a layer to an already complex system, but for most users it’s simpler than before.

In the short term, the dearth of preexisting Mac developers in the App Store has a negative impact on user experience: App Store apps behave a little too much like iPad apps (since many began life that way). Things get sorted out in the long term but a disparity remains between the two ecosystems (i.e. the App Store and apps outside it). This hurts usability overall but no one cares because everything’s so damned shiny.

An ingenious group of hackers releases 4ppst0re (or possibly iFreedom), an open-source alternative to the App Store free of Apple’s restrictions and revenue-sharing. It never really catches on due to a mediocre UI and the fact that its ten superb apps are eclipsed by 9,990 others rejected by Apple for legitimate reasons, e.g. instability, uselessness, and/or sheer hideousness.

Unlikely plot twist: Apple, displeased with the two-part app ecosystem, drops the price of Mac OS X to $99 and locks it down iOS-style. Those interested in a “jailbroken” Mac can purchase Mac OS X Developer for $399 (hereinafter known as Mac OS NT). Apple Customer Service is inundated with calls from people who can’t understand why their new copy of Office won’t install, and why they can’t download Flash. In an interview Steve Jobs says, “If these people can’t figure out how to use their Macs they don’t deserve them.” Apple fanboys smash up a Best Buy.

 

This isn’t a bad future. Most users will have just a few apps outside the App Store ecosystem, and they’ll be reputable ones like Flash and MS Office. They’ll manage most of their apps through the Store, improving stability, security, and performance. Users who don’t discover and install new software today will begin to do so, aiding innovation and introducing far more people to the already vibrant community of small Mac developers.

And yet…it could be even better. The more advanced a user is, the more he’ll operate outside the App Store, and the fewer of its benefits he’ll enjoy. And while we power users are comfortable maintaining our own computers, we don’t like spending a weekend tracking down an elusive kernel panic or reinstalling our OSes. Everything that makes the App Store great for casual users would benefit power users too. If Apple eliminated the most severe of its restrictions and created a more favorable revenue-sharing arrangement for larger, established developers (say, a cap on per-license fees), the balance of these two ecosystems would shift dramatically toward the App Store, simplifying and improving the experience for everyone.

Mac App Store Reactions 10/21/10

I thought I’d jump into the fray with what I hope is an uncharacteristically non-ranty reaction.

The Good

One of the most powerful advantages of the iPad is its simplicity. Some of that simplicity comes via the App Store: every app is located, installed/uninstalled, and updated via the same route. There’s no need to manage multiple install processes or installations in a filesystem. Apps are vetted by Apple, which (censorship concerns aside) ensures a certain level of quality, stability, and safety. One has to be that much less of a power user to take advantage of the system. That’s great for users who don’t want to become computer geeks, in the same way that one no longer has to be an auto mechanic to own and operate a car.

The Mac App Store brings that to the Mac. Many users will probably get all their software via the App Store, and it’ll make their lives simpler and easier, giving them more power to customize their computers and less frustration managing them. That’s terrific, and probably where computing needs to go in order to maintain its place in people’s lives while reducing frustration and overhead.

The Bad

The App Store will work best when as many vendors as possible use it. A few things may deter them and/or create headaches for consumers:

  • Are major vendors like Adobe and Microsoft really going to be comfortable giving Apple 30% of their Mac revenue?
  • There is no way to return software to the iOS App store. That’s frustrating but not terrible when you’ve only paid $2.99…but what about when you’ve paid $299? I suppose there’s no reason the app vendor couldn’t process returns, but will Apple give them their $100 back?
  • The Mac has a flourishing community of developers and users, and I believe in part that’s driven by communication between them…in turn fueled by pre-release programs. Passionate users beta-test, report bugs, provide feedback, and serve as advocates. The App Store doesn’t permit this.
  • The App Store also forbids demo software, so farewell to the 30-day free trial. Combined with Apple’s return policy it’s a perfect storm of “buyer beware.”
  • The App Store forbids apps that look similar to existing Apple products. (Technically doesn’t this exclude Firefox, Chrome, Thunderbird, Word, PowerPoint, Excel, AIM, Yahoo! Messenger, most IDEs and text editors, Outlook, and non-QuickTime movie players?)
  • The App store forbids apps that modify existing functionality. To quote TUAW, “Well, that just wiped out 90% of the best Mac apps in a single, flaming fist punch.”

Clearly there are some barriers to adoption. Which will make it tempting for Apple to lock down the platform the way it has with iOS and force developers to distribute through the App Store. I don’t think they will: not only might it alienate developers to lose control over their machines, but I’m not even sure one could develop and debug effectively on a locked-down machine. Maybe I’m wrong there…but it feels like developers might be less effective without full access to their machines. (I suppose Apple could sell a special developer Mac, or provide a sanctioned jailbreak.)

My last concern is somewhat nostalgic. As a kid, I sort of fell into computing. (OK, my Dad teaching me BASIC probably helped.) The transition from user to power user to hacker was an easy one because it was all there for me to mess around with. As we get better at hiding the innards of our computers, we also put up barriers to learning the joy of scripting, coding, and hacking at them. Maybe that’s inevitable. Maybe I feel the way my grandfather does about my generation’s general inability to repair their own cars. Or maybe we just need a new HyperCard.

Phone Wars: iPhone 4 First Impressions 7/13/10

As long-time iPhone owners we’ve done our share of railing against AT&T. Time to put our money where our mouth is. We’ve ordered an iPhone 4 (with AT&T) and a Droid Incredible from Verizon. In 30 days we return one. Two phones enter…

We’ve had the new iPhone for three days now. Since there are plenty of full reviews elsewhere, I’ll restrict myself to a few highlights.

It’s fast. Fast, fast, fast. I cannot overemphasize how important this is. Presumably it’s a combination of the faster processor and the pseudo-multitasking, with an emphasis on the former. (I am upgrading from an iPhone 3G whose iOS4 upgrade slowed it to a crawl.)

The new screen is beautiful. It’s evolutionary, but the type of evolution that feels revolutionary because it makes such a difference. I was doing my Kindle reading on an iPad, but the crispness of text on the iPhone 4 has switched me back to it. In some ways it feels like a different technology.

The hardware is not as dramatically different from previous generations as Apple would have you believe, but nice, compact, clean-looking. It’s a little harder to pick up because of the square edges.

The best news is the signal. Reception is definitely better in San Francisco – and the Mission in particular. It’s possible to make calls in our apartment and to load data on the street, though it’s still spotty. Whether that’s the device or AT&T’s ongoing improvements is unclear: we know they’re adding towers, and our iPhone 2G seems to be doing a bit better as well.

Then there’s the much-discussed antenna issue. It’s real, not simply cosmetic, and confirmed by Consumer Reports. (Mini-rant: the frustrating part is not the hardware problem, but Apple’s all-too-typical response ranging from, “What problem?” to “You’re the problem.” It takes a special brand of arrogance to deny something so easy to reproduce.)

Otherwise…well, it’s an iPhone. Overall a delight to use, irritatingly locked down at times, occasionally annoying. The Droid should be arriving soon…

Trade-offs 6/30/10

Great products require trade-off. Which features should you promote with big, glossy buttons? Which materials or technologies should you use, and at what cost? When should you release it? How heavily should you test it first? Should you fix a crash bug that affects 2% of users or a cosmetic bug that affects 90%?

These trade-offs are unavoidable. If you don’t make them explicitly, you make them implicitly. Can’t decide which feature get a big button? You can create ten buttons but you’re making another trade-off: each will be a little less prominent, and your product’s simplicity and elegance will suffer.

Trade-offs are necessary at every stage of the product lifecycle:

  • Apple is often praised for simplicity. Less is more: remove all the physical buttons and do the rest in software. But that’s not the whole truth. The iPhone has two volume buttons, a power button, a Home button, and a ringer switch. Only the power button is necessary. Someone made a trade-off, sacrificing a certain degree of simplicity for the convenience of four more buttons. The result may, in fact, feel simpler: without taking the phone out of my pocket I can adjust the volume or set it to vibrate. What we call simplicity is, in fact, a successful trade-off.
  • Facebook has repeatedly favored speed over caution, angering users by releasing features and design changes (e.g. the newsfeed) without vetting them thoroughly. Many look to the resulting uproar as a cautionary tale, but I believe this is the wrong lesson. At worst, Facebook’s tremendous growth has proceeded in spite of these choices. But I suspect Facebook has succeeded because of them: by trading speed for pre-release research and by making sure they can correct course quickly, Facebook has innovated, stayed ahead of the competition, and gotten free user research in the bargain.

Make no mistake: trade-offs are hard. They require sacrifice. They require risk. But then, it should come as no surprise that these qualities are needed for great product design as well.

A Great Compromise 3/2/10

A great compromise

2009 Co-Worker Feedback for Maggie 1/16/10

Strengths

Maggie is an enthusiastic office manager with a keen interest in the details of what goes on around the apartment. Her broad range of interests is perhaps her strongest asset – from tackling tissue paper to folding laundry to changing the sheets to whatever seems to be going on under the stove, her passion reminds us not to take the details for granted.

Maggie sees tasks through to their completion. For example, on several occasions I’ve seen her work late simply to defend a pile of laundry from being worn or put away. This drive to go above and beyond the call of duty – and indeed beyond what anyone actually wants her to do – is admirable or possibly irritating.

In recent months Maggie has focused on developing an extremely fuzzy winter coat. While the associated shedding can be problematic, the entire team appreciates the resulting increase in cuddliness.

Development Areas

In 2010 Maggie should work on her periodic tendency to become confrontational. While I admire her passion, I would encourage her to find a more effective and professional outlet than leg-biting or drive-by swatting.

In past peer reviews I’ve commented on Maggie’s progress in lap-sitting and purring; in 2010 I’d encourage her to build on those skills and turn her attention to hugging.

Maggie would also do well to cultivate team-oriented traits like staying off the table, vomiting only on non-porous surfaces, and increasing her “face time” by restricting incessant meowing to normal business hours.

Additional Comments

It’s been a pleasure working with Maggie over the last ten years, to see her grow professionally and socially. While her performance in 2009 was excellent, I am not yet convinced she will reach her overall career goal of remembering what she was doing ten minutes ago.