On Wednesday, June 15, 2016 at 2:21:07 PM UTC+2, ömer iyiöz wrote:
>
> Hello, i'm learning angular.js. And i need to learn a backend technology 
> but i cannot decide which one to choose. My plan is to develop a website 
> similar to youtube. Number of users expected for this site can reach to 1 
> million in 1 years. I'm thinking about node.js, django, and spring boot. 
> What should be my right choice?
>

All right, I'll bite.

Most likely, you can just take any technology that you want or like, 
they'll all behave. You can start with plain-ole PHP that has a huge amount 
of tutorials, classes, projects, articles, community. Or Django as you say, 
most people I know say great things about it. You can try something a bit 
more verbose, but also more capable, like Spring you mention. You can go a 
bit unusual with Haskel or Erlang or you can try the newer kids like Go or 
Node.

But because you're learning Angular, I assume you're also getting a grasp 
on JavaScript. So I would recommend Node.js and Express. It's mature and 
stable and battle tested, the community is vibrant and usually helpful and 
it's also pretty flexible. You're also more likely to make fatal errors 
which will lead to crashes - like due to memory leaks etc - but I think 
it'd be a good thing - fail fast and learn from it.

You might want to go with some easy to use persistence. Classic SQL starter 
database like MariaDB would work great if you want to go relational, but 
the tables might get confusing. And if you're learning, you're probably 
going to be changing things around your table layout a lot - so it's easier 
to just go with MongoDB or CouchDB for persistence - as there such 
migrations are usually non-issue and done with code. Again - much easier to 
make mistakes in design - but failing there is good too (Database design 
for a "I'm learning angular, what backend to learn" level of experience is 
probably a huge unknown). Fail, learn from it, iterate. The main point is 
that a lot of the "db design" if I can name it so is again happening in the 
code - so you're still only learning JavaScript.

You'll also need storage space for backend. Amazon S3 or Google storage 
seems like a reasonable choice, but if you want to learn, maybe it's better 
if you start with simple local storage. I take it that if you go to that 
called-out 1 million users in 1 years, you'll also attract a lot of 
investor money which will let you pay people who can migrate and scale this 
easily to whatever. So for OS and storage, maybe something simpler like 
Scaleway starter cloud - which gives you 50GB of fast storage for cheap - 
would suit you well. Again - pretty easy to scale out of those things if 
you need to so don't worry much about it.

But if I were to suggest a stack for somebody who's learning all these 
things today, I'd stick with plain Node.js/MongoDB/local file system for 
backend and then as they learn, break out of those bounds.

-- 
You received this message because you are subscribed to the Google Groups 
"AngularJS" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/angular.
For more options, visit https://groups.google.com/d/optout.

Reply via email to