DEV Community

Cover image for A beginner's trap
Adam
Adam

Posted on

A beginner's trap

 Hey, Everyone!

So, I've been thinking about getting out here to the open and ask the questions that are in my head.

First off, english is not my native so apologies for any mistakes. :)

I've started coding 2-3 months ago, went through some courses on HTML, CSS and now deep in JavaScript.

I have all the passion and motivation to code but sometimes I have this feeling when I sit down that I am going nowhere with the information I have.

I'm doing some udemy courses, JavaScript30 and some side tasks.

My question is: is there any better way to improve my knowledge or continue this path?

I don't have unrealistic dreams, hence the reason I would only start looking for any job or freelancing projects in 3-6 months.

Any input, idea, advice is greatly appreciated.

Thanks for reading this post, guys.

P.S.: This community has helped me and keeps helping me staying in the flow. :)

P.P.S.: Under 24 hours you have given me so much support and great ideas that I can't be thankful enough! YOU GUYS ROCK! Cheers

Top comments (23)

Collapse
 
enmel profile image
Enmanuel Marval

This roadmap offers a good starting point, or guide in your case. From what I see in this year's update they included some ideas of exercises and it is more agnostic to the language you have chosen.

Also take into account what @andre Vasconcelo says. Being exposed to more complicated projects (but achievable at your level) makes you improve in a brutal way. The path of learning is covered with obstacles, and you learn by overcoming them.

Read, practice, have fun.

The link: github.com/kamranahmedse/developer...

Collapse
 
jel111 profile image
dumdumdev • Edited

I have to say, I felt just starring the comment wasn't good enough, the link from @andre is awesome. Thanks for posting!

Collapse
 
adamnkiss profile image
Adam

Thank you for the input Enmanuel! Will check the link for sure!

Collapse
 
somedood profile image
Basti Ortiz

This is absolutely true. If there is one thing you absolutely have to learn, it is the ability to read (and write) documentation. Google, YouTube, or Stack Overflow will not always be there to hold your hand. You have to learn how to learn by yourself through documentation.

There will be times when the terminology used by the documentation is too advanced (such as the case with some topics in MDN). In those times, it is essential to slow down and learn the fundamentals first before diving deep into those advanced topics. However, there may be other times when it is not exactly necessary to bother too much with the terminology. It is up to you to judge what information you will need from the documentation. And that is the true skill of learning through documentation: knowing and getting what you need from the documentation.

In every documentation, especially with JavaScript frameworks, the best place to start is always the Getting Started section. From there, you can branch out and discover what the API can offer you.

And one last thing: you are not supposed to memorize everything about a certain API. That is why we have documentation for it in the first place. Memorizing the features of an API naturally comes with experience. Don't force it to stick in your brain. Just go back to the documentation for the information you need when you need it. That is a more effective way of learning.

Don't memorize. Internalize.

Collapse
 
adamnkiss profile image
Adam

Thanks a lot Some Dood. Really appreciate the advice!

Collapse
 
avasconcelos114 profile image
Andre Vasconcelos

To my experience, I felt like I improved the most whenever I had to take on a more ambitious project that I had no idea how to accomplish at first.

Tutorials are great with teaching you very specific ways to do it, but I feel like they don't cut it whenever you're out to build something real.

So if I were you I'd try to think up of a website/web application to develop (could either be a clone of an existing one, or a concept you created yourself). I guarantee you'll come across problems that no tutorials prepared you for, and this is how you'll be earning yourself some experience (and a unique portfolio to go with!).

With all that being said, this is just my personal experience, so like the other comment, take it with a grain of salt and see if it benefits you.

Best of luck on your journey as a developer :)

Collapse
 
adamnkiss profile image
Adam

Thanks Andre, that’s what I’m going to do. I’ve been playing with the idea of making a small project, guess it’s that time of the year then. :D

Collapse
 
ld00d profile image
Brian Lampe

Coursework is great. It gives you challenges with deadlines. You might want to find some local classes you can take that have instructors with feedback.

Having a project to work on helps. Start small. Find some little thing you want to do like organizing your photos.

Try coding challenges like leet code.

Go to GitHub and look at code for stuff you use. Learn to read other people's code.

Knowing how to program is one of the steps to being a software developer.

Collapse
 
adamnkiss profile image
Adam

I agree with you, Brian 100%. Thank you for your advice!

Collapse
 
weirdmayo profile image
Daniel Mayovsky

Well, I am from the "Practice makes Perfect" camp. The way to improve is to write projects. Just do another useless app like Todo, or Calendar, or just an interface for a shop. Little projects that you don't know how to do, after trying again and again will lead you to know the language in and out.

After some time I fell in love with JavaScript. Sometimes I did my repetitive homework by writing a script that would do it for me.

freecodecamp.org was also a great resource.

Collapse
 
adamnkiss profile image
Adam

Thank you, Daniel, I believe the same.

I'm stuck with FCC for now, so I'm improving my skills to be able to get through. :D

Collapse
 
abrahambrookes profile image
Abraham Brookes

