Hello, my name is nino and now i'm confused with javascript, because I do not know what technology should I use, any suggestions?
This is some of what I want, but still confused to choice.
Sorry, if I ask a lot because I was confused, because the amount of technology used javascript.
I want to be a full stack developer in javascript.
Thank you very much.
hi @hermawan please check this devmag post which covers some your concerns
Hello all, big thanks for all the advices for me. Outstanding response to a newbie like me.
Thanks.
Assuming you are comfortable with JavaScript and its weird parts, I will break your question into several smaller ones:
Keep in mind that all of the above wouldn't matter if you don't have a solid understanding of JavaScript!
Backend Framework - Express is nice and minimal. Sails is built on top of Express, is heavier, follows MVC architecture and gives you a lot of things pre-configured.
Template Engine- I have used ejs and jade, both are good.
Frontend- React, although its just views, because it has a very strong community and resources. There are many other client-side options like Angular, ember etc. Since you want to be a full stack developer, you should consider trying out isomorphic apps(client side and server side rendering). For which, React+Flux is a great combination. This post engineering.devmag.io/post/1/creating-an-isomorphic-blogging-app-using-react-and-flux explains it a lot more detail.
Tooling- I find gulp and webpack to be pretty good.
ES6 Support- No, you don't need to use babel. There are other ways to use ES6 in node like using --harmony flag in node, but it has limited support for ES6. So Babel is definitely the recommended way.
Hope this helps. :)
Javascript is client side programming language,if you want to become a full stack developer,you need to know any one of the server side languages like PHP, java, Ruby on Rails or Node.js.
Then you can call yourself a full stack developer. To start off you can learn Node.js, as it is written in javascript, but executes on the server.
Here are my experience based on your questions:
I personally use ExpressJS. I made a small project with Meteor a long while ago and it was very nice.
I don't use a template engine. I use AngularJS and then use a proxy like Nginx to route all API request to the Express server.
See above
In the company I work we use grunt, but personally I like gulp more.
I don't have experience with ES6 because I use TypeScript. A quick look at babel, I still can't say for sure if you have to use it but theoretically no because your server isn't consumed by browsers.
I think database also counts to the stack. There I use MongoDB and Redis.
I hope this helps a little bit ;) If not just ask - we don't bite :)
I think Express is a nice choice for backend, it's very simple and gives you a lot of control.
About templates, I used to work a lot with EJS but I'm mostly writing Angular apps right now, so there's no server-side template rendering, just requests/replies (containing JSON) between the client side app and the backend. I prefer gulp over grunt, syntax looks clearer for me. I haven't tried Babel yet but it looks promising, it's very probable that I will use it for my next project.
Other tools I'm using for deployment, etc.: I'm deploying my apps to AWS / Amazon EC2 through Tutum. When I push stuff to a repo, Github triggers a request to CircleCI (testing), when CircleCI is done, it triggers a request to DockerHub, DockerHub generates a new Docker image and this process ends in Tutum. Tutum is notified everytime there's a new image available, it will take care of redeploying the container in your instance(s), also it lets you scale up by setting up new instances, "clusters", etc.
You may reach me at matias AT insaurral.de if you have any specific question/problem/etc.
Software Engineer
Ajinkya Borade
JavaScript Developer (<3 GoLang)
Backend: Learn Express, jade.
Frontend it has to be AngularJs, RequireJS, ReactJS.
And please note ReactJS is not a framework, it's just a library, like handlebar.
Gulp, grunt as build tools.