Hacker News new | ask | show | jobs
by posabsolute 3995 days ago
I think it is also a question of ressources, I built a pretty good backbone app with cordova, I would say that you can get 90% there (https://www.cakemail.com/mobile).

The question is also what can you afford. Can you afford to have 2 ios & 2 android devs? Can you afford to build 2 times all the UI features, etc.

For a small company, small budgets, if you have strong front-end devs & designers you are probably going to get a good cordova app & you can move your company much faster.

You have big bugdets? Hire the native devs, get the 100% performance & experience from native.

2 comments

For basic application there's no need for very deep knowledge of the platform, so you can find people who know iOS and Android equally well and just write two different apps. As Cordova might introduce more problems than advantages, writing two identical apps might actually be faster, if app is not that huge.

And native fast responsive app with smooth animations might earn you more, than HTML container.

I wrote a simple game using cordova and I won't do it again. HTML+CSS+JS just not suited for mobile app development (I didn't try react native, those guys might change the game). Either you use frameworks and everything is just bad or use vanilla JS and everything might work, but you have to write a lots of spaghetti-code and device support might be limited.

The real unmatched benefit of using cordova (or any other webview) is the ability to deliver updates for your app without bothering with App Store moderation.

You seems to only think about consumer apps, there is a lot of companies doing b2b. I agree that for games cordova is a very poor choice.

Unfortunately I can't agree that you can easily find easily good IOS & Android devs, I'm sure that some that can do it out there, but generally one platform always suffers more.

Has for Cordova issues, from my experience, nothing was so atrocious that writing 2 apps would have been faster.

"Either you use frameworks and everything is just bad or use vanilla JS and everything might work"

I think you might be thinking about games saying that, again I can't agree, if you don't understand what your framework does in your back that's another thing, but you can easily write optimized code when you control your render.

For example Ionic is a very good mobile UI framework for angular. It however wont save you if you start adding random things to the DOM while doing an animation.

> but you have to write a lots of spaghetti-code

What? As someone who does a LOT of vanilla JS, what do you consider "spaghetti code"?

"vanilla spaghetti" might be a new term we can start using :) leaves a bad taste in everyone's mouth!
You can get the same with Xamarin, Qt and similar tools that offer a better native integration than a web view.

Even if I have to code native like widgets in QML, it is surely way better than hacking around the DOM.

I've found loading QML-based interfaces to be slow on low to mid range android phones. It feels sluggish to start the app. I wonder if the alternate (QWidgets on an OpenGLContext) is still better than random DOM hacks?
The commercial version compiles QML into native code.

http://doc.qt.io/QtQuickCompiler/

Sweet, will check try this out tonight! Thanks for the tip!