This post is amazing! Some quick advice for people currently self-teaching themselves full-stack JS, in case they read the comments:
- Read more posts like this to get context for the broader JS community.
- If just starting, invest in React instead of Vue. It’s not really because of how the components system is simpler, or how routing is ‘built-in’, but because there is a lot more community support/tutorials/resources on React. Being able to re-use a bunch of code to make SOLID iOS/Android apps is invaluable if you want to freelancer/remote dev-it-up. Vue has something similar, but it’s NOT as good or well-documented. If you have already spent a lot of time on Vue and not on React, or your mentor codes in Vue — full-steam ahead, just know that you may need to learn it later anyways.
- Implement Redux as soon as you start a React project and map state to it. If your app is simple enough to where you only need to track state on a component by component basis, then you can always uninstall Redux later. Redux makes your code much more ‘maintainable’ — meaning, be a good citizen and make it easy for other people to understand your application’s state.
- Using Jest & Enzyme is the perfect solution to testing a full-stack JS application — don’t go overboard writing tests for literally every single thing, but ask yourself what critical infrastructure/module do I need to make sure works 100% when I push new changes to production? Much faster than manually testing the whole application…
- Follow Ryan on Medium! I just made an account myself after seeing this article on Hacker Noon, just to pipe in and give him a high-five.