So You Want to Learn to Code?
Some tips and resources I've discovered on my own coding journey.
First Things First:
That's awesome! No seriously, give yourself a pat on the back and be proud of yourself. Making that commitment is one of the most important steps. Secondly, welcome! The web development community can be a really empowering place for new coders. That being said learning to code can also be overwhelming and daunting, I'll do my best to try and provide some clarity. I also highly recommend joining the community on Twitter and documenting your journey there. I'll recommend some people to follow in a later section. But for now, let me share a little about my own journey with web development...
Picture it: Toronto, 2020, early spring.
A global pandemic was just beginning to define a new normal for millions of people. I had just been laid off from my job in the hospitality industry, it was the worst of times; it was the worst of times. I had spent the past 3 years working in the gig economy, then all of a sudden there was no work left. I was tired and needed a change. I packed up what was left of my life in the city, and moved in with family to plan my next steps. I was scared and had no idea what I wanted to do.
Soon after my move, a relative suggested I take some web development courses on Udemy while hunting for jobs. I found a slightly outdated course that covered the fundamentals of HTML and CSS. At that point I wasn't super excited about web development, the course I had been taking was pretty far from engaging but it gave me something to do. Cut to about a month in, I was browsing youtube for code-along tutorials and I saw an ad for Codecademy and was immediately interested. I followed the link and took their "Sorting Quiz" which matches your personality with a pathway, language, or course. The sorting magic matched me with the front-end engineering pathway, but at the time paying for a pro membership was hard to justify. So I started taking some of the free courses offered on Codecademy, I quickly found myself hooked.
I found the projects were a great way to see the fruits of your labor and increased my confidence. I completed the pathway in June of 2021 and began looking for my next challenge. But enough about me. I said I would try and provide some clarity for you. So here we go!
3 Things I Wish I Knew When I Started:
- Google is your friend. You should get to know each other really well!
Seriously, even senior developers need to hit the search bar pretty frequently. The big difference is, they know what to look for. The goal of learning to code isn't just memorizing the syntax of different languages, it's about being able to recognize a problem and applying your skills to solve it. If you have a bug or error message that you just can't figure out, try googling the error message. Chances are someone has already that issue and shared a solution. Stack Overflow is an amazing resource to find solutions to technical problems. That being said make sure you understand how the solution fixes your problem.
- Don't just copy and paste code. Try to understand what it does.
When you find the answer to a problem you've been stuck on for a while, it can be very tempting to just copy and paste the answer into your code. We've all done it but I'd recommend trying to understand the solution and working through what the code is doing line by line when you can. Also, spend some time digging into the docs for whatever framework or library you're using!
- Find out why you want to code, and find others who share your goal.
This one can be tricky to figure out at first, but it is a great way to keep you motivated on your journey and it's also something you might be asked about during a job application. Your reasons should be your own. But for me, I found that making the web a more accessible place was something I was deeply passionate about. If you'd like to learn more about web accessibility, check out the a11y project. If accessibility isn't your cup of tea, try to find content (articles, podcasts, tweets) about the thing that gets you excited - Twitter can be a good place for this. Once you find your passion try to find others who feel the same, and engage with them it's a great way to learn.
Resources you should check out
In no particular order, here is a list of resources that I've found helpful on my journey and would recommend you look into.
- CSS Tricks
If you haven't already come across CSS tricks, go and check it out. It's one of the best places on the web to learn new things. It's does lean more towards the front-end side of things, but covers more topics than just CSS. It was created by Chris Coyier and other awesome people, as a platform to share posts written by developers for developers.
I've mentioned Codecademy before, and I'll do it again here. I truly believe in their mission of democratizing education, making it more financially accessible to the world. Even if you can't afford the pro membership right now, you should still check out their catalog of free courses. I can almost guarantee that you'll find something that interests you.
- De-Coding the Technical Interview Process - book by Emma Bostian
If you want to learn about what to expect in a front-end technical interview, this book by @EmmaBostian is an amazing resource. It will guide you through the interview process, teach you what you need to know about advanced topics like data structures and algorithms, as well as give you practice problems.
- Epic React
This is definitely one of the more expensive items on this list, and I wouldn't recommend this as your first or even second coding course. But if you really want to get good at developing with React, this is one of the better resources out there. It covers a range of need-to-know topics in React; including testing, best practices performance, and even has you build a full-stack React application.
Some Noteworthy People to Follow on Twitter:
- If you've got an interest in animation or css whimsy you should check out @jh3yy, @cassiecodes, and @JoshWComeau.
- For all things testing and React check out @kentcdodds, and @dan_abramov
- For #a11y content check out @annaecook, @ScopicEngineer, and @cariefisher
- For some tech-related comedy be sure to follow @TheJackForge.
This is by no means a comprehensive list, there are so many other great devs on Twitter but this will definitely give you a great place to start.
That's all for now...
I hope I've been able to give you some helpful advice to get you started. I'll be posting content more often, to stay up to date be sure to follow me on Twitter @dakotah_dev.
If you have a suggestion or concern about this article, or you would just like to chat, don't hesitate to get in touch. ✌️