Android hogged the spotlight at Google I/O, but performance improvements in Google's Chrome browser show that the company hasn't given up on trying to advance its other programming foundation -- the Web.
The mobile version of Chrome has become much more responsive since 2013, said Paul Irish, a developer advocate on the Chrome team, speaking at the San Francisco conference.
"We've improved the speed of animation by 75 percent and of scrolling 35 percent," Irish told developers Thursday. "We're committed to getting you 60 frames per second on the mobile Web."
That performance is crucial for persuading people to use Web sites rather than native apps for things like posting on social networks, reading news, and playing games. It's also key to getting programmers to take the Web path when so many today focus on native apps written directly for Google's Android operating system and Apple's iOS competitor.
The 60 frames-per-second rate refers to how fast the screen redraws when elements are in motion, either during games or when people are doing things like swiping among pages and dragging icons. The 60fps threshold is the minimum that game developers strive for, and to achieve it with no distracting stutters, a device must calculate how to update its entire screen every 16.7 milliseconds.
Google, whose Android operating system initially lagged Apple's rival iOS significantly in this domain of responsiveness, has made great strides in improving its OS and its apps. But the mobile Web hasn't kept pace, and that means programmers have been more likely to aim for native apps rather than Web-based apps that can run on any device.
"It's had its rough times. We may have missed the boat a few times," Irish said.
Web technology shortcomings
Indeed, Matt Dimmick, the product leader for Telenav's navigation app Scout, said in an earlier interview his company tried building his app out with Web technology under the covers, but gave up.
"We found you do get some big advantages out of it. But in most cases the advantages of native platform integration, from a performance standpoint, is usually worth doing the extra development work," Dimmick said. "We went through app and integrated a lot of that [Web technology], then later reverted to native implementations."
Another developer made the same decision: Rosetta Stone, maker of foreign-language learning software. "We experimented with using Web technologies, but after prototyping, we really felt that native integration was better -- especially for speech recognition and other proprietary features that are core to our learner experience," said Chief Product Officer Nick Macey.
Both those cases involve the use of browser technology within an app, an approach that in principle can be carried over to a mobile-optimized version of the Web site itself. That advantage spotlights a core advantage of the Web: its cross-platform nature. Every mobile device and PC has a browser.
And that's why Google isn't giving up on the Web, despite Android's success.
"The Web is everywhere," Irish said. "Interoperability is the beautiful thing that has let the platform flourish."
And he exhorted developers to focus on their mobile Web sites. Even if they'd rather devote resources to apps for Android and iOS, many people often first encounter a company over the Web.
"The mobile Web is often the first experience new users have with your brand, and you're on the hook for delivering success to them," Irish said. And mobile usage is increasing steadily, rising from essentially none to about 30 percent of the global Web traffic today, he said.
Web developers are responding: Among the top 1,000 Web sites, the number optimized for mobile browsing increased from 47 percent to 68 percent over the last six months, according to Google's measurements.
Push notifications, Polymer, and other browser features
Improving browser features will also help attract developers, Irish said, listing several changes to Chrome:
- A technology called Service Workers opens the door for major changes, including Web apps that work even when there's no network, push notifications, apps that can synchronize in the background, and "geofencing," which lets apps take specific actions in physical regions.
- WebGL means game developers can make hardware-accelerated games with 60fps frame rates.
- Google backed off a delay of nearly a third of a second that slowed many tap interactions on mobile browsers. They had paused to make sure the user wasn't trying to double-tap to zoom in; Firefox and Safari have followed Chrome's example, he said.
- A specification called Request Autocomplete will make it much easier to fill out Web forms on mobile devices.
- Another big change that Google is pushing is a unified user interface called material design that spans its browser-based apps and its native Android apps. To make this possible, Google relies on a technology called Web components that lets it build the interactive, custom look into browser apps.
Google also offers a library of pre-written code called Polymer to ease the programming difficulties for those wanting to take that approach with multiple desktop and mobile browsers. And it's got an online tool called Polymer Designer to help people build those controls.
"There's been massive investment in mobile browsers," Irish said. "Now we have the speed, the features, and the tools to help you make great mobile Web apps."