Mobile apps are leaving Web work in the dust, code guru laments

How it shakes out will profoundly affect the way we all use computing devices, warns high-profile developer Tim Bray. And should we cede so much control to Apple and Google?

Prominent developer Tim Bray, speaking at the Goto conference in Aarhus, Denmark. warns that mobile programming has better tools than Web programming.
Prominent developer Tim Bray, speaking at the Goto conference in Aarhus, Denmark. warns that mobile programming has better tools than Web programming. Screenshot by Stephen Shankland/CNET

Beware, browser fans: mobile apps could out-evolve the Web's open computing foundation, letting companies like Apple and Google dominate our digital future.

That's the warning offered by Tim Bray, a programmer and technology expert who spoke at a Goto Conference for software developers in Aarhus, Denmark. Although Bray formerly was Google's Android developer evangelist, he's spent much of his career as a "Web guy."

"Things really aren't that great, to be brutally honest, in the world of browser programming," Bray said in a Goto video posted Wednesday.

When it's time to write an app -- something interactive, not just a document with some hyperlinks -- Web programmers must reckon with flawed foundations that have been patched over by a constantly shifting collection of tools.

The situation is very different for programmers working on apps that run on mobile phones and tablets based on Google's Android operating system or Apple's iOS. When managers tell them to write mobile apps, programmers often are eager because the software development kits are much better than for Web programmers.

"You've got these huge, elite teams at Google and Apple making the native mobile app development better," Bray said at last week's conference. "There are a lot of smart people working on browser technology, too, but I'm not sure they're catching up."

How it all shakes out will profoundly affect how we all use computing devices in the future. The Web is an open foundation with no single player in charge, but the mobile markets are controlled in varying degrees by Google and Apple.

"The single most important thing about the Web, which we are in danger of forgetting, is the Web is the only major computing platform that has ever existed that does not have a vendor," Bray said. "I want an Internet where people can write beautiful software and post beautiful software and have people use beautiful software without having to ask anybody's permission."

Dice, a company that hooks programmers up with jobs, notes that mobile skills are important -- but that the Web is still a force, too. "On any given day, there are 1,825 job postings for mobile applications, 3,005 for tech professionals with iPhone experience and 2,652 for Android skills. [For] Web developers, there are 2,045 job postings on any given day," Dice spokeswoman Rachel Ceccarelli said.

Request permission to update, sir

What are the problems with those companies building the operating systems, app stores and sometimes hardware? Bray sees app stores' slow, cluttered search services as vastly inferior to a browser search box when it's time to get something done. It can take days or weeks for Apple to authorize updates, he said, and Google, while faster right now, is getting slower.

"Do you have a really nasty, core-dumping, security-spilling, privacy-leaking, password-exposing bug? Well, it sucks to be you," Bray said of mobile-app programmers. "Whereas if you're a citizen on the Web, you can actually fix it."

Tim Bray argues that shortcomings in Web's JavaScript, CSS, and DOM technologies means programmers must rely on a "pile" of higher-level software tools.
Tim Bray argues that shortcomings in Web's JavaScript, CSS, and DOM technologies means programmers must rely on a "pile" of higher-level software tools. Screenshot by Stephen Shankland/CNET

Cambrian explosion

Bray believes Web programming has three big sore points: JavaScript for programming, CSS (Cascading Style Sheets) used for formatting, and the DOM (Document Object Model) used to let JavaScript programs control Web pages.

"When you come right down to it, of all the great programming languages, JavaScript isn't one of them," Bray said. "Our basic programming language is probably not good enough. It's kind of ugly and kind of stupid and full of dangerous things and it's not fast enough."

Dealing with their shortcomings requires "piling more layers of software on top of it" to shield programmers from the complexities. There has been a "Cambrian explosion" of such tools, he said, likening the situation to the burst of evolutionary variation hundreds of millions of years ago that led to countless exotic but ultimately short-lived branches on the tree of life.

Bray's list of the bigger helpers: JQuery; Google's Angular, Polymer, and Dart; Ember.js, Backbone.js; Mozilla's ASM.js; CoffeScript; IcedCoffeeScript; Less; Sass; Twitter's Bootstrap; Bourbon Neat; and ZenGrids.

"There's nothing intrinsically wrong with being in a period of explosion of creativity -- unless you happen to bet on the browser equivalent of one of those creatures that died away," Bray said. "The browser is under attack at a very high pace. We need to accelerate some of this evolution."

CNET staff writer Seth Rosenblatt contributed to this report.

Close
Drag
Autoplay: ON Autoplay: OFF