First of all, let’s see what the heck is FOMO. It means "fear of missing out" and it manifested in my learning process. For me, FOMO was that thing I did not know I had until I read about it. It was more like an epiphany.
Being a self-starter in programming, I was very easy to influence in the beginning regarding the "what to learn" part. I started by learning the basics of HTML, CSS and Javascript, but in the same time I wanted to be up to date with all the latest programming trends.
So, reading all kinds of blog posts about cool and hot frameworks (I’ve not heard of) it felt overwhelming and like I had so much to catch up with. The more I read the more I would find out about a new shiny framework and the more I realised how little I knew, so the more I felt to read about it. It was a vicious cycle.
Instead of programming as many hours as I could, I became a professional framework and resource “bookmarker”, which is the wrong way to do it.
When you are a beginner, the world of programming it looks to you like a very tall mountain to climb with all those frameworks and resources available and it can get to you, so here you have 5 suggestions that can help you to get rid of FOMO:
In my opinion, the best way to start is by learning the core elements of the underlying programming language of the framework.
Learn Javascript first and then go learning Angular JS, React JS or other hot front-end JS framework. If you learn a framework and not the programming language the framework is based upon you will learn it harder and if that framework will suddenly go out of fashion you will still have to learn the underlying programming language.
So, frameworks will go out of fashion quicker than programming languages, which is not quite obvious for a beginner.
It’s ok that in one week you learned just the basics of CSS and you still don’t know to write CSS the SASS way and you didn’t use font awesome and animate.css. Oh, and let’s not forget about hover.css.
Take it easy and give yourself a pat on the back for what you managed to learn, it’s still better than nothing, right? Try to celebrate your progress no matter how small it seems to you because after all, Rome wasn’t built in one day. It takes time and consistency to learn programming, so don’t forget that everyone has his/her share of unproductive days.
I’m afraid there is no right answer here — you’ll have to figure it by yourself, but you could use some tips in doing so. I think it’s a good idea to go open source because if the community will find value in the framework then it will thrive and survive.
Also, you can try an MVC-oriented framework (google it) like Angular JS and something that gives more freedom like React JS. You’re just in the beginning, so go out there and explore. Don’t try to specialise yet, you need to have a bigger picture before you can do that.
A better way to learn is to make a plan, so that you know specifically what you want to learn and stick to the DAMN plan! Not just because you read today about another-bs-framework.js you’re going to spend 4 hours trying to learn it. In this manner will know a bit from a lot of areas which mostly equates with knowing nothing.
But, it’s dangerous to take this step too literally. I mean you’re a beginner so the initial plan might suck and you will find that along the way, so sometimes you have to adapt while you’re learning. And that’s why you need to take into account the next step.
Someone said that if you can’t measure it then it doesn’t exist. So, the wrong way to do it: “I am planning to learn CSS this week”.
The better way: “I am planning to learn the CSS selectors on Monday, CSS classes on Tuesday, …so on and so forth, you get it.”
Be specific in your leaning goals because it will help you to dig deeper in what you’re learning, seeing the ins and outs and to have a better big picture of it.
To be sure you use all the stuff you (thought that you) learned make a fun project, so that you can test yourself and get more practice.
You can even give yourself an award if you can stick to the plan and you get that final project part.
Happy coding!