Tech with Beck

Top 10 Free Resources for Learning Programming For Beginners

Posted by:

|

On:

|

When I started my coding journey in June of 2024, I didn’t know where I should start learning. In fact, when I began to research where to start, the free resources seemed so endless that it overwhelmed me. I didn’t know which resource would lead me to actually learn programming. I tried several different paths before ultimately sticking with freeCodeCamp’s Responsive Web Design Certificate. While this pushed me toward a better journey, I wasted almost two months trying to figure out where to begin.

While I’m sharing ten free resources to learn program development, the trick is to focus on one goal at a time. Rather than trying to explore all of these resources, take a few days to decide which path is best for you and stick with it. Learning to program is a difficult process that takes grit and commitment. However, even with grit and commitment, you can find yourself on a hamster wheel if you don’t create a solid plan for your learning.

Regardless of which path you choose, you will most likely need to learn HTML & CSS first. If you are completely new to computers (you needed someone to help you find this web page), then check out this Computer & Technology Basics Course for Absolute Beginners by freeCodeCamp on YouTube. Otherwise, check out some of these resources to get started learning.


The Odin Project

If I could start over again, I would immediately jump into The Odin Project. This project is full of high-quality resources that will guide you through a difficult, but rewarding learning pathway. The best way to learn a new skill is by doing. The Odin Project’s learning method is ‘learn by doing’, which is an excellent way to begin. The Odin Project’s resources cover a path that teach you full stack development using either JavaScript or Ruby on Rails.

freeCodeCamp.org

freeCodeCamp is where I began. I learned HTML & CSS on freeCodeCamp before moving on to The Odin Project. I thought their Responsive Web Design Certificate was fantastic. However, when I began their JavaScript Algorithms and Data Structure Certificate, I started to struggling to understand the materials. I think most of their courses are great for people who already have a steady foundation. While it could be beneficial to an absolute beginner, I think their resources should be used more supplementary.

w3schools.com

Beginners who want to learn basic web development concepts could benefit greatly from w3school.com’s beginner-friendly lessons for HTML, CSS, & JavaScript. w3schools.com covers many other concepts such as Python, SQL, Java, jQuery, and many more. When I first started coding, I visited w3schools.com and was so excited at the amount of resources this site contains. Because I did not have a plan, I spent a lot of time looking at all their different resources rather than actually learning a skill. Don’t be like me. Have a plan and w3schools.com can be a valuable resource for you.

MDN Web Docs

MDN Web Docs is an open-sourced project that has some great learning resources for HTML, CSS, & JavaScript. The website feels a bit less structured than something like The Odin Project, but can be a great place to find supplemental resources. I would not start my learning journey on MDN, but I do know some who did and who are now very successful. Again, it’s more about creating a plan and sticking to it than where you learn the information from.

geeksforgeeks.org

High-level overviews of basic concepts can be found on geeksforgeeks.org. One of the best things I think this website has to offer is how digestible they make information. With this, you should know that this website is not a one-stop-shop. Although you can learn introductory-level concepts, you will not learn all you need to know here. This site simply does not include much intermediate content, and the little it does is sometimes incorrect. Again, I would recommend for basic concepts, but I think there are better resources listed on this page.

YouTube

Do you remember the hamster wheel I mentioned earlier? YouTube is the easiest place to enter the hamster wheel of never-ending learning without real-world application. However, YouTube is full of quality information. It’s simply all about how you use YouTube that will determine whether you see results or not. It’s important that you create a plan that details what you need to learn in the first few months of your journey and then stick to that. Because YouTube has endless resources that can be considered ‘relevant’ to your journey, you can get stuck watching content that is not within what you need to be learning if you don’t create a plan. On another note, don’t get caught up in the tutorial cycle. If you are simply following a tutorial and never independently implementing concepts, you are not learning in the way that you need to.

Exercism.org

After you learn HTML & CSS, you should pick a language you want to learn. This language should be according to the path that you are considering pursuing. I want to be a full-stack software engineer, so I am learning JavaScript. Once you pick your first language to learn, exercism.org is a great space to learn. They offer 76 language learning tracks, which is incredible. Many individuals recommend learning Python as a first language as it is easy to learn and implement. This is a safe path that will ultimately add a few more weeks to your learning journey but will be worth it.

Open Source Society University

If I didn’t have to work a full-time job, I would be incredibly excited to pursue this resource (and I still might later). OSSU has put together an entire curriculum that is equivalent to a Computer Science degree for free. If you are a dedicated self-learner, this resource could give you a solid foundation for your journey in tech. If you struggle with procrastination or personal commitments, find someone you can go through this curriculum with.

Stackoverflow.com

While stackoverflow.com is essentially a giant Q & A site, many programmers swear that this site is what taught them to code. I personally don’t think that I could start from zero with this resource only and succeed, but I do know that it is a tool that I keep and use frequently. The great thing about stackoverflow is that it is made up of a lot of seasoned professionals, asking other seasoned professionals very intricate questions. With most of these other resources, the tutorials or lessons are tailored to beginners only. Then once you’ve learned all that you need to move into something more, it seems not many sites are available. Stackoverflow can see you throughout your entire learning process, again- as more of a supplementary resource.

Textbooks

Do you have a library card? Textbooks are still a fantastic way to learn a new skill. When I started coding, I visited my local library and checked out JavaScript for Dummies. I didn’t even read it, but it helped me realize the power that my local library has on my learning journey. Since then I’ve checked out several textbooks that have helped guide me toward a better path.


Whichever resources you use, be sure to use them intentionally. I cannot state how important a plan is at the beginning of your learning journey. There is so much information out there for beginners, so don’t get overwhelmed. Figure out what you need to learn and stick with it.

What other free resources are great for beginners who are learning to program? Link them in the comments below.

Be sure to join the mailing list to receive my weekly newsletter!