HTML5 Slow Adoption Due to Cost, Fragmentation


Recommended Posts

This week during a panel discussion at the Open Mobile Summit in London, Andrey Doronichev, Google's executive in charge of YouTube, recently explained why the popular video sharing site has been slow in fully adopting HTML5. There are several factors involved, the biggest of which is the cost of building apps using the new markup language.

"Building apps with HTML5 is its own skill, it's harder than iOS," he said. "The app has to work across websites on different browsers, so browser fragmentation is an issue."

There's also a problem of distribution. Unlike native apps developed for Android and iOS, there's no central location where users can purchase and install HTML5 apps. "Distribution is another major problem, where to find it," he said. "Consumers don't get HTML apps as there is no single place to go for the apps."

Link to comment
Share on other sites

What a shocker! :) This was always the case, only some people live in their own utopia thinking it will all turn out great. HTML/JS/CSS have always been the worst possible way to write apps due to complete dependence on browsers where each browser maker has their own agendas and in some cases pretty big differences. Not to mention writing web apps that need to run on all browsers is basically writing several times the same code which increases costs insanely. And we are not even getting into monetization and support.

In other words it's a mess and will most likely stay that way until we have a single browser platform, which will be never.

  • Like 2
Link to comment
Share on other sites

Word on the street is you like flash.

I like anything that gets the job done right, helps business objectives and allows maximum creativity and innovation for consumers. HTML5 is not it.

Flash does this amazingly well for many cases (although certainly not great for everything), native apps are the wave of the future because you get the best performance, expandability and user experience along with monetization.

HTML5 and Javascript, regardless of some improvements are simply toys. They were never imagined to scale and build complex apps and that's why we see this mess now.

Link to comment
Share on other sites

Not saying it's good or bad, I'll leave that argument for someone else, but with Flash (and other similar platforms) it's at least a known quantity. You don't have a gazillion different variations to take into consideration, which would obviously lead to much quicker development speed and reduced costs, where as with HTML 5, stuff that works in one browser is broken in another, slow as molasses in yet another, or complete unsupported in even another. Extra benefit (to me anyway) is that I'd have my pick of browsers, I'm not forced into picking a specific one just because a developer says so. If the particular plugin is available, it'll work regardless. Having to install multiple browsers to view different sites is just annoying.

Link to comment
Share on other sites

HTML5 and Javascript, regardless of some improvements are simply toys. They were never imagined to scale and build complex apps and that's why we see this mess now.

HTML and Javascript has been used to build "complex" apps even before HTML5. I know you like flash but there is no point in writing off HTML+JS. Many mobile apps these days are actually built using HTML5. I am sure you've heard of the likes of PhoneGap, SenchaTouch, jquery-mobile?

Link to comment
Share on other sites

I really wish we could of planned all the changes and made preparations during the HTML4. Flash has annoyed me for years.

Link to comment
Share on other sites

There's no central place for buying Flash apps either, the whole argument is so laughable it's not even funny.

As for those who defend Flash, here's an interesting thought; How much did Internet Explorer benefit the net when everything was tied to it via ActiveX etc.?

Yeah.

  • Like 1
Link to comment
Share on other sites

Do you think that for the entire HTML5 set?

What do you think of HTML 5 video in specific?

Let's put it this way. HTML5 video, web workers, offline storage, web db and new stuff like webRTC that is still in alpha or beta stages is a welcome addition to HTML in general, the problem is that this thing should have happened a decade ago. They make some things easier to build for the web, that's absolutely true, and it's about time, but the reality is that all these things are still in early stages, support is still divided across browser makers and making it work across the board is less than great experience for developers.

People have issues with Android? Wait till you try to make apps that run across different platforms with same performance and compatibility. It's a nightmare. And I'm not even going into Javascript and a mess you have to deal with if you have to manage big apps and their source code and extend it.

Anyone who has worked with HTML5/JS seriously knows what I'm talking about. The fact that you have to rely on 15 different frameworks and libraries to get the job done is a consequence of the fact that Javascript was and still is a very poor language that was never meant to do what people are doing today. It was patched up over the course of last 15 years and hasn't evolved at all and that's why we have gaziliion frameworks to try to compensate for it's shortcomings.

