In the first years of my career, I was mostly focussed on catching up with the requirements of my assignments. So I always know what to learn next, it was all mapped out for me in the project I am working in.
As I get more seniority, I started to have more time to branch out and learn new technologies that aren’t currently being used in any of my projects. That brought up a new kind of problem.
WHAT IS NEXT? How to choose what I will learn?
As a frontend developer, I decided to extend my knowledge about backend technologies. So far I had some familiarity with Node.js and I wanted to add some Python to my skillset.
While I was looking into some frameworks of Python, another question has arisen. What is the most important in a framework?
If you ask me this question couple years ago, I would probably say: “only thing that matters is performance”. But now I have a different opinion about it. There are some other factors that can be just as important.
These factors are:
- Maturity of the framework. Longer the framework stays active and used, problems are pinpointed and solved.
- Community that uses the framework. Bigger the community, better support you can find for more edge cases.
- Stability. If there are often breaking changes and shifting dependencies between versions, it can cause more problems than it is solving during migrations.
- Learning curve is also considered an important factor, mainly because it affects the community size and time (which is the most precious concept for every developer) spent.
- Demands in market. Nobody wants to waste their time on a skill that won’t worth.
If you are wondering which framework I chose, I went with something relatively old. There are faster, better performing frameworks exist and probably in the future I will get a chance to look into them more as well. But for now, considering the factors I mentioned above, I decided to go with Django.
Thank you for reading this post!
Posts by Oz
Tweet