DEV Community

Cover image for What nobody tells you when you decide to learn how to code
Stefanni Brasil
Stefanni Brasil

Posted on • Originally published at stefannibrasil.me

What nobody tells you when you decide to learn how to code

If you decided to change your career to a technology related field, you probably faced some internal demons. And the first thing that I want to say to you right now is: it's hard, but not impossible and it's worth it. And you're not alone! I was tired of reading only the good and fun and the unrealistic reality of learning to code, so I want to share my experience and hopefully help someone.

When I was first introduced to coding, I fell in love with programming. Since then, it's been a roller coaster of feelings and motivation and this year I finally started to feel more confident about my choice.

I see some people saying that programming is super easy, that everybody can learn, etc. Sure, I do believe that everybody can learn, but if you don't have the passion or the curiosity, I have to say that you will eventually feel like "oh, this is not for me". And the worst, you will think that you are the problem... "if this was supposed to be easy and I can't code, then the problem must be me, right?"

Wrong, so wrong! It is a process and there are some things you have to learn in order to survive this journey.

So here are some things that I have learned in the last 1 year doing Computer Science and how I am motivating myself to be a better developer while finishing my degree:

1 - It is hard

Even if you did not have a good education in science and mathematics, that should not stop you. It's all about how bad you want it.

2 - You have to learn to be patient and resilient

The reality is that you won't solve all the problems at first, but that is okay. Every time you overcome a challenge you become better and more confident. The point is: you have to learn how to learn and how to persist in face of the daily difficulties.

3 - Do a project that you love, yeah... but it's not about the destination, it is about the journey

What about when you decide to develop something you love but you have no idea how to start? Search for good practices, good tutorials and ask for advice from someone you feel comfortable to ask. Sometimes you may find yourself struggling with something, but with a little help from your friends, you will get it and sometimes learn more than just how to solve that problem :)

4 - Do not ever compare yourself to others

I say this because my boyfriend has almost 8 years of experience in software development and I caught myself having high expectations although I am still learning to code! Frustration is not good, but if you learn from it, you will be okay. So, be careful when comparing yourself to others. Instead, try to learn from their experiences too.

5 - Have fun

Coding is one of my favorite things and sometimes I feel like I am missing this part because I am worrying too much about finishing the semester and doing other personal tasks. But, hey, focus on the present and be proud of yourself because you are investing in the most important thing in the world: your education. And nobody will stop you!

So, what are the others challenges that you faced when you changed your career? I would love to know more about other experiences and learn more. Cheers!

Latest comments (33)

Collapse
 
miguelrodoma95 profile image
Miguel Rodriguez

I didn't stuidied CS and I began learning just a year ago and I've been working as a developer for almost 10 months,so I'm really just beginning, and you really got me with the "Don't ever compare yourself with others" point, because even though I know that is my own progress and how I learn at my own pace what matters, it sometimes is inevitable to see your coworkers and/or friends who studied CS and think "I'm still not good enough".
But I've learned to accept the fact that I'm still not good enough, and it's fine, we all learn in a different way and I think that the importat thing is to keep learning and working so you can say "I'm a better developer than I was last week".
Thank you for your post, I really liked it!

Collapse
 
oathkeeper profile image
Divyesh Parmar • Edited

Really thanks for sharing this! I needed this so badly right now. I have completed my Graduation (B.Tech. here in India) in CS since last July 2017, and I had to lose 4 job offers because my university had made mistakes in calculation of grades. So since then I'm home and I was depressed for the most part of it.

  • The best thing is I started learning with Node.js and express.js since I wanted to create websites first as projects so that I can show someone that I code and moreover feel good for myself while showing them to recruiters.

  • I am so afraid of the competitive programming and solving questions on online judges like Hackerrank, CodeChef, Codeforces, etc. And Indian colleges there is a facade going on with everyone to only do that, which led me very disappointed.

but then I found reddit and thought of new ways to keep improving my ways. Now also created simple blog sites with both Python Django and Node.js Express.js but I'm still practicing those Data Structures and algorithms from sources like geeksforgeeks.org

the point of my journey is one has to spend time with being uncomfortable with programming and all things will fall in its place. It just feels like life sometimes. :D

I feel such huge pressure as I'm alone at home, my only friends are you guys online always hitting your keyboards to help or ask. I know it has been 9 months since I am at home, but I got to think on myself and I feel positive and always think about how I will be able to do those drama, story writing, Gym, Volleyball, Musical Instrument learning extra things just after work.

I need to hammer this in my mind, Major key for me is Learn how to be Patient

Collapse
 
bluebell_lester profile image
Bluebell Lester

Are you sure nobody tells you all of this? I've personally been told all of the above countless times, most frequently by inspired bloggers that seem to just have discovered the wheel.

Also common sense.

Collapse
 
ktmellow profile image
ktmellow • Edited

Wow, this listicle 100% ! Exactly what I say to people asking me if they should consider the career change and do a bootcamp like I did. Will bookmark this for a TLDR version of my usual shpiel.

Collapse
 
imranali_safin profile image
Emran Ali

Hey I have something to know!

Is there any platform that i can get problem to solve as a programmer? if so please inbox me .

Collapse
 
stefannibrasil profile image
Stefanni Brasil

Hi, Emran!
Do you know CodeNewbie? They have a lot of resources. I also have used in the past Code Wars. There also plenty of problems on Open Source projects on GitHub. Try one of these, hope it helps!

