Choosing a new framework or library

I've been thinking, reading and asking around a lot about this lately; how to chose which framework or library to learn when there are so many of them? This is especially the case in JavaScript community, where new technologies are popping up all over the place! So stay tuned!

Disclaimer: I won't this is just a meme.



So without further ado, here is a small check list I came up with:

  1. Pragmatical/capitalistic reasons: You may find yourself in position that you are a job that requires you to use an old "outdated" library, like jQuery. In this case, obviously, learning old tech will not be a waste of time, jQuery being perhaps the most apparent example, due to the fact the it is still used a lot, although slowly declining since lot of problems that it once solved can be done "natively" with vanilla JavaScript. That being said, since companies are pretty slow to adopt new tech (business avoid experimenting, they wan't stability) learning an older framework or library can help you land a job. 
  2. Educational reasons: Learning to use a library, like React, can improve your understanding of JavaScript, provide you with a practical opportunity to to make use of ES6, ES7,ES8 etc.  Also it will expose you to a lot of related tools (for example Webpack, Node/NPM) and libraries (Redux for instance), thus enabling you to see the bigger picture and to see first hand how it all fits and works together. Personally learning React helped me get a better understanding of functional reactive (duh!) programming and even pick up a few command line tricks. I may be a little biased when it comes to React (I love it) and  I know more experienced developers have strong opinions when it comes to separation of concerns, but I'd like to think that I'm open minded - I don't mind using JSX,  at all (it's not mandatory to use it)! So to conclude, React is a good choice for those ready to move beyond JavaScript basics, I've found it to be a lot easier then Angular and more friendly towards beginners, it has lot of tutorials, helpful community and the issue with licensing is now resolved so it's Open Source now under MIT license.
  3. Personal reasons: This when you already have a developer job and are looking for a change, just to try something new and to experiment with personal projects. Example would be; you want to learn Vue, which has a lot of hype, very active community, similar features from both React and Angular (best of both worlds, as Vue fans would say). However, there not many jobs Vue jobs available, at the time being, compared to React and Angular. This my humble opinion: newbies should first learn established frameworks that are sought after on the job market.

    Hopefully I haven't bored you to death, and thanks for reading!

Comments

Popular posts from this blog

Less Technical Career Options for Testers

10 Tips for Designing Better Test Cases

How to Pass AZ-900 Azure Fundamentals Certification Exam