May be someone else finds this helpful too.
These are some things I found helpful when deciding on a new language or framework or module.
Deciding to learn
I pick something to learn only when the language/framework…
- has been around for at-least a few year
- is under active development and is likely to stay
- has good community support/tools
I find it easier to learn something by category like:
- Frontend: Angular
- Backend: Spring Boot (Currently with Java)
- Database: SQL (pretty much all SQL are same)
- Deep Learning: PyTorch
- Containerizing: Docker
- Hardware: Ardruino (C++)
- Game Development: Yet to be decided
The benefit of learning by category is that same skills can apply to other categories.
Like: My pandas (python) skills helped me a lot during new SQL problems.
Deciding not to learn
I hate learning “new” languages/framework/technology especially when
- it does the exact same thing that I can do now
- does not add any new benefit
- it’s old/outdated
- if I’ll likely never use it
- proprietary technology
- no AngularJS after learning Angular.
- nothing less than Spring Boot when doing Java.
- PyTorch is probably enough. Don’t need Tensorflow.
- SQL is enough. No need of NoSQL yet.
There have always existed exceptions and cases where I just needed to learn something.
- Old but need it: Had to learn excel to reverse engineering and build same feature in Spring Boot
- Learning a good framework: Had learned Django before. After joining worked I learned Spring Boot and realized it much better.
- Made life easy: My application UI was crap. Easiest way was to learn CSS myself without using Bootstrap. It was easier than I expected. Thanks Fireship.
- For Future: I may learn a little Firebase just to see how fast I can develop applications in it. Hopefully transferring some of that knowledge to my daily coding.
But most exceptions occur where I either had to do it or see a benefit that is transferrable to what I do.
I try not to learn something just to add to resume or to list of things that just sound cool (sometimes I do).
I usually spend months deciding.
YouTube videos and written articles have been great help when deciding.