DEV Community

michTheBrandofficial
michTheBrandofficial

Posted on

🛑 Stop learning many frameworks.

I have a confession...

While starting out as a software developer, I jumped from React to Solid and back and forth. Then, eventually, I'd abandon the project I was working on.

I fell victim to learning many stacks at once.

There was no clarity.

I didn't have a clear roadmap.

I learnt that I should focus on building something I truly resonated with, something that really solved a problem I had.

So I stuck with that for some time.

After a while:

  • I realized that my consistency to work on one project had 10xed.

  • I was learning better and understanding concepts quickly.

  • I had better project management skills.

This approach led me to finishing a note taking PWA successfully (link 🖇️ in the comments). Which I am so glad about.

What to learn from this?

You can build software with any language, any framework you want to use. Just pick one and stick with it.

Good luck on your software developer journey 🛣️.

Do like 👍 and follow 🏃 for more content.

Top comments (36)

Collapse
 
miketalbot profile image
Mike Talbot ⭐

This is very true when learning. Just learn to use one thing completely and then the transition to other things is much more obvious and the reasons why you might make such a transition will become more clear and make sense.

There are a lot of technically amazing frameworks with a lot of fans and a lot of articles expounding their virtues - frequently however there are just a few supporting libraries and UI kits etc., meaning you have to do way more yourself. Choosing one of the big three: React, Angular or Vue will provide a much richer environment in which to learn and build.

Collapse
 
sushruth profile image
Sushruth Shastry

I have a contradicting opinion - don't stop yourself from learning new frameworks. Only caveat is - don't expect yourself to build a great thing with them. Learn for the sake of exploring possibilities and having experience to empathize with other developers and also to bring back patterns from there to what you write. Don't stop learning and don't just stick with what you know for long. However, I do agree don't try to build your dream project with something new you were learning - this is the type of situation where utilizing your strengths is better than strengthening yourself in something new.

Collapse
 
boldnight153 profile image
Matthew McKinney

I checked out your app. Just a few things. 1 the menu doesn't always work. Sometimes you have to close and open it several times to get it to work.

The trash lacks the menu or a close. And the empty trash doesn't work.

It seems you can filter by "Upcoming" but no way to enter a date when imputing a note. It seems to suggest more of a calendar of events or an agenda but only has the date and time of when the note was added.

I love the app! It was great!!!

Collapse
 
michthebrandofficial profile image
michTheBrandofficial • Edited

Hello, Mathew 👋.

I have worked on the fix for the trash, and the menu button for the app.

If you have time, would you help me test it out, I would appreciate it.

Here is my Twitter: https://twitter.com/mich_thedev?t=LI9O54e23e2PRIfYbnlQog&s=09

DMs are always open. Thank you

Collapse
 
michthebrandofficial profile image
michTheBrandofficial

Yeah it's the app displays the date when a note was first created and the time of the latest update.

Collapse
 
michthebrandofficial profile image
michTheBrandofficial

Thank you 😊.

I have been working on those exact bugs. I will be sure to deploy the latest version with all the fixes tonight. Thank you for helping me to user test the app 🤗

Collapse
 
michthebrandofficial profile image
michTheBrandofficial

By the way, are you free. I am looking for contributors for the project. If you are, you can send me a DM on Twitter. Here is my handle https://twitter.com/mich_thedev?t=932CMc0eVs5kuydNLBrjrw&s=09

Collapse
 
michthebrandofficial profile image
michTheBrandofficial

About the menu. It's a bug related to the css. And i will do my best to fix it.

Collapse
 
michthebrandofficial profile image
michTheBrandofficial

Here is the PWA link : notesrus.vercel.app

And the repo link : github.com/michTheBrandofficial/no...

Collapse
 
sudo_coder78 profile image
karthik

What you said is absolutely true ..! I was shifting frameworks Angular to flutter vice versa while learning.. then did the same thing sticked to one thing (Angular).

BTW I have just visited your PWA it's awesome especially the dark mode.. but when you open the "side menu" it is working for the first time then thats it is not correctly working anymore... Just letting you know so that you can fix it.

Collapse
 
michthebrandofficial profile image
michTheBrandofficial

Ah that is so great 😃. And thank your for checking out the app. About the bug 🐛, I have checked it out and I will start working on fixing it. Thanks again

Collapse
 
justwonder profile image
William Onyejiaka

The design is awesome

Collapse
 
michthebrandofficial profile image
michTheBrandofficial

Thank you!! 😊

Collapse
 
joelbonetr profile image
JoelBonetR 🥇 • Edited

I agree and disagree at the same time 😂

IMHO it depends on your experience, your position in the learning curve and your expectations.

If you participate in the decision making you need to know or at least understand as much as possible in regards of frameworks, libraries, generators and so on and so forth, otherwise "when all you have is a hummer... everything looks like a nail".

On the other side, if you're doing your first steps in the dev world or you just want to specialise in a given stack as a developer, maybe getting your first job or pursuing an expertise on that given stack you don't need to have such a big picture.

