DEV Community

loading...
Cover image for 5 Mistakes I Made When I Started Learning Programming

5 Mistakes I Made When I Started Learning Programming

Arvind Mehairjan
I am Arvind. I am a software developer who works on a variety of range of disciplines as automation, testing, web development, and more.
Updated on ・3 min read

I have been programming for four years now, one year which is programming professionally. My past background is not related to programming at all. I have a bachelor degree in International Business and mostly worked in online marketing jobs. I spent most of my spare time learning how to program. After learning, applying and getting rejected multiple times from several job positions I managed to get my first job as a software tester, which I am grateful for.

Looking back I made some significant progress in my programming journey and I am still learning something new every day. However, I made a lot of mistakes when I started to learn how to program. Small ones, large ones, you name it. That is why I want to share my mistakes here, hoping it can be useful to someone out there.

1 - Learning way too many languages, frameworks, tools at once

When I started to learn programming, I spent too much time on learning different programming languages and frameworks at once. I thought I needed to learn all these things at once in order to get a job as a developer. Looking back I realized that was a dumb idea. I was learning multiple things at once but I had no clear direction what type of developer role I wanted to have. Which lead to the second mistake I made.

2 - Not having a goal and/or direction

I realized I learnt programming in a very inefficient way. I had not a goal or direction in mind when I started to learn how to program. I learnt programming for the sake of programming, not for solving problems. I spent too much time on tutorials and online courses. I knew the syntax, but not how to apply the newly acquired knowledge I have learnt.

I decided to change my learning approach. Instead of learning every thing at once, I decided to pick one language and learn the fundamentals as best as I can. I decided to focus on web development and spending my time learning JavaScript. No frameworks, no libraries or other languages. Just the bare basics of JavaScript and get good at it by building small projects.

3 - Not debugging

I know. This is a very dumb mistake. Please don't kill me. When I started to learn how to program I completely ignored debugging. It wasn't for me important to learn at that time. I only started to become serious in debugging two years ago and slowly learning how to debug my code more effectively. I still feel I can improve my debugging skills, but I am making progress.

4 - Readability

Readability is an error I made frequently in the past. Looking back at my code four years ago I almost have to cry how inconsistent and terrible it was. Vague variable names, too much nesting and inconsistent indentation were errors I often made when learning to code. Readability matters. It helps to improve the quality of the software for future use, reduces errors and can be used by other developers when collaborating.

5 - Self-doubt

The last one is more of a personal issue I have been struggling with. When you enter an industry that is brand new for you, it can be overwhelming. Especially if you have little to zero background in programming. You feel that you're lacking while others seemed to know what they are doing. You think your code is not good enough and that you are not able to contribute to the code.

Self-doubt is a very nasty thing that can completely mess with you. I am slowly learning that it is okay to not to know every thing. I am slowly learning that I must not compare myself to others. I am not perfect and will never be it. And that is okay. There will be a setbacks, but they are temporary. I will continue learning and just doing my best at solving problems.

I hope you guys enjoyed reading this and can be useful to you. Programming can be difficult but is not impossible to learn. Good luck what ever your journey may be.

I also made a YouTube video where I shared my experiences more in depth.

Discussion (32)

Collapse
briedis profile image
Mārtiņš Briedis

The biggest mistake I made was doing it all alone, not having a mentor. Good mentor speeds those things up tenfold.

Collapse
ghost profile image
Ghost

not sure is a mistake, those are not always available.

Collapse
briedis profile image
Mārtiņš Briedis

Yes, sure. My problem was that I was freelancing for years (6+) before getting an actual job. I got the job assuming I know a lot then to find out I don't know soooo muuuch. Only after working in a team I start to learn so many more things and so much faster. Of course, if you're studying in a school, or you don't have an opportunity to get an office job, then it is what it is. You need to find someone to exchange your code with, get a different perspective on problems.

Collapse
edwinboon profile image
Edwin Boon

Great article Arra. Couple of weeks ago I came to the same conclusion that I was not kept by one language but I ran all over the place for my private projects.

Now I decided my tech stack and promised myself to build some cool things with it.

Collapse
arvindmehairjan profile image
Arvind Mehairjan Author

Awesome! Good luck building your projects.

Collapse
hasnathrumman profile image
hasnathrumman

Your post just make me feel that one day I'll be someone.
Man I started my programming career just 9months ago and I felt just the same way toy felt in your situation.
Your post give me boost and I'm making progress as a php developer.
Have a good day

Collapse
arvindmehairjan profile image
Arvind Mehairjan Author

Thanks mate. I also just started working barely a year for now. There are still a lot of things I have to learn but I am doing my best each day and celebrate the small victories.

Collapse
guitarplayer82 profile image
guitarplayer82

