Welcome, Guest: Join Nairaland / LOGIN! / Trending / Recent / New
Stats: 2,692,216 members, 6,344,112 topics. Date: Thursday, 17 June 2021 at 07:09 PM

Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? - Programming - Nairaland

Nairaland Forum / Science/Technology / Programming / Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? (5747 Views)

Nigerian Developed Mobile Apps - Yaay Or Nay? / Who Have Heard Of Cordova And Phonegap? / Do You Develop Cross Platform Apps(cordova/phonegap)? Lets Meet On Whatsapp!!!!! (2) (3) (4)

(1) (2) (3) (Reply) (Go Down)

Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by thewebcraft(m): 10:23pm On Oct 29, 2015
Hybrid HTML5 mobile apps seem to get a bit of a bad rap, it’s not really justified though.

If you speak to most native mobile app developers they will tell you that hybrid applications are:

Only good for building quick prototypes
Slower and less performant than native applications
Not real mobile apps


It’s not always just the native developers though, if you speak to people who have actually tried creating hybrid apps with HTML5 and PhoneGap you will often get a similar response.

I’ve seen, built and used amazing applications that were built with HTML5 and PhoneGap, which look and feel just like native apps (good ones at that).

These apps aren’t freaks of techology, they are complex apps built by good developers who know their tools. You would absolutely not be able to tell that these apps weren’t native (except for maybe the fact that UNTAPPD is available on four different smart phone platforms).

So, my question remains. Why do HTML5 mobile apps get such a bad rap?

1. It’s REALLY Easy to Create Bad HTML5 Mobile Apps

It’s so easy to create a HTML5 mobile application, and that’s where a lot of its reputation comes from. If you take someone who is reasonably comfortable with HTML, CSS and JavaScript but has never built a mobile application before they could probably piece together a simple mobile app in a day or two using HTML5.

Why is this a problem?

* Someone who has never built a mobile app before will likely not understand how to design a suitable interface with a good user experience
* They also won’t understand the limitations of a mobile app and how to overcome performance issues
* They may assume they can do things the way they would do it normally on the web
* They may not understand general programming principles
* The resulting app is probably going to be pretty bad, and exhibit those stereotypical HTML5 problems


Now I don’t want to vilify web developers who jump right in and start creating bad mobile apps, that’s exactly what they should be doing and it’s a great way to learn.

But if you take the same person and get them to try to create a native app, they have to learn a whole new language and way of doing things. It’s going to take a lot longer until they are even able to produce a working mobile app, but by that time they will have quite a bit of experience and most of the developers who aren’t quite ready to build a mobile application yet will probably never make it that far.

So we end up with someone who has smashed out a HTML5 mobile app, thought “wow, this is pretty awful” switched to native and produced a superior result. This causes a disproportionate amount of bad HTML5 applications when compared to bad native applications. Conclusion: Hybrid apps have poor performance.

If we take that same developer, and get them to spend some time really understanding how to create high performance HTML5 mobile applications, then the result would be a lot better.

Native forces you to make good applications, HTML5 allows you to make good applications

That’s not to say that all native apps are good, I’ve seen some pretty awful ones, but in general there is a larger proportion of good native apps.

It’s kind of similar to the situation with the PHP programming language. It’s a very beginner friendly language that is pretty relaxed on the rules, so it attracts a lot of beginners who make bad applications with it. But if you take someone who knows how to use PHP properly, then it is a very capable language (and that person will probably have to deal with people on Internet forums telling them how bad PHP is).

2. If You Don’t Use a Framework, a Good One, Then You Will Get Poor Results

It’s so important to use a good HTML5 framework. These frameworks (the good ones) are built specifically to deal with the shortcomings of HTML5, specifically things like:

* Tap Delay
* Memory Usage
* Animations
* DOM Manipulation

so that you can focus on just building your app. There’s so many little things that these frameworks take care of to make sure you can produce a smooth, native like experience that it’s completely unfeasible to build a good HTML5 mobile app without one (unless you’ve got some serious coder-power).

Naturally, some frameworks are better than others. jQuery is quite popular since most people are already familiar with it, but it doesn’t perform as well on mobile as other frameworks do. Ionic is based on AngularJS which works very well for mobile.

