DEV Community

Cover image for I'm stuck instead of moving forward. Now what?
{ marcio }
{ marcio }

Posted on

I'm stuck instead of moving forward. Now what?

After 6 months of learning, I’ve started to feel like I’ve plateaued in my learning journey. In the beginning, even though everything seemed complicated as I was starting out, the pace at which I was learning new concepts seemed really fast. I was fairly quick at picking up concepts like HTML’s label elements or the fact that CSS is what you work on to improve on the design of your webpage. JavaScript was a bit tougher but it wasn’t too hard to pick up on simple ideas like what an array is or what a function does.
The problem came about after going through the “easy” part. When you reach the end of the simpler coding foundations, you’re exposed to more complex topics and ideas, and that’s when you might feel like you’re in this no-man’s land where, on one hand you already grasp the basic concepts, but on the other you’re aware of how much you still have to learn.

The list goes on and on

I’ve had to ponder on this feeling for a couple of days to deflect my inner saboteur’s attempts at making me feel insecure (once again) about my ability as a programmer. And I’ve come to the conclusion that I have to be kinder to myself and stop comparing my skills and knowledge to others.
When I first started on the path of web development, I thought it would be easier and faster to learn than Swift, but I was really wrong. Beyond the basics of HTML and CSS, you have to learn JavaScript which, by itself, is a fairly complicated programming language.
But the rabbit hole goes much deeper than this.
After mastering these three aspects of the front-end development you still have several frameworks like React, Vue or Angular you could take on. Then, you could also consider one of the many static site generators, like Gatsby, Next or Eleventy, just to name a few. And this doesn’t even cover the back-end aspect of web development where you can learn about Node, ExpressJS, Java, C++, Ruby…
So why should I think less of myself just because I’m not where I wanted to be or know as much as I think I should know?

How to deal with this anxiety

One thing I’ve learned and which helped me manage the anxiety caused by this deluge of information is to tackle it a bit at a time. You see, no one will ever learn everything there is to learn, let alone in six months. What you (and I) have to do is learn our concepts first, pace ourselves to really understand them, and then jump into something else.
For example, when I was taking my full-stack course on Udemy I had this sense of urgency in me that made me almost rush through it. It was like there was some kind of expiration date on my head and if I didn’t learn all those concepts quickly enough, I would be out of some future, hypothetical job. As a consequence, when I started the React module, I wasn’t sure of anything because I hadn’t deepened my knowledge of JavaScript yet. And as React is basically JavaScript… You get the picture.

Next steps

To deal with this “learning plateau” I’m in, my plan is to basically continue studying JavaScript and really dig into it. After that, I’ll start learning whatever piques my interest – another thing I’m trying to do is learn what I really like and not whatever is hot right now.
There’s really no magic bullet to get you to your final destination – at least that I know of. The only advice I can give you (and myself) is to work on improving your knowledge and, hopefully, someday the plateau will be behind us.

Top comments (30)

Collapse
 
timmybytes profile image
Timothy Merritt

This is well said, and I think you've got a great attitude about the "wall" we can sometimes run into while learning. Often just taking a step back (sometimes literally, breaks are good for you!) can give you some perspective. One thing I would encourage is to start tackling projects. Once you have the basics down in learning the front-end, you really only gain comprehension by diving in and trying to make something. Google every little thing if you get stuck, and soon enough the pieces will make a whole lot more sense.

For practice, Free Code Camp, Exercism, and Code Wars are all great options, along with Codecademy's mobile app for little quizlets on the go.

Collapse
 
marciof profile image
{ marcio }

Thanks! I’ve been tackling several projects but I’ll try and tackle more difficult stuff to learn. If you’re not comfortable you’re learning - or so I’m told 😅

Collapse
 
timmybytes profile image
Timothy Merritt

Haha, absolutely. The easiest way to maintain that "uncomfortable"-but-engaged balance is to try and make something either a) you would personally use to solve a problem, or b) involves some kind of functionality you're super interested in knowing more about. For me, I was fascinated with the way React hooks/state worked, so I just started making stuff to try it out.

Thread Thread
 
marciof profile image
{ marcio }

Definitely. That’s why I tried to learn more about APIs trying to build something to access NASA’s Picture of the day 😊

Collapse
 
bugsysailor profile image
Bugsy Sailor

I never intended to become a web developer. But I intended to put my ideas into the world. Being a developer was never the end goal, just the path to doing so.

Personally, I would challenging you to stop thinking about what you want to learn, and answer, what do you want to create?

What's a website? A service? An app? Something that you passionately want to see in the world. Whether it a be an actual business model or a hobby, you'll learn a tremendous amount of development skills along the way. Along with other related skills.

Collapse
 
marciof profile image
{ marcio }

Ohh, well put. I haven’t thought about it this way yet. Thank you! 😊🙏

Collapse
 
alexsvt2 profile image
Alexis López

Great advice, thank u

Collapse
 
scroung720 profile image
scroung720

We are on the same boat. Same feelings here, feeling that I need to jump straight to React but I need to stick to the plan because it is more convenient. This is really hard we need to focus on the important vs urgent.

