I started programming vaguely when I was about 14 and had my own website that consisted of 80% flashy and animated glitter text and 20% pictures of my friends (with loads of hearts around them). I loved the structure and the (horrible) design part of it, but for some reason, I didn't think of it as an option for future jobs and studies. Fast forward to now and I'm suddenly a self-taught junior developer in an established company in my city (trust me, it feels very surreal).
I love programming because of the autonomy it gives me. It empowers me and inspires me; all the things I can create and shape, and all the opportunities that come with it. It's like sitting with a huge puzzle that you can make into whatever you want. It's challenging and it forces you to grow in several ways. But it can be hard and confusing to get started, and most of the time it's hard to keep going as well. So here are a few tips on how to approach and try out coding.
Figure out why you want to do it
This is so important for your motivation. Programming is a rollercoaster of feelings of success and failure, and when you hit a wall – and you will hit that wall many times – it's valuable to have reason to keep going.
A list to get you started:
- You want to be able to make sleek Tumblr themes
- You constantly look at TED talk about AI and want a deeper understanding
- You love video games and it would be cool to make your own
- You do other creative things and would like to show them in a portfolio
- You have some sort of need to impress someone
- Robots, dude
- All of the above
Figure it out. Write it down. Look at it whenever you feel demotivated. Bonus point for more specific goals, like "I want to be able to make my own website within the next six months". You do you.
Just get started
For every Google search you do you will find a new person with a new argument telling you why you should learn these languages in this order with these sources. Coders are .. an opinionated breed, and the best thing to learn is really to trust your gut and not listen to others when they're being condescending and tell you all the things you're doing wrong. Trust me, there will be mansplaining.
There are tons of resources you can use to try out different languages, to get a feeling of what you like and what you dread. These are my four favourites:
- CodeCademy is a classic and offers many different languages and some frameworks. It's a good introduction to coding, but keep in mind that to actually learn from this you probably have to do a course multiple times, as it tends to guide you a bit too much and not give you enough problems to actually solve yourself.
- I already mentioned using Unity as a way to learn C#, especially if you're into games. They have loads of game tutorials, and you'll learn the language as you go along.
Use Google a lot. Google every word and sentence you don't understand. Ask questions (you can even ask me if you like) and read other's questions. Be active on forums and coding communities. Find out how you like to learn and do that. Go back to review what you've learned now and then. Git is a friend, even if it might not feel like it in the beginning. Keep going, even when you feel like shit. Code every day. Every day. Do this course on learning how to learn if you're terrible at learning (like me). Have loads of fun.