Thought Leadership

forrester_SM_1204_blog_002

Subscribe to our blog

Your email:

Connect with Ness

Software Engineering Services Blog

Current Articles | RSS Feed RSS Feed

5 Things You Need to Know About Massive Announcements that Might Reshape the Mobile Web

  
  
  

by Glenn Gruber
Ness AVP Travel Technologies and Mobile Solutions

April 3rd was an interesting day for the mobile industry with two major announcements that could reshape the mobile web. Two days earlier and I might have thought someone was playing a rather large joke.

The news that got most of the attention was Google’s decision to diverge from WebKit to introduce Blink as Chrome’s new rendering engine. Many people – myself included – referred to Blink as a fork of WebKit. While this is accurate, it’s often short-hand pejorative term that implies bad intentions. But before we ascribe good or evil to the move, let’s take a step back for some context.

Webkit has been the most popular browser engine, but has not been used on a majority of the desktop web. 

describe the image

But the numbers tell a very different story when you look at mobile browsing statistics (I used US numbers as a proxy for smartphone usage). On mobile devices (which now outnumber desktop devices) WebKit was the clear winner:

describe the image

But Webkit was never a homogeneous entity. With the many flavors of Webkit-based browsers (about 40 according to Wikipedia) many of them used different JavaScript engines. So the idea of a pure WebKit browser was never true. As such, the forking of WebKit might not be as big of a deal as many fear.

But Blink wasn’t the only news...

1. Samsung/Mozilla Partnership Could Have a Bigger Impact on the Mobile Industry

On the face of it, the other announcement seems less dramatic, but is likely more intriguing. Mozilla announced that they are partnering with Samsung to create a next-generation browser engine called Servo. Two thoughts come to mind:

  • Samsung seems to be steadily pseudo-forking Android for its own purposes. TouchWiz, S-apps that replace core Google services (e.g. messaging, translation, voice, navigation, app store) and the Knox platform seem to be creating a Samsung experience, almost to the point that it wouldn’t be recognizable as Android. In fact if you look at Samsung’s advertising it’s virtually free of any mention of Android. What’s missing is a browser and this could be their plan. Could the browser be the last step before truly forking Android as Amazon has? And if that happened, could it be said that Google has lost control of the platform? That could have a seismic impact on the industry.
  • For Mozilla this could be the next step in maturing the FirefoxOS and more importantly, lining up the #1 non-Apple smartphone brand in the world as a manufacturer.

2. Community Projects Aren’t Always the Utopia We Want Them to Be

Google is no doubt making this decision to further its own interests and perhaps Blink will allow them to speed up the delivery of improvements to Chrome as well as perhaps our browsing experience. According to Alex Russell, a Google Chrome engineer, this is the primary driving force behind the move. Nothing nefarious, just Google’s laser-like focus on execution and speed.

Or is it?

The truth is that when you have a lot of people contributing to a project you reach a point where priorities diverge and that really seems to be at the crux of Google’s decision to introduce Blink. All you have to do is look at Chrome’s current advertising spot and it becomes clear. 

 

Google wants to more tightly integrate your browsing experience across all devices (even though the ad doesn’t include TVs, it’s definitely part of the vision) and having greater control of the core browsing engine was likely seen as a linchpin to deliver that. With all the different voices that are part of a community project, Google probably couldn’t get where it wanted to go without going off on its own. Besides, if Google thinks it provides a competitive advantage, I can understand why they would choose not to share.

Further, the conspiracy theorist in me also sees this as a move done primarily because it directly hurts Apple --Google’s primary (only?) competitor in mobile. Lee Matthews of Geek.com notes that “For quite a while now, Google has held the number one spot on the WebKit code commit “leaderboard.” Now that its engineers are working on Blink, that leaves WebKit with a greatly reduced number of active contributors”, which can pose quite a challenge for Apple to ensure that WebKit keeps up with Chrome from a technical perspective. With Samsung joining forces with Mozilla on Servo, we don’t know how much future WebKit contributions we can expect from either – Seeing as Samsung has no love lost for Apple either.

