Why you'll never learn all the frameworks

When was the last time you felt like a real development expert? Personally, I — somewhere at the moment when I first wrote a program that ended without errors. Programming is like an endless renovation of the house you already live in. _ Even yesterday, you thought that a new roof would be the solution to all your problems. And today it turned out that there were windows with automatic heating, and without them the house is not a house at all. And, of course, all the neighbors have already installed such devices._ When I first started writing code, it seemed that everything was arranged quite simply. I've learned the language, figured out a couple of libraries, and written a few algorithms, and you're already a great programmer. But over time, this feeling disappeared. Now I go to Telegram or read another tech blog, and it seems to me that everyone is discussing something that I haven't figured out yet: a new framework like Bun has been released.js, updated language specification (JavaScript ECMAScript 2024), released Webpack 6. And someone managed to test some new linter. And against the background of these bright changes, I look at my work project and wonder: and whether I can integrate all this ultra-modern stack into my projects, and whether it is necessary at all. Programmers as athletes One of the most challenging(and interesting) aspects of our profession is its inability to stop. If there's one constant in development, it's the speed of change. We live in an industry growing faster than any other — every month: New tools are coming (like Vite && TurboPack), Someone finds problems in existing approaches (for example, problems with the scalability of old monoliths), And someone offers fundamentally new architectural solutions (such as the popularization of microservices or "serverless-first"). These innovations make us part of incredible progress, but also part of the race. Only this race often turns out to be far from about technology — it is about ourselves. It's like you were comparing yourself yesterday and asking the same questions: How much more do I need to know? How quickly can I learn a new technology? Will I be able to understand in a week what others have been studying for months? And this constant comparison — as in professional sports-can either stimulate or destroy success. Yes, we live in a world where we are always under pressure from deadlines and new frameworks. But admit it: it's cool to argue with your colleagues about whether your project needs a new "lightweight" tool that you'll regret for the next quarter. Framework of the week. Or how technology is moving faster than us Every month there are not just new technologies, but "blindingly new" ones — so much so that it seems as if your project is doomed without them. Everyone has examples: Someone implemented Next.js also claims that without server-side rendering (#SSR), modern sites are no longer relevant. Someone switched to SvelteKit and said that its performance impact surpassed the project on React. Or remember the hype around Deno, which was supposedly supposed to replace the good old one Node.js. Do you use it? New 'tech killers' appear faster than you can finish your coffee and open the tab with their dock. And by the time you take the last sip, other material is already appearing with screaming headlines about the fact that there was an even more ultimatum competitor for the "killer". Remember how NoSQL replaced all these outdated and outdated relational database approaches, creating a beautiful world without PostgeSQL/MSSQL/...? And how did sharp Blazor destroy JS, TS, and indeed all front-end development? The volume of docs of new frameworks released in 2024 cannot be reread in a year, and none of us knows them all. No one. Even the most popular tech bloggers who give great conference presentations don't have time to jump on every tech train. The life of a programmer is a constant choice: what to learn and what to skip. Kubernetes looks like a complex monster, but do you need it in your real work? Maybe right now it's easier to focus on deepening the knowledge in your stack or on mastering TypeScript? At some point, I realized that knowledge overlaps in layers. If you have a good base — it won't be difficult for you to understand new tools, because the concepts remain the same. It's funny, but the more experience you have in programming, the slower your knowledge starts to become outdated. Pressure Formula: Why we always feel like we're falling behind The key problem that most developers face is the perception of time. Deadlines are pressing on you. This is superimposed on the perception of learning: it seems to us that the new tools should be mastered immediately, because "this should have been done yesterday". And if you spend time on GitHub, Hacker News, or Reddit, there are all success stories around: Someone launched a small software product that made millions. S

Apr 28, 2025 - 06:58
 0
Why you'll never learn all the frameworks

When was the last time you felt like a real development expert? Personally, I — somewhere at the moment when I first wrote a program that ended without errors. Programming is like an endless renovation of the house you already live in. _ Even yesterday, you thought that a new roof would be the solution to all your problems. And today it turned out that there were windows with automatic heating, and without them the house is not a house at all. And, of course, all the neighbors have already installed such devices._

When I first started writing code, it seemed that everything was arranged quite simply. I've learned the language, figured out a couple of libraries, and written a few algorithms, and you're already a great programmer. But over time, this feeling disappeared. Now I go to Telegram or read another tech blog, and it seems to me that everyone is discussing something that I haven't figured out yet: a new framework like Bun has been released.js, updated language specification (JavaScript ECMAScript 2024), released Webpack 6. And someone managed to test some new linter. And against the background of these bright changes, I look at my work project and wonder: and whether I can integrate all this ultra-modern stack into my projects, and whether it is necessary at all.

Programmers as athletes

One of the most challenging(and interesting) aspects of our profession is its inability to stop. If there's one constant in development, it's the speed of change. We live in an industry growing faster than any other — every month:

  • New tools are coming (like Vite && TurboPack),
  • Someone finds problems in existing approaches (for example, problems with the scalability of old monoliths),
  • And someone offers fundamentally new architectural solutions (such as the popularization of microservices or "serverless-first").

These innovations make us part of incredible progress, but also part of the race. Only this race often turns out to be far from about technology — it is about ourselves. It's like you were comparing yourself yesterday and asking the same questions: How much more do I need to know? How quickly can I learn a new technology? Will I be able to understand in a week what others have been studying for months?

And this constant comparison — as in professional sports-can either stimulate or destroy success.

Yes, we live in a world where we are always under pressure from deadlines and new frameworks. But admit it: it's cool to argue with your colleagues about whether your project needs a new "lightweight" tool that you'll regret for the next quarter.

Framework of the week. Or how technology is moving faster than us

Every month there are not just new technologies, but "blindingly new" ones — so much so that it seems as if your project is doomed without them. Everyone has examples:

  • Someone implemented Next.js also claims that without server-side rendering (#SSR), modern sites are no longer relevant.
  • Someone switched to SvelteKit and said that its performance impact surpassed the project on React.
  • Or remember the hype around Deno, which was supposedly supposed to replace the good old one Node.js. Do you use it?

New 'tech killers' appear faster than you can finish your coffee and open the tab with their dock. And by the time you take the last sip, other material is already appearing with screaming headlines about the fact that there was an even more ultimatum competitor for the "killer". Remember how NoSQL replaced all these outdated and outdated relational database approaches, creating a beautiful world without PostgeSQL/MSSQL/...? And how did sharp Blazor destroy JS, TS, and indeed all front-end development?

The volume of docs of new frameworks released in 2024 cannot be reread in a year, and none of us knows them all. No one. Even the most popular tech bloggers who give great conference presentations don't have time to jump on every tech train.

The life of a programmer is a constant choice: what to learn and what to skip. Kubernetes looks like a complex monster, but do you need it in your real work? Maybe right now it's easier to focus on deepening the knowledge in your stack or on mastering TypeScript?

At some point, I realized that knowledge overlaps in layers. If you have a good base — it won't be difficult for you to understand new tools, because the concepts remain the same. It's funny, but the more experience you have in programming, the slower your knowledge starts to become outdated.

Pressure Formula: Why we always feel like we're falling behind

The key problem that most developers face is the perception of time. Deadlines are pressing on you. This is superimposed on the perception of learning: it seems to us that the new tools should be mastered immediately, because "this should have been done yesterday". And if you spend time on GitHub, Hacker News, or Reddit, there are all success stories around:

  • Someone launched a small software product that made millions.
  • Someone posted a library that collected tens of thousands of stars.
  • And someone implemented algorithms that you didn't even know in theory.

But this is an illusion. Real life isn't like that. No one posts GIFs as they spend 3 days trying to figure out why docker-compose doesn't work for them. No one posts about banging their head against the wall for 2 hours before the test database started. We only see the result, not the path. And we compare ourselves to this "edited image".

GitHub is like Instagram for programmers; only instead of beautiful photos, there are projects with perfect code that make you forget that real life is a little less glamorous. No one puts out stories "five hours of debugging, and the reason was in my cache".

In this race, it is important to understand one thing: this approach destroys everything. If you constantly run just to "catch up", then you will get tired faster than you will succeed.

How to handle this race

I don't think that any of the programmers can completely get out of this feeling. We will always be passionate about something, concerned about something in our work. But I've learned to treat it differently.

First — I don't compare myself to other people anymore. There is no "perfect engineer" position to strive for. Even if you meet a cool developer who created a bunch of libraries, they also started somewhere. His way is his way, and yours is yours.

Second — appreciate your progress. One of the main principles for me was the constant "recording of small victories". Yes, today I didn't learn a new library or implement a supernova tool, but I figured out another bug, optimized the module, or closed several tasks. This is already a reason to meet the needs.

Finally, the job of a programmer is more about curiosity than commitment. We don't have to "learn all the technologies" or "become the best at everything at once". We must always remain curious and explore the world. This is the best thing we can do for ourselves and this profession.

How to get out of the "race"

  1. Do not rush to master everything at once. Add technologies to your list, but don't try to dive into every topic. New tools always seem irreplaceable, but usually only 10–20% of them actually become standards.
  2. Compare yourself only with past experience. Have you learned how to use a new tool? Did you solve the problem easier? This is your progress.
  3. Get inspired, but don't focus on other people's charts. Everyone has their own "race". Some people write neural networks by the age of 20, while others have a career built up by the age of 30–40, but it leads to a deep understanding of fundamental knowledge.
  4. Learn the basics of. This will slow down the obsolescence of your knowledge. If you rely on the principles of development (SOLID, algorithms and data structures, asynchrony), then any framework will be much easier to master. After all, concepts don't change.

Instead of concluding

I like to think that programming is a profession in which you will learn and grow until the very end of life. It's a never-ending race with yourself. But it's not about being the best at some conferences or showing off in interviews. It's about asking yourself every day: "What new things can I understand and create?"

But if you're going to admit it's a race, then imagine that it's a race for fun and not to get to the finish line first. Look around you: you are a participant in an incredible marathon, in which it is not so much important for us to win, but to learn how to enjoy running.

Yes, we will always be a little behind reality, but this is not a reason to stop. After all, the best thing about this job is the learning process.
Everything you do is a step forward. As one of my colleagues said:

"If you still ask questions, it means that you continue to grow and learn — and this is the main sign of a good programmer".