

Native or Hybrid mobile app? - rajlalwani

Hi,<p>I am building a team on mobile technology. I have an option to groom the team on native technologies or go with hybrid. The argument for both is equally convincing. Could you please based on your experience recommend one to us.
Thanks
======
seyfulislam
I had to make a decision a few days ago, and I decided to go with Ionic
framework. We are in a very early stage of building our very own startup with
a team of 3 persons of which I am the sole developer. Because of this, things
that effect my decisions may be a bit different than yours.

Questions that you should ask yourself (And my answers in paranthesis)

1\. Do I need to develop for Android, iOS and other platforms at the same time
or near future? (YES)

2\. Do I have expertise on any? (YES for Android, goddamn NO for iOS)

3\. Do I have time to gain experience for the domain? (NO, expected to build
an MVP for Android and iOS in 1 month, while continuing a full-time job)

4\. Am I going to develop a dumb client or some heavy tasks are going to be
processed by the app? (A dumb client which will make some API requests)

5\. Do I have excellent web development skills? (Yeah)

All questions are important, but the answer of the 4th may push you to go
native if you are doing some things that would make use of CPU/Memory as
efficient as possible.

Also the Cordova or Ionic or any other similar frameworks are just a
painkiller which does not solve a problem but hide the problem, which is
lacking native app development skills/time. Except for a few examples, there
is no app that is used by millions which are not native.

------
oaksagelew
Ionic is OK but has its limitations. Its CSS components are not all that
pretty, compared to those from, sat, SemanticUI or other CSS frameworks. And
it's not easy at all to integrate other CSS frameworks. Also, current Ionic
does not support Angular 1.3, although its next beta release will, but not
clear when it'll be released. You lose a lot of functionality by not having
Angular 1.3.

I'd seriously look at two relatively new frameworks: AppGyver, which looks
fantastic - so much so that I may switch tools/frameworks on a start-up
product. Or, Telerik's NativeScript looks really promising, but it won't be
ready for production use until 05/15.

Take a hard look at frameworks before committing to one - esp. Ionic. It
looked really good, which is why I, as lead dev in a consumer-oriented
startup, chose it for our hybrid app. But, after several months of working
with it, its warts become evident.

My $0.02.

------
NicoJuicy
If you need fast prototyping and your team has experience with webdesign, you
should go with something like Cordova / Ionic / ...

If you need a lot of native features, you could create the native app
afterwards.

Ask your team what they think, do they have experience with Android / iOS?

------
joshcrowder
I've spent the last year managing the build of 5 Hybrid apps predominately for
Android. The workflow from a development perspective is great, really you cant
ask for more, being able to write html/css/js is a huge win for the team of
mainly backend/frontend developers.

Although - I wouldn't recommend it for every app. Our apps are enterprise
focused business apps, mainly forms and data. We have built a social - B2C app
before but the results were not as good as we'd hoped. It does still feel like
a hybrid app opposed to native.

My advice - If its an app focused on data and forms then yes go hybrid, if you
want to do something different go native.

------
Avalaxy
I'd take a look at Xamarin and/or Xamarin Forms. It's really good and allows
you to build native apps for iOS, Android an Windows Phone with just 1
codebase. It can save tons of money.

Xamarin Forms is taking it all a bit further than the other Xamarin offers
because Forms even allows you to build 1 UI using generic concepts that will
be rendered in the style of the platform that's running the code. I have to
warn you though: Forms is still pretty new and buggy. The concept is really
really good and it does work pretty well, but it's just not mature enough for
big applications.

------
CmonDev
You can hire cheaper JavaScript developers, so hybrid could be interesting in
that respect. Otherwise just go for quality => native. Also native doesn't
mean multiple code-bases, if your team is interested in functional programming
you can do Xamarin + F#/C#.

------
rajlalwani
My team is good with Ruby on Rails and other web tech. They can pick up
Android and I will be iOS guy... but, I would rather keep it simple for now.
We have developed an app using Ionic but I am not happy with its perf.

------
rajlalwani
My Team is good in Ruby... So, I have an option of Roboto (Android) and
RubyMotion (for iOS)... Would highly appreciate if some can please share any
experience on them?

------
morenoh149
vote for Ionic here. There's simply so much value add from being able to apply
the knowledge you have in the front-end to a mobile app. Plus the ability to
deploy to android and iOS at the same time.