Even JS grandaddy Douglas Crockford, if you have seen his lectures and read his books, acknowledges and talks mostly about how Javascript is bad and shows you how to work around these problems.

In theory, HTML5 could be great, but under the condition that we don't have 5-6 different companies trying to reinvent the wheel with CSS, with support for HTML and how things run on them. If we had webkit and browser makers were competing only on a feature set of their browsers and not the underlying rendering engines this utopian idea of HTML5 being ubiquitous could actually be a reality in some time in the future, but we all know that's not going to happen. What is going to happen and is happening is you have Google doing their own thing with Chrome, Apple is adding specific things to safari that only run on their platforms and OSs, Mozilla is doing their own thing while Microsoft, well, Microsoft has their own idea.

I am not against HTML5 at all, I'm glad it's improved, however, I am very pessimistic where it's going. This is (maybe not to the same extent) similar to what we had in 1990s with browsers and everyone spinning their own things. This was always a problem with web in general and I dont' think it will ever become a nirvana some people believe.

Add mobile, and you realize how poorly this thing runs on mobile as well.

Here's something to ponder over as well:

HTML5 performance 8 times slower on mobile

Link to comment
Share on other sites

There's no central place for buying Flash apps either, the whole argument is so laughable it's not even funny.

Yeah, tell that to Zynga a company that became billion dollar company thanks to Flash alone. They wouldn't exist if Flash didn't allow them to publish games to Facebook the way they did. And I'm not going into YouTube, Hulu, Pandora and many others.

It's not about marketplace alone, it's about reaching audiences and making money and innovating based on the ubiquity and the ability to insert full blown apps or games into existing sites like Facebook.

Try doing it with iframe overall and you will see that many sites won't allow you to run iframe embedded contents and among many reasons it's the security of iframes and running source code from a 3rd party server on your site.

Link to comment
Share on other sites

I like anything that gets the job done right, helps business objectives and allows maximum creativity and innovation for consumers. HTML5 is not it.

Flash does this amazingly well for many cases (although certainly not great for everything), native apps are the wave of the future because you get the best performance, expandability and user experience along with monetization.

HTML5 and Javascript, regardless of some improvements are simply toys. They were never imagined to scale and build complex apps and that's why we see this mess now.

You slap down HTML because you need to rewrite things for different browsers, and then you suggest that writing native apps, which inherently requires writing things for different platforms, to be the future?

With the strength of the most recent browsers in smartphones, there is almost no reason to build native apps initially. Using HTML5 and CSS, frameworks such as Twitter's Bootstrap can be used to wrap the same HTML while supporting every browser and screen size, ranging from phones, tablets, PCs to PCs with large monitors. And speaking from personal experience, it works quite amazingly well.

Link to comment
Share on other sites

You slap down HTML because you need to rewrite things for different browsers, and then you suggest that writing native apps, which inherently requires writing things for different platforms, to be the future?

They are the future. First of all, if you are going to write code several times and deal with platform incompatibilities you might as well do it right.

But there are many benefits going native over HTML5.

First, we have performance.

1. Performance

Mobile OSs and platforms along with SDKs and native languages on those platforms were engineered to squeeze out very last piece of performance out of the device it's running on and uses the best that platform has to offer. If you build an app natively, every improvement to that platform is only slight modification away from your app taking advantage of it.

Trust me when I tell you, I have dealt and tried every single thing out there on mobile. I tried building stuff with Adobe AIR, I tried building stuff with PhoneGap and pure HTML/CSS/JS, I tried building apps with Appcelerator and I even gave Sencha and Corona a whirl.

Not a SINGLE one of them provided a great experience not to mention performance on mobile plaforms. And I'm not even going into feature set and expandability that follows with rapidly evolving mobile platforms.

2. Compatibility and Integration

Building stuff for mobile with HTML5 is basically taking the lowest common denominator of APIs that framework you are using gives you. Actually out of all these, the best one and the most flexibile one, believe it or not was Adobe AIR, because Adobe took the route of brining the beauty of Actionscript 3 and building apps like you would with Flash on the web but have introduced Native Extensions that allow you to write your own native libraries (with native code) and then include them in your AIR apps making it easy for you to integrate support for the latest APIs in mobile OSes with ease and on your own terms.

Why is this important? It's important because when a new version of mobile OS comes out and new APIs are introduced, if you built stuff with HTML5 you are behind on everything until those who build the framework include support for those APIs (if they ever do) and sometime this never happens because they always build API support that works on all platforms for the most part and simply doesn't take advantage of individual platform's API strengths (like in the case of iOS or Android) that are specific to that platform alone.

So if you are in startup world and you want to build something that takes advantage of the latest that platform has to offer that makes you very competitive and brings new mobile OS features to your users of the app you can do it in a day, you simply can't do that with HTML5.

3. Monetization

This aspect is really important due to integration with app stores and easy access to users on devices they are already used to. Instead of searching the web, a massive ocean of information, you get your app featured immediately and if it's great it will be easily findable by users (much easier than on the web). You can sell it, you can charge monthly fees, and many other ways of monetizing, something that you simply can't do on the web. This is why web has become infested with ads, because it was really the only model that allowed people to run sites without charging for them and it has become a mess.

Bottom line is this, you really have 3 platforms to worry about. Learning Objective-C, Java and C# is really not a big deal. You learn those 3 and you basically cover each platform on a very tight level. After building stuff for mobile for 3 years and trying to go with frameworks instead of native I have realized that it's a waste of time and money for my clients. I was foolishly optimistic by thinking that I can do things just as well with HTMl5 or AIR or whatever, but it always turned out to be nightmare when I had to follow with the evolution of these platforms.

So in the end, I went native and never looked back. Learned and built stuff with Obj-C, Java and still learning ins and outs of C# and it's simply the best possible way to build apps.

Link to comment
Share on other sites

Also to give you an example.

Hunger Games website was done in HTML5. The site cost $1 million dollars to build, it was a MESS, to the point of Microsoft wanting money back they invested in building this site to showcase IE capabilities.

There are numerous examples like this. I see in every day work, numbers ranging from $300-$400k for HTML5 web apps that run awful on mobile platforms and after paying all this money (due to fragmentation and a mess in development) the clients usually decide to go native after all the wasted money.

Ask Facebook. They wanted to push HTML5 strongly and now they are all about native. Same thing goes with Google. Their initial apps were all HTML5 with webview on native platforms but now they have revamped most of them to be fully native.

There is a reason why Google was so adamant in pursuing Go language for the web and abandoning Javascript. It's because the state of affairs now is a disaster in writing complex apps and something that needs to performant and if Google is doing it, which are one of the biggest supporters of HTML5, it's clear that it's not all roses in HTML5 land.

Link to comment
Share on other sites

You slap down HTML because you need to rewrite things for different browsers, and then you suggest that writing native apps, which inherently requires writing things for different platforms, to be the future?

With the strength of the most recent browsers in smartphones, there is almost no reason to build native apps initially. Using HTML5 and CSS, frameworks such as Twitter's Bootstrap can be used to wrap the same HTML while supporting every browser and screen size, ranging from phones, tablets, PCs to PCs with large monitors. And speaking from personal experience, it works quite amazingly well.

When you do multi-platform native apps the right way you keep all the platform specific stuff separate from the core of the app, so that if you need to support another platform you can just plug in support for it and not have to rewrite the whole app. That is something that isn't easily done with a web app,

There are plenty of reasons to writing native apps. One is the fact that internet connections are not always available or reliable, and the other, especially on mobile devices, is that data isn't cheap or unlimited. Both these issues (I think) put web apps at a huge disadvantage compared to an equivalent native app.

Though unless your app is a game or something that isn't consuming content from a web service those issues would also apply to a native app as well.

Also on mobile devices, unless you use some framework (like PhoneGap) you miss out on really taking advantage of the specific features of that device like using input from one of the devices sensors and even OS features., and then even if you do use a framework like that you still miss out on 3D graphics because to my knowledge no mobile browser supports WebGL well enough for heavy use.

Plus knowledge of the languages used for native apps on mobile devices can be carried over and used for desktop apps as well. HTML and CSS...not so much.

Link to comment
Share on other sites

Flash is a dream such as ethanol fuel for cars is, a bad one.

Anyone using Flash on this day and age should be fired / hung.

HTML5 is the future, and anyone that says otherwise is joking themselves.

  • Like 1