3. People Don’t Think Hybrid HTML5 Apps Have Offline Capability

There’s two parts to this assumption usually:

People assume that hybrid apps require an Internet connection to function
People don’t think hybrid apps have the ability to store data offline

Addressing the first assumption, that’s simply not the case. A HTML5 mobile application can be packaged with PhoneGap and distributed through app stores. All the applications files are stored in the application, along with a built in browser, and there is no need to access the Internet to run the application (unless of course the app uses the Internet).

On the second assumption, the default storage for HTML5 apps is usually the browsers local storage. This isn’t bad, and is usually quite suitable for most apps but it does have size limitations and can be unreliable. One solution to this is to store the data on a server and retrieve it in the application when necessary, but then what if you want to allow your users to use the app offline as well?

There are solutions for this. First of all HTML5 mobile applications can quite easily access native like storage by using the SQLite PhoneGap plugin, and if the app requires syncing online and offline data you can use something like PouchDB.

4. People Think HTML5 Can’t Do as Much as Native Apps

As an extension to the last point, some people don’t realise that a hybrid HTML5 app can do everything a native app can do. This includes things like:

Accessing any part of the device.
Basics:
* Using the devices camera
* Using BlueTooth
* Running tasks in the background
* Receiving Push Notifications
* In App Purchases
* Game Center Integration

Typically PhoneGap is used when building HTML5 mobile apps and the PhoneGap native wrapper is a native app. So the HTML5 mobile application can access everything a normal native application can by using PhoneGap as a middle man.

HTML5 app interacting with the device

If you want to learn more about how PhoneGap works you can check out the website.

5. Elitism

This is a cultural problem in the programming community, and a very ugly one. These debates and flamewars go back forever: HTML5 vs Native, Mac vs PC, PHP vs Ruby and so on. Many people believe that whatever thing they pick is the right thing, and anybody who uses the other thing is clearly an idiot.

It’s great to discuss and debate the strengths and weaknesses of different approaches, but often these discussions devolve into an “us vs them” mentality and it quickly becomes completely unproductive. People become emotionally invested in the programming languages they choose, and when you might devote years to learning something this is completely understandable – nobody wants to be on the “losing” side.

The more sinister side of this is that for some people there is an element of self preservation. If you know one particular tech really well, and something comes up to rival it then it is in your interest to make that tech go away. What if your clients start coming to you and saying:
Can you do HTML5? We want to release our apps on multiple platforms

that would be pretty bad for an Objective-C based business, so it would make sense for Objective-C developers to make their clients (and the general population) believe that HTML5 is not a viable option or that nobody really uses Android anyway.

I don’t believe that this is some war where one side will win out in the end, different goals call for different solutions. Sometimes that solution will be native, sometimes that solution will be HTML5, a lot of the time it won’t matter which approach is used.

6. People Don’t Know Good HTML5 Apps Are Created with HTML5

It’s not hard to spot a poorly built HTML5 app, but it is hard to spot a good HTML5 app because… you can’t tell the difference between it and a native app (and that’s exactly the point).

So if people see a poorly built mobile app they assume it’s built with HTML5, and if they see an awesome mobile app they assume it’s native. This reinforces that misconception that well performing apps are built natively, and poor performing applications are built with HTML5.

Your thoughts?

My view is that for most mobile applications a HTML5 / Hybrid approach is more than suitable, you would rarely ever be able to tell the difference if it is built well, and it has the huge added bonus of being able to be deployed to multiple platforms.

I don’t think that means that native applications are going anywhere though, I think native will be required for specialised applications for a long time to come, and for some teams a workflow of creating two native apps may be preferable and workable. When comparing one solution to another the only legitimate concern is the end goal. How you get there just comes down to what works for you or your team.

It’d be great to hear some thoughts from both HTML5 and Native developers in the comments, but can we all just get along?

5 Likes

Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by TELLHIT(m): 10:37pm On Oct 29, 2015
Facebook, Twitter, instagram and Gmail are hybrid apps with native navigation and still surviving

1 Like

Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by lordZOUGA(m): 12:06am On Oct 30, 2015
TELLHIT:
Facebook, Twitter, instagram and Gmail are hybrid apps with native navigation and still surviving
What?

