@prank7
Co-founder at AltCampus
Passionate about teaching people how to code. Avid reader and love to play tennis.
Nothing here yet.
No blogs yet.
Ayub, good to know that you want to learn full-stack web development. If you are looking for an online course then I would say The Odin Project and FreeCodeCamp are good starting points. If you are looking for an offline course then we happen to run AltCampus , an offline programming bootcamp of sorts, in Dharamshala, HP, India, where we train people in full-stack web development with the focus on MERN stack.
Like most people have said here it depends on your project. However, I feel it would make more sense to share my approach. So here's my workflow- there is a master branch, a development branch and other branches are 'featureX' or 'bugFixY'. master branch is always what is in production, tested and complete. 'development' is the branch closest to master but has changes that should be merged to master and deployed next. Anyone who starts working on a new feature should always branch out from development . Try not to fix things directly in development , a branch for every bug (unless its just way too small a fix). Next, if a branch featureX gets ready and well-tested, I would merged it to branch development . So in a sense, development is also always production ready but has newer changes. Meanwhile before a deployment, if we have another branch bugFixY which is ready and tested, I would merge it in development . And once its time to deploy, I will simply merge development to master . It facilitates multiple fixes and features in one deployment while keeping it all unit sized and human-error proof.
Problem with using babel-register hook is that it slows down deployment time a bit because it transpiles ES6 to ES5 in run time. We need to rectify this in mern-starter. To use it in production you might want to precompile the app. Take a look at compiling options in babel here .
I like to keep it like this- app server server.js models <model.js> controllers <controller.js> routes <routes.js> utils configs <configurationFiles.js> client (if using React) components <FunctionalComponent.js> <FunctionalComponent.css> containers <ContainerComponent.js> <ContainerComponent.css> utils webpack.config.js/gulpfile.js node_modules
This is a good place to find such open-source projects to contribute to. Just start with the smallest project that you use and look at its issues, try to find solutions for them. Read its code and if you could fix any issue, send a PR. However if you are looking for project ideas to make on your own in order to be good at JS. Here are a few- Make browser Games (Tic Tac Toe/ Spacewars/ Snake Game) Make a real-time group chat application Make small npm modules (for e.g. @mayank makes CLIs , when he gets bored 😀). Also Checkout https://www.npmjs.com/~sindresorhus Make an app where you have to implement multitenancy Take a look at this discussion as well.