And while Google gave good reasons for pulling out of WebKit, primarily pointing to Chromium’s use of a multi-process architecture, it didn’t have to go down the way it did, according to an Apple developer who is part of the WebKit team:

“…the main reason we built a new multiprocess architecture is that Chromium's multiprocess support was never contributed to the WebKit project. It has always lived in the separate Chromium tree, making it pretty hard to use for non-Chrome purposes.

Before we wrote a single line of what would become WebKit2 we directly asked Google folks if they would be willing to contribute their multiprocess support back to WebKit, so that we could build on it. They said no…

If Google had upstreamed their multiprocess support, we almost surely would have built on it. And history might have turned out differently.”

3. Modestly Higher Workloads for Web and Mobile Developers

In many ways the amount of work that development teams need to expend won’t change very much. Servo replaces Gekko for all intents and purposes, so that’s a wash. You can say that Blink becomes the 4th engine, essentially taking the place of Presto (previously used by the Opera browser), but given the low market share for Opera, I would wager that many organizations didn’t develop or test for it specifically.

And even though Blink is a fork of WebKit, will it really be that different? Will it really cause that much incremental effort? Xavier Facon, CTO of Crisp Media (a leading mobile advertising platform provider) doesn’t think so:

“It won't make life easier or harder. These two engines [Blink and WebKit] will stay more similar to each other than compared to Servo and others.  I can't imagine it will cause much fragmentation. All WebKit implementations already have different JavaScript engines. A different rendering engine increases the potential differences, but I think the WebKit teams and Blink teams won't work outside the specs much anyway.  In fact, the approach of using flags in Blink, and carefully remove webkit prefixes, allows new experimental features to be rolled out in fully backwards compatible approach.”

Bastien Cojan, Technical Director for Ness’ Imano mobile development team, notes that web developers will have to go back to testing Chrome and Safari separately, though he says that many firms were doing that anyway as the differences between the two WebKit –based platforms were already significant enough to merit it.

4. Better Security, Stability and Performance

canstockphoto5273579

All code gets worse over time. It’s not that the code itself degrades, but the layers and layers that are added increases code complexity, introduces bugs and expands vulnerabilities. So the streamlining of the codebase that will result from Blink (Google says it will remove 4.5 million lines of code and 7,000 files) and the removal of the Google-dependent code in Webkit should enhance both products.

Veracode, a leading application security platform vendor, agrees noting on its blog that there have been 210 reported security holes in Webkit since it launched in 2007, with 207 of those discovered in the last three years, including some moderately serious security holes. Given that Android accounts for 79% of all malware on smartphones, one can see why Google was keen to close up some of these holes.

5. This will be good for the industry

It’s generally a good thing when everybody works together. Life become more consistent, orderly. Standards, even if they are defacto, help the productivity of developers everywhere. But to really move an industry forward significant change such as Blink and Servo can spur innovation. With Apple, Google, Samsung and Microsoft all with significant skin in the game they will have to really up their efforts and the consumer will be the beneficiary in the form of better products and experiences.

Crisp Media’s Facon says, “I am pretty certain, all considered, it is a positive.  There are various mobile OS and browser projects scheduled by Samsung, Intel, Google, Apple, Opera, etc... that we don't know about.  Some of those projects are made complicated for developers when there is code share going on between all these competitors.  For Google to take this step was brave, considering they probably expected some backlash, but it solved business problems for both Apple and Google that allow them to move faster on projects we will end up caring about once we know them.”

Cojan agrees: “These new web engines seem to be developed with 'mobile in mind', which should speed up the current mobile development and have a better handle of device specificities as it will be directly developed by the device manufacturers (google+samsung). In theory, this should make the developer’s life easier (think Apple owning both hardware and software) and reduce the need for handling high number of different cases for different devices. 

Photo Credit:  (c) Can Stock Photo

blog comments powered by Disqus
Tags: