Dev

The mobile app is going the way of the CD-ROM: To the dustbin of history

“Forget being in love with the open web and all that touchy-feely stuff.”

Jay Sullivan is Mozilla’s vice president of products, and for a spokesperson of one of the open web’s dearest darlings, he’s on a tear.

“If you want to have a variety of mobile apps, it gets expensive… that’s a lot of apps to build,” he told VentureBeat in a recent interview.

Sullivan is making a strong case against building native apps and for the mobile web as the new platform to (literally) end all platforms.

Now, a number of developments make his words especially timely. Yahoo has just announced Yahoo Cocktails, a set of tools for developers to use that make web apps look and behave more like native apps. Mozilla is working on tools to help developers sell web-based apps to mobile device users, enabling them to make profits just as developers in the iTunes App Store or Android Market can now do.

Even Adobe is scrapping Flash for mobile phones and pinning its hopes on HTML 5 for the mobile web. “HTML5 is now universally supported on major mobile devices, in some cases exclusively,” wrote Danny Winokur, Adobe VP and General Manager of Interactive Development.

“This makes HTML5 the best solution for creating and deploying content in the browser across mobile platforms.”

It looks like mobile apps may be headed the same direction as multimedia CD-ROMs did a decade ago. Sadly for mobile apps, they don’t even have a useful second life as drink coasters.

But parties on the other side of the fence say it’s too soon to play Taps for apps. App advocates say mobile web enthusiasts are indulging in pipe dreams while the rest of the world is still working on proprietary technology stacks that do, now, what HTML5 has so far failed to deliver. Even if they admit that building for the mobile web will eventually be cheaper, faster and easier, it’s at least few years away from reality.

In the Mozilla Foundation’s new offices overlooking the San Francisco Bay Bridge, Sullivan — an unapologetic HTML5 advocate — sits in a conference room and rapidly deconstructs the assumption that to get your software onto a mobile phone you have to build a native application.

But he doesn’t resort to the familiar (and tired) ideologies about freedom from corporate technological tyranny that figure large in Mozilla’s current ad campaign. Rather, he gets downright practical.

First, he explains the obvious: Each mobile ecosystem has its own technology stack, its own operating system and programming language. That means developing apps requires a different skill set and a separate development process for each ecosystem.

At the end of the day, building a mobile web app instead of two or three or four native apps just makes more economic sense. “HTML5 is less expensive,” he says. “There’s always some stuff around the edges that won’t work perfectly, but compared to writing in seven different languages, it works.”

For developers, it’s technologically more manageable to build one mobile web app than a half-dozen or even just two native apps. And given the state of mobile web standards, we’re quickly approaching a point where end users can’t tell the difference between the two. All that’s really left is a business model for mobile web apps, Sullivan contends.

“When the web offers a more easy to access business ecosystem to developers, it will become more attractive.”


A better package


In conversations with organizations like Mozilla and Yahoo, in talks with mobile developers — basically, anyone who doesn’t have an explicit interest in promoting a single mobile operating system like Android or iOS — one trend is becoming quite apparent:

The app as you know it is dying.

It’s like the CD, an expensive package for digital information, a package that is increasingly becoming unnecessary and obsolete.

And just as with the CD, all we’re waiting for is a better delivery method to come along and kill it off.

The challenges to that shift are partly technical and partly cultural. Mobile web apps first must meet consumer demands for high quality and performance. And as previously noted, developers need to be able to market mobile web apps.

Yahoo is one company working on the first challenge. Bruno Fernandez-Ruiz is Yahoo’s platform vice president, and he is working on what he calls “a bunch of tricks to make web applications feel native.”

“We don’t want to emulate native, it has its own paradigm. What we want to do is create a new class of experiences. Something that’s the same across phones, TVs, tablets — the web is a paradigm that is cross-platform.”

But however much Mozilla or Yahoo might want to see the mobile web overtake native apps as a paradigm for ideological reasons, those who have to approach the problem practically in the here-and-now still have to deal with native issues and stacks.

“I absolutely believe that the mobile web is going to continue to grow rapidly,” says Jeff Haynie, who co-founded Appcelerator, a company specializing in getting web developers up and running on mobile OS platforms.

But, Haynie says, it’s too soon to discount the opportunity afforded by apps.

“That’s a huge opportunity for developers worldwide,” he continues, talking about mobile web apps. “But those compelling native experiences across lots of devices are where opportunity is going to be in the near-term. Consumers have come to expect a very high bar from experience, like the Flipboards and Instagrams that you just can’t achieve now with a web app.”

