Okay, not such a big problem. But I noticed that there is a certain trend in behavior - especially in the world of technology and software development. I don’t know what to call it, so for now we’ll call it “student syndrome”. He describes the behavior when a person continuously strives to learn and never applies acquired knowledge.
The most common area where I watched is web development. In recent years, I have noticed a dramatic increase in the number of frameworks. The illustration below shows how many of them there are.
Source: https://github.com/mraible/history-of-web-frameworks-timeline
Over the past five years, there have actually been a lot of frameworks. I also noticed that web developers consider it necessary to own several frameworks. What for?
')
I myself have suffered a little from student syndrome, but I’m trying to fight him. I am always interested in learning a new language or technology. I noticed that I was already creating simple web applications using:
• Go
• TypeScript
• NodeJS
• React
• Angular
• Spring
•… × 100
The list goes on. I have created many to-do list applications, more than ready to admit. I have already become an expert on to-do lists. Maybe I'll write it in my resume.
Interviewer: Have you created any working application?
Me: Not really, but my portfolio contains in abundance MVC web applications of the “to-do” type, which I did on an isomorphic React server using NodeJS.
With such a large number of web technologies, the biggest problem is that the knowledge of most of them, including the backend, is expected from a “good” web developer. I think it's not fair. A few years ago there was a clear boundary between frontend and backend developers. Today there is no real border. We call it full stack. It sounds as if one person should do double work and in reality does not specialize in any of the areas.
I myself have a tendency more towards backend technologies, but with the increasing popularity of isomorphic servers, it is often necessary to write code for the frontend. If you are not familiar with isomorphic servers, here is an example:
Isomorphic Javascript
When studying the numerous frameworks and technologies, there is a feeling that there is less time to create something valuable. I spend more time on training than on work. If I start to really write something and invest in this time, I feel as if I miss the opportunity to learn new cool technologies and am afraid to be left behind.
I think the solution is finding the right balance. Concentrate on one technology and work with it. Of course, you can learn new technologies, but spend on them no more than an hour a day. Make sure that it remains a hobby, and not become a dependency. It seems that the student syndrome is getting worse if you use the only technology at work, because we spend most of our free time learning new technologies, not using them. But if you work for a company that encourages learning, you can get the best of both worlds. My opinion about the right employer, see
here .
I recommend to pause and think. How many languages ​​or frameworks have you mastered over the last year? How many simple apps have you written? If more than three, then there is a chance that you are learning too much new. Of course, maybe this is exactly what you like to do, but I think that many of us could spend the time more profitably devoting one technology to it.