When I wrote my first piece of code I had no idea what I was doing. And so it continued โ for years. For me, the hardest part about learning to code was knowing where to find reliable, up to date and relevant information. Like, what do I Google for? I had a pretty good idea about computers and how they worked but software was still magic to me.
Today, almost 15 years later, the climate is different and there are so many amazing resources to learn about programming and software engineering. In this post Iโll share 5 resources I wish I had when I first started programming, and then I want you to share yours with me!
Great Resources When Learning to Code
freeCodeCamp
At freeCodeCamp you can learn pretty much about anything โ completely free! I mean, it doesnโt get any better than that. Their mission is:
[โฆ] to help people learn to code for free. We accomplish this by creating thousands of videos, articles, and interactive coding lessons โ all freely available to the public. We also have thousands of freeCodeCamp study groups around the world.
https://www.freecodecamp.org/
Last year they served โmore than 1 billion minutes of learningโ. Truly amazing! โญ๏ธ
Stack Overflow
A programmerโs best friend. If you donโt know Stack Overflow, itโs a place for programmers to ask questions and for other friendly programmers to answer said questions and gain points. Itโs been around since 2008 and because itโs been around for so long, the question you have on your mind was most likely already answered. So most of the time you donโt even need to ask, you just Google for it.
Did you also know that Stack Overflow is part of the Stack Exchange network that manages other sites just like Stack Overflow for different topics? For example Unix & Linux Stack Exchange or the Software Engineering Stack Exchange and many more.
โ ๏ธ Donโt forget to read the How do I ask a good question? post to maximise your chances of getting an answer.
Stack Overflow Chat
I discovered Stack Overflow Chat a few years ago. Itโs a great place to ask quick questions that might not warrant a question at Stack Overflow. Asking a nicely written question in Stack Overflow takes time but in the chat you can just throw out a simple question, and if youโre lucky, some kind person will help you. Itโs also great for follow-up questions which doesnโt quite fit the Stack Overflow model.
There are rooms for different topics such as JavaScript, Python, Rust and my favorite #!/bin/bash (for bash questions).
Refactoring.Guru
This website is aimed at people who knows how to write code and now wants to learn how to write better code. We all write crappy code in the beginning of our careers. For my first website, for example, I used the LAMP stack (Linux, Apache, MySQL, PHP) and I got hacked because I had no idea what I was doing ๐. Refactoring.Guru might not teach you how to avoid getting hacked but it has a ton of free information about
Refactoring: What it is and why you should do it
- Clean code: What it is and how to write it
- Code smell: How to detect and fix it
- Design patterns: What they are, the benefits and how to use them
- โฆ and more
Egghead.io
I was subscribed to https://egghead.io/ in the past and I was blown away by the quality of their content. Itโs an awesome place to learn about your favorite framework or library, such as React, D3, GraphQL or Tailwind CSS. Just check out their list of topics!
Taking part of this content is not free but if you have the money for it I recommend it. They do have free resources and they are also of high quality.
Conclusion
These are my 5 favorite resources for learning to code today. Thereโs people out there working every day teaching others โ for free! Again, thatโs amazing and a big thank you to everyone of you ๐.
Now Iโm curious what you find the hardest part about learning to code? Maybe me or someone else can be of help ๐
Learn More About Software Engineering
Connect with me on Twitter, Linkedin, and Github
Originally published at https://prplcode.dev