Referring to Mozilla et al., Haynie says, “These companies have many, many web developers — their foundation is the web. That’s what they’re yearning for, how to leverage that. That’s the promise of the web…

“The real question is, how do you let web developers build applications that span the native experience and the web?”

Web advocates, not surprisingly, have answers: New technologies and new marketplaces for making  money from web apps.


New technology for the new mobile web: JavaScript and Node


JavaScript and Node.js are two key technologies that will make the transition from native apps to web apps possible.

“JavaScript is LISP in disguise. It’s as powerful as any functional programming language can be,” says Yahoo’s Fernandez-Ruiz.

And with JavaScript-based Node.js in the equation, he says, “It’s hard to tell if this will be the next Ruby on Rails, but this could be.” (Ruby on Rails is a platform for developing web applications that has become wildly popular in the past few years, thanks to the speed with which developers can create sites and apps using it.)

JavaScript and Node are core components of Yahoo’s Cocktails, a new suite of tools to help developers make their mobile web apps look and feel indistinguishable from high-quality native apps. Fernandez-Ruiz says that in early previews, responses from mobile developers have been positive and enthusiastic; everyone wants to get their hands on it.

Getting content to run consistently across all mobile and device platforms is a daunting task, and to date, many companies are trying to tackle it by translating code from one OS’s language to another, e.g. Objective C for iPhone development to Java for Android development.

But the code that comes out on the other side of such translations is too often spaghetti, and trying to solve the compatibility problem programmatically isn’t a long-term option.

Instead, said Fernandez-Ruiz, “We decided to solve the problems of the next three years rather than the problems of today.”

Ideally, Yahoo wants to eliminate the multi-language scenarios that introduce complications for developers. That’s the goal of Cocktails. One Cocktail product, called Mojito, uses JavaScript and Node to run a single codebase both on client and server side.

“We’re not making any difference between the front end and the back end,” says Fernandez-Ruiz. “For us, it’s the exact same code.”

Manhattan, another Cocktail, is a Node.js hosted environment for Mojito. Apps can be wrapped in a native shell and shipped to the iTunes App Store or the Android Market or simply run in a browser, and Manhattan helps to speed up the user experience access across high- and low-speed networks and to run apps on platforms that don’t have full HTML5/CSS3 support.

While Node has been shown to have insane performance benefits, Fernandez-Ruiz says, “We’re not using it for event-driven, low-latency reasons, although those are there. We’re using it because it runs JavaScript on the server side.”

JavaScript is evolving, he says. “The next generation of JavaScript will make the it a compelling, high-performance programming language for the web. This is a new class of web apps that are cross-environment, continuous, fluid experiences.”

And for the end user, Fernandez-Ruiz says that jumping from one interface on a TV to another interface for the same service on a tablet or smartphone or PC is disturbing. “But with HTML5, CSS3 and JavaScript, you can have apps that look and feel the same.”

This is something we saw in action when we reviewed LinkedIn’s latest suite of mobile apps, which are Node-powered and web-heavy. Even the native apps for iOS and Android relied heavily on the mobile web for a lot of pages and features, and the mobile web version of the app looks and functions exactly the same as the native versions.

For Yahoo’s purposes, Fernandez-Ruiz continues, “Node.js is part of the puzzle, to execute code on the server side. But the premise is the same: It’s not native; it’s the web.”

Yahoo will also be introducing other Cocktails, including Windjammer and Screwdriver, in the near future.

But Haynie says the web-app-in-a-native-wrapper model should be regarded with some caution.

“That kind of hybrid application — we’re seeing almost no one using that right now. It’s a bridge to allow you to bring web content into a native app, but if you look even at the new LinkedIn app, it’s still mostly a native application.”

Dmitry Dragilev works for Zurb, a company that just released Foundation, a framework for designing apps that work across the web, both on mobile devices and desktops. The framework in action is somewhat magical. As the screen resolution changes from window to window and device to device, links become buttons. Images automatically resize. Layouts morph.

And since it’s web technology, it doesn’t have to be customized on a device-by-device basis. “The framework does all the work,” said Dragilev. “People don’t need to worry about this stuff anymore.”

The technology is intended to work on any kind of device, mobile or not, and Dragilev says, “That’s crucial now that mobile web use has started to overtake desktop use.”


A marketplace for mobile web apps


Mozilla is one group that’s working on better tools for the second challenge to a mobile app paradigm shift: How do you sell mobile web apps to a mass market?

For the consumer, Mozilla’s scheme includes total device agnosticism for every app you purchase. That is, all your apps will run on all your devices, so you don’t have to repurchase the same app you have on your smartphone just because you bought a new tablet.