My ideas about it:
-If you don't have the time to learn correctly (which is the worst case and probably the most probable scenario) then do urgent things 80% of your time (learning react) and important things 20% of your time(learning deep JS)
-Paralysis analysis, if you are learning all the time it is better than doing nothing. Sometimes I found myself using a lot of time wondering if I am taking the wrong approach to learning but what is true is that is better to never stop learning. You can't be wrong as long as you keep learning new things.
-I believe what makes us professionals is to know how really things work. Otherwise, I feel like I am cheating. I know some developers who are all the time copying code and reusing templates and they laugh at my approach because they say I could be making a lot of money. But I believe the tradeoff is worth what makes you professional is understanding how things work. Lucky for me I worked in a unicorn startup and I found web developers that were working on silicon valley since 2000 these guys have almost 20 years of professional experience it was insane they created a web app that enabled them later to create a business getting millions on revenue each month and they didn't have competitors because the similar companies didn't understand how they created their product, inside the company I learned a lot and there were a lot of times where I didn't understand why they were doing something in a specific way in their code, most of the time the answer was 'it is because of the specification of this feature', other times it was like 'if you read this book and this other book you will understand that code', things you can mix these technologies in this unexpected way because of their specifications, from that moment I realize that to do something special you need to learn lots of stuff. Then I decided that I wanted to be a creator, not a follower of the flow to be the salmon swimming upstream :P

Collapse
 
psiho profile image
Mirko Vukušić

After 35 years doing this, I can say plateau is never behind me :) You just find new challanges and new plateaus. It's not like it's only one :)
I'm too an impatient one, reading fast, skipping, going back, rushing into things. But that's how my mind works, I accepted it. Im like "results addict", can't wait to get them.

Just a few random experiences/advices that come to my mind...
1) Breaks! Sometimes several day breaks! Many, many times I was stuck, slow, frustrated but was just overworked. Too much new stuff was getting into my head and my brain needed the time to process it. After a break, I was almost always surprised how simple the solution was and things just 'clicked'.
2) if you want speed at start, start with opinionated frameworks/workflows. Freedom to do any single thing in 20 different ways often is overwhelming to a beginner and makes it difficult to learn from other people's code and docs. That said, in the long run, it pays off. So I dont recommend it unless you're a "results addict" like I am.
3) do what you like, not what you think others want. In this life-long learning process, I don't see it is possible to spend so much time and effort without passion for it.

Collapse
 
marciof profile image
{ marcio }

Very true. Thank you for your feedback! :)

Collapse
 
perpetual_education profile image
perpetual . education

These conclusions are super important!

really dig into it

  • is not a clear goal. How will you measure it?

We suggest Exercises for Programmers:

This way - you can actually see what you have 100% officially accomplished. Then you don't have to have anxiety or eventually imposter syndrome. It's just some facts. You'll know how to do a certain amount of things.

Let us know if you pick up the book and try it.

Collapse
 
marciof profile image
{ marcio }

Thanks :)

Collapse
 
perpetual_education profile image
perpetual . education

And if you ever want to share a screen and talk about it! let us know : )

Thread Thread
 
marciof profile image
{ marcio }

Will do 😊

Collapse
 
leonidassokoridas profile image
Leonidas Sokoridas

Hi marcio! Your description about your thoughts and doubts is something every developer has to deal with at the beginning of becoming a real webdeveloper a software engineer or similar careers. For me was following the way to go:
After leaving HTML(5) and CSS quite well I started to learn PHP. It was not difficult to learn it but when I tried to develop something combining these 3 languages together I got stuck Somebody gave me an advice to learn Python; both functional/procedural and object oriented. It would be to long to write the hole story. Learning Python have me the right "feeling" to understand how it works

Collapse
 
marciof profile image
{ marcio }

Im starting to get the feeling everyone deals with something similar, one way or another. Thanks 😊

Collapse
 
imshines profile image
Mohan Kumar

Thanks a lot 👍! I feel the same way every time I want to learn something. for eg. If I start with React. I'm worried that I don't know anything on the backend part so, I just get struck every time. Now I'll manage to learn one at a time.

Collapse
 
marciof profile image
{ marcio }

Glad I could help. Keep it up :)

Collapse
 
o_nagen11 profile image
Otto Nagengast

@marciof your piece resonates with me. I've been stuck in that plateau for a while myself. I'm a self-taught dev, so I have the constant nagging doubt that I'm doing things like a rookie. I've recently picked up some more advanced books like TypeScript for React or Clean Code. I also took the leap and worked through the Rust book which was forced me to expand my fundamental programming knowledge.

Another thing that has really been helping me make progress again was getting code reviews. I started working on a project with a good friend who has a lot more experience. He gave me lots of really helpful feedback on my code.

I don't want to make a cheap plug here but we both realized that code reviews were really valuable learning tools for us. We're now working on building a community / platform where people can get and give code reviews as well as read reviews on other people's code to learn from them. If you're interested it's called Antcode. We also have a code review Slack group that I think you may find helpful.

Keep on keeping on!

Collapse
 
marciof profile image
{ marcio }

Thank you. That's a great idea. I'll give it a peek :)

Collapse
 
dhruv194 profile image
Dhruv Mehta • Edited

Yup I can truly feel you! I have also started to feel that some sort of anxiety and the so called "FOMO". I think if I don't code fast or learn things fast I will miss out on opportunities and my peers and colleagues will get past me in some kind of race. Don't know why I am feeling like this.

Collapse
 
marciof profile image
{ marcio }

I think it boils down to the fear someone else will be better than us. But the only thing we can do is to be better than we were yesterday and continue learning. Good luck! :)

Collapse
 
lennyaiko profile image
Lennox Charles

Well spoken. I’ve been through this and I’m still in the iteration but after reading this things have gotten clearer. Most newbies like me need to know this. It’s not possible to just sleep and wake up with knowledge, it takes time.

Collapse
 
marciof profile image
{ marcio }

Yup. And being on twitter or reading about other developers’ achievements we can be led to believe others are more capable just because we didn’t see them struggle or their path 😊