
Ask HN: First mobile side-project: What stack to choose in 2019? - woodpanel
Hi there!<p>Starting this year with the next 3 months to spare, I&#x27;m planning to build a mobile app in that time. It would be nice if I could use most of its logic for a single page app as well.<p>Requirements: list&#x2F;enter&#x2F;search data, create&#x2F;login to accounts, take pictures, do OCR on them, maybe even some AI on those pics<p>Me: frontend dev (~Angular), only mere backend experience, almost zero for native apps.<p>What do you think? I&#x27;m thankful for every answer! Hopefully I&#x27;m not burning the candle at both ends here with this project :-)
======
sjs382
Use _exactly_ what you already know (angular + whatever you use on the
backend).

Unless of course the _real_ "side-project" is learning a new stack[0], you
want to set yourself up for success by using what you're already familiar
with.

[0] This can be completely valid and worthwhile—just be honest with yourself
about whether your goal is to learn something new or to solve a problem or to
create a business.

~~~
woodpanel
Thank you.

My problem is: _exactly what I know_ is not sufficient ;-) I know JS. The
backend layer for me is unchartered territory, DBs I've shunned most of my
career. So some learning curve can't be evaded.

And from looking at the view-layer competitors to angular (vue and react) I'm
not sure why not to give those frameworks a try, as Ionic seems to be less
'native' and more 'webView' oriented.

~~~
zer00eyz
> DBs I've shunned most of my career.

Database Design for Mere Mortals: [https://www.amazon.com/Database-Design-
Mere-Mortals-Hands/dp...](https://www.amazon.com/Database-Design-Mere-Mortals-
Hands/dp/0201752840)

This is the book I recommend to everyone who is shy about DB's - I have owned
several copies and given every one away. It breaks down not only functionality
but how to create a good design in a sensible and easy to understand way.
Worth every penny (and now somewhat cheap)

~~~
cafard
Long ago I read it, and found it frustrating. I don't remember all my
objections, but I do remember one: the author spent about four pages almost
but not quite defining 3rd Normal Form. Yes, jargon can be a barrier for
beginners, but jargon also serves a purpose.

It seems to me that Jim Melton's _Understanding the New SQL_ was pretty good.
Anyway, I'm pretty sure I read one of Melton's books when I was learning about
databases.

~~~
ejanus
It was hard for me to absorb , I was like thinking that I lacked basic
knowledge needed to master it.

------
ecesena
React native + Firebase will get you a demo very quickly, especially on the
standard functionalities. Fake the others at first, and then you can decide
how to implement them with a custom api, e.g. on gcloud.

Launch in less than 3mo if you can, you can always iterate down the road.

------
woodpanel
I'm thinking:

 _VueJS + Nativescript + Vuex_ (Wanted to give vue a try for a while now plus
it's JS), _Firebase_ for accounts, _NodeJS_ (again, JS) + _GraphQL_ (being a
BE noob I'm hoping graph-DBs allow me to stay flexible with my data-
structure), BE hosting: probably _uberspace_ and then migrate to some cloud
provider (are there any reasonable priced cloud solutions to dump pictures
that are also easy to manage for a BE noob?)

------
Jemaclus
I'm fairly familiar with Vue and Angular, but I decided to write my current
side-project in ReactJS, with the intention of switching over to React Native
once I've wrapped my head around the React portion of things. So far, I'm
enjoying myself. I'm mostly a backend dev, so this is mostly new territory for
me. Very fun.

The bright side of the React (and Angular / Vue) is exactly what you said:
same logic for web and mobile!

~~~
iamthelord
I did exactly the same, First build a web app using ReactJS + Redux and once i
was comfortable with it, i tried porting it to React-Native. Helped me
understand these one at a time.

~~~
miguelrochefort
React Native is basically React with a different DOM. Very easy transition.

------
trcollinson
I found this video and talk to be very enlightening. I know it's not the
neatest, most exciting framework, but Rails with Turbolinks sure can do the
trick. My last two mobile applications were built in the same way that Sam
Stephenson describes here.

[https://www.youtube.com/watch?v=SWEts0rlezA](https://www.youtube.com/watch?v=SWEts0rlezA)