“What we’re proposing is, anyone with an email address can start getting free or paid apps, and that app is owned by you as a person,” Sullivan explains. “Buy a game on your PC, and you can show up on your phone, because you own it. Not your device, but you.”

In this model, consumers would have a whole universe of virtual shops in which to purchase reputable apps, a sort of mobile shopping mall in the sky. Or, they could go the indie route and have a relationship directly with the developer.

And lest you, dear reader, think this model is so much optimistic pie in the sky, Sullivan says Mozilla brings an measure of practicality to the undertaking.

“We have some experience in this from running a browser,” he says. “We will operate a marketplace. We’ve been operating one for several years to distribute Firefox add-ons. We’ve come to a system for curation, policies, legalities — we’ve been through the trial by fire to deal with this, and we’ve gotten to a pretty good results.”

Entities such as Google and Apple have created some of the culture of FUD (that’s fear, uncertainty and doubt) around off-market apps. As consumers, we’re told apps sold outside of a company-sanctioned store are a crap shoot in terms of security and general quality.

However, Sullivan says the FUD is exactly and only that, especially when it comes to privacy and app permissions. Actually, says Sullivan, web apps are more transparent about requesting personal permissions, and the web “sandbox” model provides better protection from would-be malicious apps.

Johnathan Nightingale is in the room with Sullivan; he’s Mozilla’s director of Firefox engineering. He perks up when we start talking FUD.

“If you went back to the late ’90s, AOL was saying the same thing: ‘If you get it out there on the web, who knows what you’re gonna get?'”

He continues to explain Mozilla’s take on organizing the mobile web for commerce. “It’s not like we’re talking about getting rid of stores. If you’re a developer, you want to get into as many stores as possible, and if you build a successful store, more power to you. But ‘protecting’ the user from stuff they want to install? That’s not how we roll.”


“Putting a stop” to native apps


So, with all these wheels in motion — better mobile development tools for the web, better marketplaces for mobile web apps — it’s conceivable that the mobile web app could become the new dominant paradigm for building for smartphones, tablets and other devices.

“Eventually, the web’s going to be the only place you’d want to build a new application,” says Nightingale.

“If you talk to app developers right now, the thing they’re trying to hire are the top notch HTML5 coders. People are not going to want to develop for four or five different tech stacks.”

Because of specific hardware capabilities and native apps’ ability to access hardware, Nightingale says developers can still be sold on the benefits of native app development. “But we’re putting a stop to that,” he says, foreshadowing some of Mozilla’s plans for mobile web developer tools.

But some doubt whether the sustaining forces behind the current paradigm — the OEMs and OS makers themselves — will ever really give mobile web advocates a fair shake when it comes to hardware access.

“We’re working to bring those hardware capabilities to web developers, too,” said Haynie, “but do you think Apple is going to get all ‘kumbaya’ and turn the industry around? No way. Of course the web companies would love that, but we don’t even have that on the desktop web, so how are we going to do it on the mobile web?”

Sullivan’s prognosis is a bit more reserved. He harks back to the days of computer software, the kind that came packaged on floppy disks or CD-ROMs, and noted how around 80 percent of the programs he used would be desktop software and 20 percent would be on the web.

“As we added capabilities, the 80/20 rule flipped. Now, almost everything has moved to the web.

“I don’t see native apps going away in the sense that they didn’t go away on the PC, but I think there will be an 80/20 rule for the mobile web, too.”

Similarly, Zurb’s design lead, Jonathan Smiley, thinks that eventually, we’ll stop making the distinction between web and native apps entirely. I ask him if he thinks the one will ever be just as good as the other; he says, “Absolutely, but by then the lines between native and web apps will have been completely blurred. As devices use hardware to accelerate and enable features for web apps, and as native apps use more and more web services, the two will likely converge into just ‘apps.'”

“The goal is always going to be a great UI,” says Kiran Prasad, director of mobile engineering at LinkedIn. “Great UI means simple. And simple means that the experience is fast, easy and reliable.”

Prasad says that web apps for mobile phones “are indeed the future,” but he points out that the future is still, well, ahead of us. For right now, technologists need to “take advantage of the right technology at the right time… The question is not about native apps versus web apps. It is at a screen and interaction level: native screen or web screen. We are focused on the best end user experience, and today that means taking advantage of mobile web apps and their interactions with native applications.”

Photos by Jolie O’Dell/VentureBeat. CD-ROM photo on the homepage by Jetsetmodels/Shutterstock.

DevBeatCheck out DevBeat, VentureBeat’s brand new channel specifically for developers. The channel will break relevant news and provide insightful commentary aimed to assist developers. DevBeat is sponsored by the Intel AppUp developer program.

0 comments