If your plan is to get a job programming then the most valuable thing you can have is a couple of completed projects under your belt, probably on a portfolio website that you probably also created yourself.

Pick two or three small scale projects and do them. Every time there's an issue you can't solve, learn how to solve it, and keep going. Then not only will you have learned a bunch of stuff, but you'll have a couple of finished projects!

Might I suggest some of these simple projects?

  • Income tax calculator
  • To-do list app
  • 'Memory' card game (flip and match cards)
  • Personal profile page
  • Small business website (1, 2 or 3 pagers are pretty easy)

Have fuuuuun

Collapse
 
adamnkiss profile image
Adam

Abraham, thanks a lot for the ideas, to be honest I’ve managed to create them (via YouTube copying) but now is the time to create them by myself.

Thanks a lot for your advice!

Collapse
 
onwsk8r profile image
Brian Hazeltine

Why do you feel like you're going nowhere? There's a lot of great resources out there, but nothing can replace real experience. I go through good and bad phases as well; several years after I started coding I went through a phase where I didn't find it enjoyable for about a year, although I did maintain my skills during this time. Sometimes I still feel like I want to jump ship and work in a different industry because I like working with my hands. That's how life goes sometimes, though- sometimes you feel like you're on top of the world and sometimes you feel like it's on top of you.

If you want to be good at anything, you need to persevere. It takes years to get good, which is why so few people do it. If you stick with it long enough, one day you might wake up and realize that you can create anything you want, and you'll realize wanting it bad enough is the hardest part. I remember very vividly when that happened to me. They say it takes 10,000 hours of deliberate learning to master a skill. I guess that means I'm a master programmer. If you want to join me, you've got a long, hard road in front of you. Remember: the ability to create your life the way you see fit is your birthright.

Don't worry about spinning your wheels: it happens to all of us. Go contribute to an open source project. Make something for a friend or for yourself. Learn a framework like Angular or React. Create some tooling using Gulp or Grunt. Write a backend Node app. Try a new language like Python. When you get a job, most likely you will do more maintaining than creating. You'll be fixing bugs and writing tests, not starting from scratch. You'll inherit thousands of lines of code and everyone but you will know how it works. If you want to be valuable, get really good at figuring stuff out.

Collapse
 
adamnkiss profile image
Adam

Well, I learn, learn, learn and then, if I give my head to create sth simple I just can't start it. Need to go back to the exercise to cheat and it just drives me nuts sometimes.

I know it takes time, my main field is stock trading, been doing it for 8 years and it took me like 5 years to get where I am now. I know it takes a lot of sweat and blood.

I will be creating more things as the time goes and will apply your ideas as well!

I'll see you (soon) 10.000 hours later, Brian! Thank you for your input! :)

Collapse
 
boobo94 profile image
Bogdan Alexandru Militaru

Hi Adam,

I suggest you to start working on a project, whatever you have in mind. If you don't have any idea, take a look on freecodecamp.org/. Working on a small project will produce you satisfaction and you'll encounter real problems on a real environment. Another option would be to start contributing for open-source project.

If you are curious about traps from small companies, I have an article here

Collapse
 
adamnkiss profile image
Adam

Guys, you’re awesome! Thanks for all the input and great ideas!

I’m definitely going to start thinking of a project that I can (not) make.

Collapse
 
abhishekalbert profile image
Abhishek

Hi Adam!
Generally these types of question person start asking with himself when he is in a confusion or get frustrated during learning and it's does meant your are. So Frankly you are just started as u said you are working as a front end now you are going deep in javascript. Then like others posted before e.g as in Enmanuel Marval comment you can follow a roadmap to get your dream that's a good thing. But wait for a minute and think what rating will give you if anyone said give the a rating from 0 to 10 then how many no will you are going to give HTML CSS and JAVASCRIPT. And these number which you will give show your confidence level in that language.
Always be curious like if u visit a website a see something new and looks attractive then try to inspect with the help of google chrome and try to learn how is that thing code.
Learn google chrome's inspect option if you don't know how to use.

when you start feeling down then watch some fun or motivational videos that will helps more to gain confidence to start again with a positive energy .

Try to relate things to real world .
Try to make some application using html css jsp.
start contributing in open source.

here the link of channel of animated short films and motivational videos

Animated short films channel

youtube.com/channel/UCrSvhrtUgpZT3...

youtube.com/feed/subscriptions/UC7...

motivation channel :

youtube.com/channel/UCf9_s9ii6BZ-k...

try to read articles in your interested topics on medium quora like websites.

And to become web developer visit these two sites

  1. free code camp
  2. the odin project

And don't feel you nothing i.e. You are in DEV community means you know something so always try to answer or try help others.

Hope this is enough and will helpful for you .

Good luck and happy coding!!

Collapse
 
adamnkiss profile image
Adam

Hey, abhishekalbert!

Thank you very very much for the detailed explanation and the lots of resources you have given!

Now, I have a lot to work on!

I'll be back some months later with a new post, for now, thank you and see you in the comments somewhere here! :)