1 Like

Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by seunoni34(m): 8:36am On Oct 30, 2015
TELLHIT:
Facebook, Twitter, instagram and Gmail are hybrid apps with native navigation and still surviving
infact
Most Google mobile Apps are hybrid, even their desktop apps too.
It all depends on how you write your codes.
Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by FincoApps(m): 1:58pm On Oct 30, 2015
This is exactly the kind of post I was looking for, because I need to develop a large Android App but I'm not an Android developer and I really dislike that OS. The personal app I built for android used JQuery mobile and was really poor so I just assumed HTML5 apps on mobile renders slowly.

So please guys suggest to me, what framework do you suggest that can solve that tap delay very well and easily implement Google's material design rules.

Thanks
Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by TELLHIT(m): 2:12pm On Oct 30, 2015
seunoni34:
infact
Most Google mobile Apps are hybrid, even their desktop apps too.
It all depends on how you write your codes.
abi o.... Even my webapp in my signature is hybrid
Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by lordZOUGA(m): 3:26pm On Oct 30, 2015
thewebcraft, you should have also included some links to these "awesome" hybrid HTML5 apps you spoke of

2 Likes

Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by thewebcraft(m): 9:20pm On Oct 30, 2015
lordZOUGA:
thewebcraft, you should have also included some links to these "awesome" hybrid HTML5 apps you spoke of
http://ionicframework.com/showcase
Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by thewebcraft(m): 9:21pm On Oct 30, 2015
FincoApps:
This is exactly the kind of post I was looking for, because I need to develop a large Android App but I'm not an Android developer and I really dislike that OS. The personal app I built for android used JQuery mobile and was really poor so I just assumed HTML5 apps on mobile renders slowly.

So please guys suggest to me, what framework do you suggest that can solve that tap delay very well and easily implement Google's material design rules.

Thanks
http://ionicframework.com [AngularJS] works well on android 2x

1 Like

Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by TELLHIT(m): 12:56pm On Oct 31, 2015
lordZOUGA:

What?
even yahoo, jumia, konga apps and many other great apps are hybrid and work perfectly with or without framework........ Hybrid apps can use system features like camera, gps nd co...... All it takes is a sensible programmer
Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by larisoft: 11:55pm On Oct 31, 2015
Webcraft, I know you know your stuff; and your post is definitely in order. However, here are my observations about hybrid apps:

1. They are usually larger than native apps.
2. They are slower; optimize all you want. Even the ones given as example were impressive looking, but still lagged a little. I suppose this can be ameliorated by using higher end devices.

But your points are salient.
Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by directonpc(m): 2:02am On Nov 01, 2015
and facebook, google do not use webview much. because it sucks. good thing someone came up with this post. screenshots from my native app under construction:

Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by thewebcraft(m): 4:01pm On Nov 01, 2015
directonpc:
and facebook, google do not use webview much. because it sucks. good thing someone came up with this post. screenshots from my native app under construction:

I guess you didnt read the post this is not the place to criticize hybrid apps besides your UI is too poor for a native app and you are still complaining about webview "saying because it sucks" your app looks like a 12 year old designed it.

This app below is built with HTML, CSS, Javascript and JAVA and your so called native app doesn't meet the features.

1 Like

Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by directonpc(m): 4:49pm On Nov 01, 2015
thewebcraft:


I guess you didnt read the post this is not the place to criticize hybrid apps besides your UI is too poor for a native app and you are still complaining about webview "saying because it sucks" your app looks like a 12 year old designed it.

This app below is built with HTML, CSS, Javascript and JAVA and your so called native app doesn't meet the features.
hate speech from some hate bast*rd! f*ck you
Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by Nobody: 6:26pm On Nov 01, 2015
This is the reason: some Nigerian developers are very lazy and they are the ones that give hybrid apps a bad name. I dont want to start pointing to those developers.
And it has gotten so bad that even the clients now in Nigeria will demand directly for native APPs or nothing for you.

As for the facebook people, dont forget to read this - http://venturebeat.com/2012/09/11/facebooks-zuckerberg-the-biggest-mistake-weve-made-as-a-company-is-betting-on-html5-over-native/
Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by thewebcraft(m): 7:35pm On Nov 01, 2015
directonpc:

hate speech from some hate bast*rd! f*ck you
grin cheesy cheesy Me I'm hate free, don't have your time. grin

