Learn Programming For Free (All Free Resources)
Tags: codenewbie, beginners, javascript, python
Published: 2020-03-08 12:45:27

Learning code can change your way of thinking. Coding is like magic. It will give your superpower and you can build many amazing things with it. Right now you are reading this blog from a website right? If there was no coding then it was impossible to make. Also, the device you are using is depending on programming. If you can make amazing hardware, if there is no programming included that it has no value in the end. So programming is really important.

I love programming because it makes me the creator. It gives me power. I can make my world of programming using my brain. I can simply make a website to connect people one with another. Dating is so easy now because of Tinder, which also made by programming. These things make me so fascinated with programming. The moment I start created programs I fall in love with programming. If you are already in programming, comment on the reason why you fall in love with programming.

![Coding on Fire](https://media.giphy.com/media/13HgwGsXF0aiGY/giphy.gif)<figcaption>Coding on Fire</figcaption>

In this tutorial, you’ll find to learn coding from zero and it’s free resources. You can just go through and learn the whole thing. I can’t exactly tell how much time you need to go through but honestly, nobody can tell you this. Because it depends on you. How much time you are giving every day and how fast you can understand each topic.

My advice will be first going through the basics then learn the advance topic. In the meantime build demo projects for learning. Learning through building projects is a really good idea.

#Introduction
The first step is learning about the computer and coding. You just need to know how a computer works and how you can do something using it. Now dig down any resource from down list and choose and finish what you like most. Also, you can look up to google for more resources. 

Intro to Computer Science - Harvard's CS50 https://www.youtube.com/playlist?list=PLWKjhJtqVAbmGw5fN5BQlwuug-8bDmabi

Why Programming Is Important - https://www.youtube.com/watch?v=Dv7gLpW91DM

A Crash Course on Computer Science - https://www.youtube.com/playlist?list=PL8dPuuaLjXtNlUrzyH5r6jN9ulIgZBpdo

If you want to be a web developer then you can follow - https://zerotomastery.io/blog/learn-to-code-in-2020-get-hired-and-have-fun-along-the-way

Also this roadmap - https://github.com/kamranahmedse/developer-roadmap

#Choosing a programming language 
This is a crucial part for any learner, choose your programming language depends on your goals or else you'll waste some of your time and time & tide waits for none. Check resources from below - 

How to Select Your First Programming Language - https://www.youtube.com/watch?v=2EaopRDxNrw

How to choose a programming language (for your tech stack) - https://www.youtube.com/watch?v=uZ5bq7cKX4Y

What Programming Language Should I Learn First? - 
https://www.youtube.com/watch?v=poJfwre2PIs

How To Choose Your First Programming Language - https://www.youtube.com/watch?v=xDi7W342dC8

Top Programming Languages in 2020 -  https://www.youtube.com/watch?v=bjFvcFjJpE0

#Crash Course About Programming Language
After choosing the language first work will learn about the programming language. Python & JavaScript is So Popular So I'll leave some crash courses about it, You can choose whatever you want to choose. Search in google and you'll find your desire language courses. Also, read the documentation. 

JavaScript Crash Course For Beginners
https://www.youtube.com/watch?v=hdI2bqOjy3c

JavaScript Tutorial for Beginners: Learn JavaScript in 1 Hour [2019]
https://www.youtube.com/watch?v=W6NZfCO5SIk

Learn JavaScript - Full Course for Beginners
https://www.youtube.com/watch?v=PkZNo7MFNFg

Python Crash Course For Beginners
https://www.youtube.com/watch?v=JJmcL1N2KQs

Python Tutorial for Beginners [Full Course] Learn Python for Web Development
https://www.youtube.com/watch?v=_uQrJ0TkZlc&t=2s

#Beginner Programming Mistakes
Now Time to learn about some programming mistakes, because if you don't learn it in a good way then you'll waste so much time. Spend some time reading these two Blogs, they are good.

17 Beginner Programming Mistakes -  https://blog.nerdjfpb.com/17-beginner-programming-mistakes/

The Mistakes I Made As a Beginner Programmer - https://medium.com/edge-coders/the-mistakes-i-made-as-a-beginner-programmer-ac8b3e54c312

#Data Structures
After learning about the programming language, now it's time to go deep down with the data structures. Learn some data structures to be a better programmer. See the list - 

Data Structures
https://www.coursera.org/specializations/data-structures-algorithms

Data Structures and Algorithms in Java
https://www.youtube.com/watch?v=BBpAmxU_NQo

Intro to Data Structures and Algorithms
https://www.udacity.com/course/data-structures-and-algorithms-in-python--ud513

Data Structures
https://www.youtube.com/playlist?list=PLpPXw4zFa0uKKhaSz87IowJnOTzh9tiBk

Data Structures & Algorithms 
https://www.youtube.com/playlist?list=PLBZBJbE_rGRV8D7XZ08LK6z-4zPoWzu5H

#Algorithms
After the data structure, the next step is working with the algorithm. This part is needed because here we build problem-solving skills. Problem-solving is the best part of programming. This gives up the power to solve anything. See some resources - 

Data Structures and Algorithms Specialization
https://www.coursera.org/specializations/data-structures-algorithms

HackerRank Algorithms 
https://www.youtube.com/playlist?list=PLI1t_8YX-ApvMthLj56t1Rf-Buio5Y8KL

Algorithm Design & Analysis
https://www.youtube.com/playlist?list=PLh8cmtKf7uVm9Pw8xvA2f4mfL6Fxh46JH

Advanced Algorithms (COMPSCI 224)
https://www.youtube.com/watch?v=0JUN9aDxVmI&list=PL2SOU6wwxB0uP4rJgf5ayhHWgw7akUWSf&index=2&t=0s

Algorithms Course
Graph Theory Tutorial from a Google Engineer - https://www.youtube.com/watch?v=09_LlHjoEiY

After completing all these or get an idea from all of these you need to choose a career. What you want to be? There are many ways you can go from now. Example - 
- Web Development
- Software Engineer
- Data Scientist
- Quality Assurance Engineer 
- Product Manager
- Robotics
and many more.

#Some Blogs For Following
- Dev Community https://dev.to/
- Scotch https://scotch.io/
- Zero To Mystery Blog https://zerotomastery.io/blog/
- Overreacted https://overreacted.io/
- Team Tree House Bloghttps://blog.teamtreehouse.com/
- Hashnode https://hashnode.com/
- Medium https://medium.com/
- Toptal Blog https://www.toptal.com/blog
- CSS Tricks https://css-tricks.com/

#Youtube Channels To Follow
- FreeCodeCamps https://www.youtube.com/channel/UC8butISFwT-Wl7EV0hUK0BQ
- Traversy Media https://www.youtube.com/user/TechGuyWeb
- Dev Ed https://www.youtube.com/channel/UClb90NQQcskPUGDIXsQEz5Q
- Web Dev Simplified https://www.youtube.com/channel/UCFbNIlppjAuEX4znoulh0Cw
- The Coding Train https://www.youtube.com/user/shiffman/featured
- The Net Ninja https://www.youtube.com/channel/UCW5YeuERMmlnqo4oq8vwUpg
- Web Bos https://www.youtube.com/user/wesbos
- Design Course https://www.youtube.com/user/DesignCourse
- Programming With Mosh https://www.youtube.com/user/programmingwithmosh
- Cs Dojo https://www.youtube.com/channel/UCxX9wt5FWQUAAz4UrysqK9A/featured
- Andrew Mead https://www.youtube.com/user/andrewjosephmead1/videos
- Level Up Tuts https://www.youtube.com/user/LevelUpTuts
- Fun Fun Function https://www.youtube.com/channel/UCO1cgjhGzsSYb1rsB4bFe4Q

There are so many free resources online. I've just listed some. Everyone's choice is different, so not every teacher will look like helpful to everyone. Just find your heroes and follow them.  The last advice is to follow multiple heroes! A single person can't know everything. Programming has no limits of learning so keep learning and keep learning from multiple sources. 


I’ve started a programming community on discord. Click to join [Discord Channel](https://discordapp.com/invite/DCPm86M)

I've two free PDF for you
- [Learn JavaScript in 30 Days](https://blog.nerdjfpb.com/javascript-in-30-days-free-pdf/)
- [Node JS In 30 Days](https://blog.nerdjfpb.com/node-js-in-30-days-free-pdf/)

Originally it published on [nerdjfpbblog](https://blog.nerdjfpb.com/learn-programming-for-free/).

You can connect with me in [twitter](https://twitter.com/nerdjfpb) or [linkedin](https://www.linkedin.com/in/nerdjfpb/) or [instagram](https://www.instagram.com/nerd_jfpb/)  !