In this day and age, it seems like everyone is learning to code. Maybe you want to know how websites work, or you think back fondly on the old blogging platforms where you could hack together some HTML to personalize them.
Or maybe you are curious to learn what all this coding craze is about so you can get started developing apps and websites yourself.
If that’s the case, then this article can help you figure out where to start.
Why – and How – Should You Teach Yourself Coding?
Coding is a field that is accessible to everyone. And to get a tech job, you don’t necessarily need a degree from an expensive university. As long as you are able to show that you are good at coding, you can get a job.
Tech is so accessible partly because of all the free resources you can use to teach yourself to code. But this can also be a challenge: how do you navigate through all these courses, articles, bootcamps, and discussion threads?
It’s usually a good idea to choose one main resource from which to start learning. It can be a curriculum or an ordered list of topics, whatever works for you. Then follow that plan.
It’s ok to make brief detours and use other materials that might help you out when you’re stuck, but try to do that only if the resources you have are not enough.
When you finish a curriculum or a course, you may be tempted to start another one on the same topic right away. But instead of doing that, you should build projects with what you just learned to learn it better.
You will likely have enough basic knowledge to build simple projects, and in the process you’ll figure out what you know and don’t know.
To help you find some learning resources that are right for you, in this article I’ll share various websites where you can learn to code for free.
I’ve used most these tools myself while learning to code, and I use some of them even now. And if I haven’t personally used them, I made sure to choose resources that have really positive feedback.
If you are here, you may have noticed that this is freeCodeCamp’s publication. Here at freecodecamp.org/news there are thousands of articles on programming and related topics that you may find really useful along your learning path.
You can bookmark these articles to help you learn new topics or find different explanations for topics you are struggling with.
Also, the freeCodeCamp learning platform has a full-stack web development curriculum based on the MERN stack (Mongo, Express, React, NodeJS), and an expanding curriculum on Python and Data Science.
The freeCodeCamp forum is also a really friendly place to get help with the curriculum and programming help in general.
Finally, the FreeCodeCamp YouTube channel has thousands of hours of video tutorials on various programming topics. It has a much wider variety of topics than the curriculum, so if you are not interested in web devoplment, or want to look at other specific topics in more detail, definitely check the YouTube channel out.
Khan Academy offers courses in a lot of subjects, including introductory courses on programming and computer science.
The Odin Project
The curriculum contains dozens of assignments that’ll help you build portfolio-worthy projects. And you can connect with the friendly community of beginners and experienced developers.
Grasshopper can be an ever present companion, always in your pocket, while you build your fundamentals. It can help get you ready for your next steps in learning web development.
The MitOpenCourseware video courses section on Computer Science and Electrical Engineering offers a lot of video courses at the Graduate and Undergraduate level to improve your theoretical knowledge of computer science topics.
It covers areas like data structures, algorithms, artificial intelligence, and much more.
Open Source Society University
Open Source Society University is a collection of online courses and books that, together, give you roughly the equivalent of a computer science degree. But everything is completely self-taught and self-paced – and it’s free or very low cost.
At this University you don’t need to take exams. But for each course you complete, you’ll have to build a project that will be peer reviewed that shows what you have learned from the course.
Take a look at their About page, where there is lots of extra information on how to use their curriculum in the most effective way.