2 Likes

Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by directonpc(m): 7:38pm On Nov 01, 2015
thewebcraft:
grin cheesy cheesy Me I'm hate free, don't have your time. grin
you do O. id1ot
Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by thewebcraft(m): 7:49pm On Nov 01, 2015
directonpc:

you do O. id1ot
Alright Stop with the insult, you're being childish

2 Likes

Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by directonpc(m): 8:17pm On Nov 01, 2015
thewebcraft:
Alright Stop with the insult, you're being childish
i didn't ask you to hate on my app before you started.
Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by Nobody: 8:23pm On Nov 01, 2015
Too much underage people on this thread. . . .

3 Likes

Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by maekhel(m): 9:00pm On Nov 01, 2015
dhtml18:
Too much underage people on this thread. . . .
Correct!!!
Thats why to comment on NL dey taya me
Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by FincoApps(m): 7:39am On Nov 02, 2015
directonpc:

hate speech from some hate bast*rd! f*ck you
Calm down dude.!!!
Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by FincoApps(m): 7:47am On Nov 02, 2015
directonpc:

you do O. id1ot

Why are you so angry. I like your UI because at least it's better than some of mine, but if I were you, I would ask for suggestions and not insult. I believe no one is so jobless to just start hating unfinished apps

1 Like

Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by directonpc(m): 8:39am On Nov 02, 2015
FincoApps:


Why are you so angry. I like your UI because at least it's better than some of mine, but if I were you, I would ask for suggestions and not insult. I believe no one is so jobless to just start hating unfinished apps
am not angry and read the guy's post he wasn't suggesting what needs improvement. rather stating how a 12 year old can do better (clearly hate criticisms)

1 Like

Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by elfico(m): 9:40am On Dec 02, 2015
Talking of webview, you can use Crosswalk for Android. It helps improve performance. Its available on intel XDK using cordova
Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by directonpc(m): 4:48pm On Dec 02, 2015
thewebcraft:


I guess you didnt read the post this is not the place to criticize hybrid apps besides your UI is too poor for a native app and you are still complaining about webview "saying because it sucks" your app looks like a 12 year old designed it.

This app below is built with HTML, CSS, Javascript and JAVA and your so called native app doesn't meet the features.
What features self?
Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by logica(m): 6:14am On Dec 03, 2015
http://techcrunch.com/2012/09/11/mark-zuckerberg-our-biggest-mistake-with-mobile-was-betting-too-much-on-html5/

Today, Mark Zuckerberg revealed that Facebook’s mobile strategy relied too much on HTML5, rather than native applications.

Not only was this a big mistake with mobile, but Zuckerberg says that its biggest mistake period was the focus on HTML5.
Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by Olumyco(m): 8:16am On Dec 03, 2015
Whether native or hybrid. I believe it is a function of the developer.
Besides d issue of performance (speed) is d only problem dat can differentiate them. But still a good JavaScript programmer might still b able to overcome this.
The issue of UI, and others is no problem at all. If u know how to use HTML and CSS then u r gud to go.

I will like to ask this question. How many programming lang can b used to build android mobile apps and their names?
Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by directonpc(m): 10:29am On Dec 03, 2015
Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by thewebcraft(m): 11:29pm On Dec 03, 2015
Re: Why Do HTML5 Mobile Apps Have A Bad Reputation (cordova / Phonegap)? by Nobody: 7:26am On Dec 04, 2015
thewebcraft:

why would he use html5 for a very large project?
Laziness maybe, ain't got the slightest idea.

(1) (2) (3) (Reply)

LAGOS Professional Training On Web Design&development With Certification.. / Solving Real Problems / Tutorial: How To Return Html In Json Response Using Asp.net And Jquery

(Go Up)

Sections: politics (1) business autos (1) jobs (1) career education (1) romance computers phones travel sports fashion health
religion celebs tv-movies music-radio literature webmasters programming techmarket

Links: (1) (2) (3) (4) (5) (6) (7) (8) (9) (10)

Nairaland - Copyright © 2005 - 2021 Oluwaseun Osewa. All rights reserved. See How To Advertise. 166
Disclaimer: Every Nairaland member is solely responsible for anything that he/she posts or uploads on Nairaland.