I have seen a lot of people who want to learn how to code for various reasons. Now am not any coding expert. I just started it as a fun way to spend my time. Yet, I have learnt quite some things that I want to share.
For absolute beginners-
THE RESOURCE THAT YOU USE DOES NOT MATTER.
I had wasted a lot of time finding the perfect 'resource' to learn how to code. And it resulted in a lot of wasted time. Perhaps some would disagree. But this has been the general consensus among people who in different coding forums - just start. Start by watching youtube videos. Or read about it. Or buy books. Or buy a course. Whatever you want. (for the people who are gonna buy a course, I understand why you would want to do proper research before buying one, but for those who are going to learn through youtube videos/blogs/etc. just start with anything)
Here are some good resources in no particular order-
1. Freecodecamp (they have free courses on their website as well as their youtube channel)
2. The odin project ( for web dev)
3. CS50 (a free course from harvard professor, not really about coding but general programming things)
4. Youtube (how I learnt it)
5. Udemy, coursera etc.
So to sum up-
1. Learn the basics of programming using a language (if you are not starting with web dev) - variables, strings, functions, conditionals, loops, classes, objects etc.
2. If you are starting with web dev, learn the basics of html, css like the basic tags, elements, properties etc.
Ok, I know the basics now what?
Question Driven Development
I forgot who coined this term, I learnt it from a youtube video (just search for it) but here's what it is-
1. After you have learnt the basics, what you have to do is start making projects. (DO NOT SPEND HOURS WATCHING ADVANCED CODING STUFF. FIRST LEARN THE BASICS THEN DIRECTLY START WITH PROJECTS. GET OUT OF TUTORIAL HELL)
Search beginner projects in XYZ to get ideas.
2. Break the project down into steps and then figure out how to solve each minute problem
Wow. How would I figure it out?
3. Google it. Yes. Search engines will be your biggest help while you are learning it. Learn to solve the micro level problems from blogs/stack overflow etc, then implement it in your own code.
4. Solve each micro level step and boom your project is done.
Here's an example-
Suppose you want to create a landing page, and you just know some basic html and css, and you want to create a landing page. Here's how you break it down
1. Create the top nav bar
2. How do I place logo in the webpage?
3. How do I set a background image?
4. How do I make a beautiful looking input asking for email?
.....and many more.
Each step here can have other sub-steps, but you get the idea.
After that, you google search and find out what you want.
For example, lets say you are building the navigation bar, and you dont know how to lay all the links horizontally. Search it 'How to have many elements horizontally using html/css'. Then you might come across flexbox. Learn flexbox. Implement it. Then you might have made the website but everything breaks apart on a smaller width. Search it. "how to change webpage display on different widths using html/css".You would learn about media-queries.
...you get the idea.
Here's why its effective
You don't just learn stuff for the sake of learning. You learn it and know the EXACT SCENARIO where you would use it. Trust me, you could watch hours of tutorials without coding and when you do start coding you would have no idea how to make something. Use your problem solving muscles from the start.
Well , thats it. With time, increase difficulty of your projects. Learn new things. Understand where and why they are used. Repeat the steps
(In no way am I any coding expert or something. I am just an amateur, and just sharing the things that I have learnt. If you are a coder as well, and you think anything that I have written might not be helpful, please tell it here as it would help everyone)
For absolute beginners-
THE RESOURCE THAT YOU USE DOES NOT MATTER.
I had wasted a lot of time finding the perfect 'resource' to learn how to code. And it resulted in a lot of wasted time. Perhaps some would disagree. But this has been the general consensus among people who in different coding forums - just start. Start by watching youtube videos. Or read about it. Or buy books. Or buy a course. Whatever you want. (for the people who are gonna buy a course, I understand why you would want to do proper research before buying one, but for those who are going to learn through youtube videos/blogs/etc. just start with anything)
Here are some good resources in no particular order-
1. Freecodecamp (they have free courses on their website as well as their youtube channel)
2. The odin project ( for web dev)
3. CS50 (a free course from harvard professor, not really about coding but general programming things)
4. Youtube (how I learnt it)
5. Udemy, coursera etc.
So to sum up-
1. Learn the basics of programming using a language (if you are not starting with web dev) - variables, strings, functions, conditionals, loops, classes, objects etc.
2. If you are starting with web dev, learn the basics of html, css like the basic tags, elements, properties etc.
Ok, I know the basics now what?
Question Driven Development
I forgot who coined this term, I learnt it from a youtube video (just search for it) but here's what it is-
1. After you have learnt the basics, what you have to do is start making projects. (DO NOT SPEND HOURS WATCHING ADVANCED CODING STUFF. FIRST LEARN THE BASICS THEN DIRECTLY START WITH PROJECTS. GET OUT OF TUTORIAL HELL)
Search beginner projects in XYZ to get ideas.
2. Break the project down into steps and then figure out how to solve each minute problem
Wow. How would I figure it out?
3. Google it. Yes. Search engines will be your biggest help while you are learning it. Learn to solve the micro level problems from blogs/stack overflow etc, then implement it in your own code.
4. Solve each micro level step and boom your project is done.
Here's an example-
Suppose you want to create a landing page, and you just know some basic html and css, and you want to create a landing page. Here's how you break it down
1. Create the top nav bar
2. How do I place logo in the webpage?
3. How do I set a background image?
4. How do I make a beautiful looking input asking for email?
.....and many more.
Each step here can have other sub-steps, but you get the idea.
After that, you google search and find out what you want.
For example, lets say you are building the navigation bar, and you dont know how to lay all the links horizontally. Search it 'How to have many elements horizontally using html/css'. Then you might come across flexbox. Learn flexbox. Implement it. Then you might have made the website but everything breaks apart on a smaller width. Search it. "how to change webpage display on different widths using html/css".You would learn about media-queries.
...you get the idea.
Here's why its effective
You don't just learn stuff for the sake of learning. You learn it and know the EXACT SCENARIO where you would use it. Trust me, you could watch hours of tutorials without coding and when you do start coding you would have no idea how to make something. Use your problem solving muscles from the start.
Well , thats it. With time, increase difficulty of your projects. Learn new things. Understand where and why they are used. Repeat the steps
(In no way am I any coding expert or something. I am just an amateur, and just sharing the things that I have learnt. If you are a coder as well, and you think anything that I have written might not be helpful, please tell it here as it would help everyone)
Dislike ads? Become a Fastlane member:
Subscribe today and surround yourself with winners and millionaire mentors, not those broke friends who only want to drink beer and play video games. :-)
Membership Required: Upgrade to Expose Nearly 1,000,000 Posts
Ready to Unleash the Millionaire Entrepreneur in You?
Become a member of the Fastlane Forum, the private community founded by best-selling author and multi-millionaire entrepreneur MJ DeMarco. Since 2007, MJ DeMarco has poured his heart and soul into the Fastlane Forum, helping entrepreneurs reclaim their time, win their financial freedom, and live their best life.
With more than 39,000 posts packed with insights, strategies, and advice, you’re not just a member—you’re stepping into MJ’s inner-circle, a place where you’ll never be left alone.
Become a member and gain immediate access to...
- Active Community: Ever join a community only to find it DEAD? Not at Fastlane! As you can see from our home page, life-changing content is posted dozens of times daily.
- Exclusive Insights: Direct access to MJ DeMarco’s daily contributions and wisdom.
- Powerful Networking Opportunities: Connect with a diverse group of successful entrepreneurs who can offer mentorship, collaboration, and opportunities.
- Proven Strategies: Learn from the best in the business, with actionable advice and strategies that can accelerate your success.
"You are the average of the five people you surround yourself with the most..."
Who are you surrounding yourself with? Surround yourself with millionaire success. Join Fastlane today!
Join Today