Collapse
 
dexmunyaradzi profile image
Dex

I studied arts at high School but through those years i really felt it wasn't me.from a young age i always had a passion for computers but i was really bad at decision making on what i wanted to do. After highschool I took my time to really think on what i really want to do i just couldn't study law i wasn't a lawyer. During my gap year ive been learning how to code on my own and i found out it can be really frustrating but as long you have a passion for something you can never give up .thanks for the advice Steff i know its gonna be tough for me this year as i go to college but i won't give up šŸ˜ƒ

Collapse
 
chatelao profile image
chatelao

Loved the exotic CS classes University the most, you will not see them again in your professional life.

You will have 30+ years to learn how to code really well in your professional life (If you want to).

Collapse
 
jasongabler profile image
Jason Gabler

And coding isn't something done in a vacuum. It always has a purpose. That purpose is driven by need. And, ultimately, that need belongs to one or more people. Whether your software is an executable to be downloaded, a service provided or a library shared, you must understand the people behind the need behind the purpose. Even the lowest rung developer who's handed a set of inputs and outputs by the senior dev, she or he ought to be aware of the larger picture so every line of code can have useful meaning. Otherwise, it is out of place, wasting time and money, and what is the point?

So what's my point? Most developers do not enter school, let alone the profession, realizing they need to be adept at understanding other people's needs. Yet, I'm always thinking about my customers' needs. Does this fit their requirements, their budget, the things they aren't aware of but because of my experience I am?

I wasn't taught this at my alma mater. It's not something, I believe, we can learn on our own. I absolutely had to learn this on the fly. I've had some very patient friends and mentors along the way. Even if you're not the tech lead who's involved in the discovery processes, be prepared to think like a customer. The better you are at this seemingly non-technical skill, the better developer you will be.

Collapse
 
wilsmart profile image
Wilmar Alberto Martinez Perozo

Excellent article. Advice like this is much needed for those of us who started in this fascinating world of software development. You have given me a great motivation, thank you!

Collapse
 
stefannibrasil profile image
Stefanni Brasil

Thanks, Wilmar for commenting here! I am really glad that I could help somehow. Always find ways to motivate yourself, cheers!

Collapse
 
gholz profile image
Guilherme Holz

I agree with all your points, but I would like to add something, the CS course in my opinion is one of the worst ways to learn how to program, It's great to build network and to have a general vision of things but I always recommend a few steps for people learning how to code:

1) Buy a book on the technology you're interested. There's 2 reasons for that the first one is pretty psychological it creates a commitment to learn that since the good books are usually pretty expensive (specially in Brazil) the second one is that you can read the book anywhere at anytime.

2) Go to an online learning platform like Lynda.com, Udemy, Udacity... These platforms have a very focused approach and usually have courses for different skill levels.

3) Start a pet project. It doesn't need to be fancy or anything just a place to apply the things you've been learning.

4) Find a coach. An experienced developer can ease out a lot of concepts for you and you would be impressed on how open they are to do it.

5) Be proud of the small victories, programming is a constant learning process.

Collapse
 
aminmansuri profile image
hidden_dude

A tip for you if books in your country are expensive: try buying Indian editions from sites like abebooks.com.

I've bought $200 books for $15 that way. Totally legal, new books.

Collapse
 
stefannibrasil profile image
Stefanni Brasil

Hi, Guilherme, thanks for replying!

I totally agree with you, thanks again for sharing. In fact, I quitted college and started to study on my own. I was focusing too much on tests taking and not studying enough what really matters... I am doing an e-commerce, it's been fun. I have some mentors, I started to work with Rails too, been learning so much!

Yes, I am constantly reminding myself of that. Hope you are doing fine! Cheers.

Collapse
 
angieskazka profile image
Angie the Fairytale

What nobody tells you...

"what is that $ symbol in the beginning of every command line example"

Collapse
 
stefannibrasil profile image
Stefanni Brasil

good one! :DDD

Collapse
 
imanzade profile image
ImanZade

It is very motivating. Thanks a lot!

Collapse
 
stefannibrasil profile image
Stefanni Brasil

Thank you, glad I could help somehow :)

Collapse
 
ardennl profile image
Arden de Raaij

Hah I just wrote something on dev.to about my digital coming of age. When I started out with developing, everything was pretty easy for me because I wasn't really thinking about the journey, just of the goal I had in mind. Web-development was a means to an end for me, so I never had imposter syndrome or things like that because I was in denial that development was even my field. Now, a decade later, I still truly enjoy coding but am clearly missing a sort of end-goal. If that makes sense :).

Collapse
 
amypellegrini profile image
Amy Pellegrini

Same experience, and I love coding, although I'm a pianist and the Piano is my Nr.1 thing. I think that the only people who has problems with coding, is the people who only wants to follow instructions, to be instructed and obey. For creative people like me, is a tool of empowerment. Thanks!

Collapse
 
saaage profile image
Stefan Age

Thanks for posting this. I can empathize with points 2 and 4 and have learned to break things down into very small pieces especially when learning something new, and realizing that everyone learned from someone. I would get frustrated when the creative part of web design did not come as easily to me as the coding piece, then I realized I had to go out and find examples/inspiration. A book that helped me a lot with this mindset is Steal Like An Artist by Austin Kleon. It can be tough to keep grinding but I think you make some great points about maintaining that momentum.