There are developers that are coding even when they sleep, others dedicate a great amount of -spare- time to develop and others just want to code at work and forget about it on their free time.

All three scenarios are perfectly valid and even if you're a hardcore dev, you may jump from one to the other (e.g. you develop 2 to 4h a day in your spare time, maybe 4 to 8h on weekends but then you get a kid and you stop doing it).

TL;DR: do as you feel like whenever you feel like 😁

Collapse
 
smitterhane profile image
Smitter

Time is not well spent when you learn several frameworks that actually do the same thing e.g someone trying to learn Angular and React, when they all can just do the same thing.

Also letting the brain focus on one framework at a learning period, is a genuine way to progress faster as a software engineer

Collapse
 
dionarodrigues profile image
Diona Rodrigues • Edited

I agree with what you said, but I also think that different devs have different ways of learning and absorbing what they are learning and that this also depends on the moment in our life and what we are learning. There were times when I could easily learn more than one language at the same time and other times it was a mess. I believe we should always try to identify where we are at. Don't you agree?

Collapse
 
michthebrandofficial profile image
michTheBrandofficial • Edited

That is so true. I agree 💯

Collapse
 
chukwuma1976 profile image
Chukwuma Anyadike

Agreed. It is most important to learn the fundamentals first then if you want to switch whether it is a front end framework or back end language it will be almost seamless. But I'm with you, find what works for you and stick to it.

Collapse
 
marco_43 profile image
Marco

I'm so with you. I have a list of funny projects which I want to build and have noted a different framework behind every idea (just beacause I want to learn them). But I recognize that it drains too much energy to always start from the beginning and go through the learning curve of every new framework.

The solution for me is, stick to one (react / nextJS is new for me so that will be my choice, I'm an Angular professional), and go with it and build two or three cool apps and projects. And THEN... I can think about looking to other frameworks (I talked to you, svelte) :-)

Collapse
 
alexmario74 profile image
Mario Santini

I agree you should focus in what you're learning until you understand it enough.

But, I think a developer should continue studing libraries and framework.

Not for the sake to use, but to better understand the trade-off that they offer, and to discover better way to accomplish his work.

Collapse
 
cmcnicholas profile image
Craig McNicholas

Don't learn frameworks.

Learn paradigms.

OO, Functional, Imperative, Procedural etc.

You don't even have to stick with one language but the worst thing you can do is become a Framework Developer. You only see things through one lens and transitioning to new frameworks and languages will always be slower due to thinking "the react way" or "the angular way".

Once you've got a good fundamental knowledge of the way things work, trying writing your own libraries/frameworks and you will appreciate the effort that goes into we'll maintained ones even more. Understanding all these problems makes you more robust.

I'm not saying don't learn a framework, I'm just saying don't shy away from learning about some of the things they wrap up else you can very easily get caught out.

Collapse
 
michthebrandofficial profile image
michTheBrandofficial

You have a very good point. Frameworks come and go. While patterns are here to stay 😁

Collapse
 
greatmatt4 profile image
greatmatt-4

so true .i concurr with you ,on that learning many frameworks is not the ideal.instead stick to one you can perfectly explore and other concepts of learning we be easy .

but for career purpose and concentration,learning frameworks seems mandatory

thou it can be xplore tru any framework learn perfectly and to d next

Collapse
 
axmad386 profile image
axmad386

Yes, I stop learning frameworks. I build my own 😆
github.com/kodepandai/lunox
Just want to share, don't learn it 😜

Collapse
 
michthebrandofficial profile image
michTheBrandofficial

You put a lot of work into this. The directory structure is large. What a good one.

You are mostly backend right?

Collapse
 
axmad386 profile image
axmad386

Thanks 😊. Actually I am Fullstack. I do backend on my office, but for personal project I love doing experiment on frontend stuff. See this if you like tailwindcss github.com/kodepandai/kagura

Let's connect on github
github.com/axmad386

Thread Thread
 
michthebrandofficial profile image
michTheBrandofficial

I would love that. Also on Twitter

Collapse
 
abhishake1 profile image
onFire(Abhi)

Id really recommend jumping frameworks once you are confident in a few. I can use react, its meta frameworks and its ecosystem concepts in flutter, flutter concepts in react native, dotnet concepts in nest, django patterns in flutter and so on. You dont learn the framework, you learn the concepts and ideas.

Collapse
 
gulabsagevadiya profile image
Gulab Sagevadiya

You think that you got speed after focusing on one framework but it's not. You got speed because you have explored many framework at same time. I am also thinking this way that I should focus on one framework but i also learn many framework at same time and build every project on different framework and I am getting slightly better on every new framework as we are aware of code base structure and design patterns of many frameworks.

Collapse
 
michthebrandofficial profile image
michTheBrandofficial

When I was transitioning from framework to framework, even though that was chaotic, I always felt that I had gotten a little better than I was before.

You are really right 👍