I wish I had a job in the field so I could learn at work too. Right now I am school for computer science and I work in an unrelated field.

Collapse
zawawimanja profile image
zawawimanja

We have same problem.Too much reading too much information then you forgot how to do basic things. I think it is better to master 1 only. If you learn a lot better you make a notes about what error is facing surely you will need in later.

Collapse
blrku profile image
blrku • Edited

I believe most developers go through this. Those that pass this level becomes programmers. Ah! Couldn’t have said it any better. I have gone through this only to realize I needed to know more after joining a team. Haven’t a mentor is great though

Collapse
codzign profile image
Ricardo Ribeiro

Arra, your post nade me open my eyes, i was making all the same mistakes, and i tought i was the only one with this problem, now i choosed my path, python to go deep and then will see. Wich you the best

Collapse
hinasoftwareengineer profile image
Hina-softwareEngineer

Thanks. I am in my second year of bachelor's degree in software engineering. And i am doing all these mistakes that you have mentioned above. I want to learn all things like you wanted. I am doing web development,iot, AI,python,etc. And i strongly feel sometimes that i am learning nothing. Same as you. I can't solve world problems using my code. I am just coding. Because i compare myself to others. But after reading your article, i decided that i will done first only web development rather than going in many sides. Thanks for article. Amazing article for such a worried students like me.

Collapse
arvindmehairjan profile image
Arvind Mehairjan Author

Thank you for kind words. I completely agree that you can easily fall in to the trap of learning too many things at once. I get it that as a software developer it is important to keep learning because technology is always changing within this field. There is also nothing wrong with experimenting with different technologies.

But I think you can improve much faster if you first focus on one area/language that you want to pursue instead of learning multiple things at once.

Collapse
mo_xodeeq profile image
Stealth👽

I am new to programming and I seem to be guilty of all of these mistakes.
I want to go into AI so I have been learning python but I also want to be able to do other things like building web and mobile apps, can't I be good at so many things?

Collapse
thatonejakeb profile image
Jacob Baker

Sadly self-doubt isn’t always something that shifts as time goes on and can keep cropping up. Hello imposter syndrome!

Collapse
arvindmehairjan profile image
Arvind Mehairjan Author

Yep, imposter syndrome is nasty thing I and many other people across the globe have to deal with.

Collapse
andrianm28 profile image
Adri

I read it and feels like you just pulling me from the sinking sand.
I did all those mistakes that you mention and realize the question should we ask "are our learning is incrementing or just stuck or even worse decreasing?"
Having goals, build learning journey plans and keep it on track i think could answer that question
Thank you Arra

Collapse
arvindmehairjan profile image
Arvind Mehairjan Author

Thank you for the kind words. Having a direction can definitely help you to become a better programmer :)

Collapse
rheniery profile image
Rheniery Mendes • Edited

Amazing text, I'm learning too, although I've been programming for almost 2 years professionally and sometimes I feel lost with many languages ​​"omg, what do I have to learn?" ... very good, with that you helped me a lot (and I'm sry for the English because I'm learning it too hahaha)

Collapse
sargentogato profile image
sargentogato

Thank you very much to share your experience. It is really helpful to who is starting. I have read many times about to have a mentor, but honestly I don't know how could I find one, from where to start.

I am following some forums and websites, reading articles like yours to keep my selft on track, but some days are really hard. I studied something totaly diferent to programming, so I feel identify whit what you wrotte.

Thanks.

Collapse
spock123 profile image
Lars Rye Jeppesen

What's debugging? /S

Collapse
shahrozahmd profile image
Shahroz Ahmed

Great tips Arra👍

Collapse
arvindmehairjan profile image
Arvind Mehairjan Author

Thanks!

Collapse
jejones3141 profile image
James Jones

Being new to a field may be a sufficient condition for self-doubt, but it's definitely not a necessary condition. Believe me, I know.

Collapse
arvindmehairjan profile image
Arvind Mehairjan Author

I believe you. It is just that when you start working in a industry things can be overwhelming at first. But the more you learn, the more confident you become.

Collapse
fatherlynick profile image
Nikolai

Good article. Thank you for sharing. I'm currently not focused on anything either. I need to change that.

Collapse
arvindmehairjan profile image
Arvind Mehairjan Author

Thanks mate! Good luck with your journey!

Collapse
ieslamhesham profile image
Eslam Hesham

Good tips dude <3

Collapse
arvindmehairjan profile image
Arvind Mehairjan Author

Thanks mate :)

Collapse
laasrinadiaa profile image
Nadia Laasri

Great article.
Thanks

Collapse
emmydiamond profile image
emmy-diamond

Thanks so much for this article, it will serve as a guide for me as decide to go deep in web dev.