It's tempting to dive into new technologies with reckless abandon. The initial steps of writing code in a new language or framework is exhilarating and addictive.
It would seem, however, that becoming... familiar with a lot of different technologies is far from the best use of our time.
The community of developers is always in dire need of people who have proven their commitment to a very specific stack. Some stacks are in higher demand than others, some are easier, some or better for specific tasks... find a stack that fits your needs and specialize in that stack.
So, the next time you're convincing yourself to learn another framework or language, ask yourself if it wouldn't be better to dig deeper into the stack you've already been working with.
NOTE: I hope this message will help someone else, but I am writing it to talk myself out of wasting a bunch of time over the next few weeks.
Top comments (2)
Here's what I've learned:
"Jack of all trades, master of none" doesn't have to be the case. It's entirely possible to know a wide range of technologies and specialize in multiple; however, you need to make sure you actually understand to some reasonable extent what you're focusing on at the time before falling down other rabbit holes.
I wouldn't necessarily push for specialization early on, but do pick a topic to learn and stick with it, applying it to make sure it's sticking, before moving on to another.
And more importantly, make sure you have a solid understanding of the language itself before getting too bogged down in a framework or library. For example, there's a reason people are worried about React becoming the new jQuery, because there are a lot of devs jumping into it without a solid understanding of JS first, just as there were plenty of great jQuery devs back in the day who couldn't write vanilla JS to save their lives. This is why I consider You Don't Know JS required reading for any JS dev.
Great points. It's critical to get up to speed in how to properly use a language before venturing into any of its frameworks. Like you said, I've seen a few cases already where I suspect people rushed into learning how to build apps with React before gaining mission-critical skills in JS.
I also agree that once you've gained a high level of proficiency in a certain stack, that you can move on to specializing in other technologies as well. I suppose the key is simply not to rush, and to make sure that we are learning stuff deeply before diving into something else.