Link to comment
Share on other sites

Also to give you an example.

Hunger Games website was done in HTML5. The site cost $1 million dollars to build, it was a MESS, to the point of Microsoft wanting money back they invested in building this site to showcase IE capabilities.

There are numerous examples like this. I see in every day work, numbers ranging from $300-$400k for HTML5 web apps that run awful on mobile platforms and after paying all this money (due to fragmentation and a mess in development) the clients usually decide to go native after all the wasted money.

Ask Facebook. They wanted to push HTML5 strongly and now they are all about native. Same thing goes with Google. Their initial apps were all HTML5 with webview on native platforms but now they have revamped most of them to be fully native.

There is a reason why Google was so adamant in pursuing Go language for the web and abandoning Javascript. It's because the state of affairs now is a disaster in writing complex apps and something that needs to performant and if Google is doing it, which are one of the biggest supporters of HTML5, it's clear that it's not all roses in HTML5 land.

Umm Facebook is NOT native. All the Facebook smartphone apps are just wrappers (eg a browser control) and the mobile touch site.
Link to comment
Share on other sites

Umm Facebook is NOT native. All the Facebook smartphone apps are just wrappers (eg a browser control) and the mobile touch site.

All the new stuff they are doing is native. There is a reason why they are publishing native apps by functionality now but they all tie into Facebook platform. The Facebook app they had so far was hybrid HTML5 app and it was disaster. It was slow and is still slow until they revamp it completely, but other apps like the photo one and camera and so on are just amazing and are fully native. That's why they are switching to full native and are buying companies that develop native apps left and right.

Link to comment
Share on other sites

Interestingly, neither the original article, nor the post following it mentioned Flash as an alternative or as something to compare to, or, indeed, at all. Focus and, indeed, sole intent was to show that the HTML5's Blitzkrieg isn't doing quite as well as it was hoped to, by featuring a solid fact. However, it technomagically continued with Flash-flash-flash-flash, on the borderline of paranoia that gives an impression that Flash might have shot, fried and eaten someone's both grandmothers, shat out, jumped upon the stuff and eaten again, and therefore needs to be religiously decried wherever it might be even a little relevant to the case.

Link to comment
Share on other sites

Interestingly, neither the original article, nor the post following it mentioned Flash as an alternative or as something to compare to, or, indeed, at all. Focus and, indeed, sole intent was to show that the HTML5's Blitzkrieg isn't doing quite as well as it was hoped to, by featuring a solid fact. However, it technomagically continued with Flash-flash-flash-flash, on the borderline of paranoia that gives an impression that Flash might have shot, fried and eaten someone's both grandmothers, shat out, jumped upon the stuff and eaten again, and therefore needs to be religiously decried wherever it might be even a little relevant to the case.

Btw, Flash was never an alternative to HTML. It was merely an extension on the web that allowed us to build things that HTML couldn't and I don't think it's even proper to compare them. Flash is and will continue to be the solution for highly interactive experiences, games and advanced video solution on the web. The reason people built whole sites in it when they really didn't have to was because it was running and showing unified on all browsers. This problem still exists and thus Flash will continue to dominate anything highly interactive and engaging.

Link to comment
Share on other sites

Until we all adopt HTML 3.2 with consistency across browsers, we shouldn't consider XHTML 1.0 or Flash circa 1999. Much less the Internet standards of the 21st Century.

GET REAL! The de facto standard for the next 5 years is the HTML5 Ecosystem of Web Standards (CSS, JS, WebSocket, etc.)... so, whatever, let's just build it and stop complaining.

Link to comment
Share on other sites

Flash should die and its dying the way it performs: Slow.

Strange, Flash has never been slow on any computer that I have owned.

Flash is a dream such as ethanol fuel for cars is, a bad one.

Anyone using Flash on this day and age should be fired / hung.

HTML5 is the future, and anyone that says otherwise is joking themselves.

That's a pretty amusing statement given that the browser vendors and standards writers can't even agree on what should and shouldn't be a part of the standard. I'd be just as happy as any other user to see a web where we don't have to rely on the use of proprietary technology but with the current state of HTML5 we're a long way away from that.

Link to comment
Share on other sites

This topic is now closed to further replies.