How did you learn to code?

Build projects vs courses!
Your advice, please …

Hi @YaserHamame01 !

Is both not an option? :smile:

I like to learn the basics through a course and then start building projects.


These options complement each other. Courses will give you the foundation for future development, whereas practice will help you to become a developer. I started with Python. Watched some courses by different university professors and tried to put the knowledge into practice right away. Also, I doubt you can build projects without getting the lay of the land first.

1 Like

I know someone who always talks about himself and confirms that he learned from building projects only with Google and through that he became a professional.

Can you explain which projects you intend, are the course projects or real projects?

When I am first learning a new technology I will do some of the course projects. For example, with react I started with the fcc projects before moving to my own project. Right now I am building an e-commerce site with react.

1 Like

Doing courses is a way to learn what there is to learn.

Doing projects is a way to learn what you want to learn.

Don’t only do courses as you will only learn what you can learn, but forget if you don’t do it in practice.

Don’t only build projects, as you will build only what you know you can build, and miss out on the “bigger picture”.

Try a mix of both, but I do recommend building more projects than taking courses. If you take a lot of courses and only build a few projects, you won’t be able to put into practice all the stuff the courses go over, and you will forget.

I rarely take courses. Even watching tutorials, or going over guides is something I do more to get the idea of how to do something, but I don’t consider it “learned” until I do it myself a few times.


Thanks for the detailed and in-depth answer.

The reason I got into web development is back in 2007 my boss bought a SaaS business app so I volunteered to change the MS Frontpage survey form to Infusionsoft and make it look good. There was no broadband in my neighbor so I went to libraries. I’d checkout stacks of outdated CSS books, but I made sure that they explained why I should do it the way the described and I always applied it to a project ( the company site and Infusionsoft). It was very frustrating. I’d reread a chapter many times then type it in and watch it fail. Looking back it was good experience.

I didn’t have a FCC or Codecademy style tutorial but I always had the context of a specific page or site that must look and work a certain way. That narrows your choices so I was never “lost” in the sense of making a site. I was sometimes “lost” in the sense of, “why won’t my CSS work?” I think I was luckier than today’s students, because I had no expectation that HTML and CSS should take 2 weeks and Javascript should take 4-6 weeks. I did web development every moment I could outside of work. If the boss asked why something is taking so long I’d just remind him that we just worked 6 days with daily overtime and he was asking me to come in tomorrow?! (for regular work not website work). Eventually I finished.

In 2018 I did hire a tutoring service to help me understand advanced Javascript ( it’s very different than the compiled and scripting languages I previously learned not to mention it keeps changing ) and a got a lifetime subscription at a project based tutorial site, but it’s applied to a particular industry. That’s how I learned to code for the web.


I agree with most of the sentiments being voiced. You get the fundamentals through courses and you will solidify your knowledge by applying it, in this case, through a project.

I also reccommend trying to explain the concepts you learned to someone else.

If you truly understand what you learned you will be able to simplify complex concepts to someone that doesn’t know the field.

If you get stuck in your explanation its instant constructive criticism for yourself. It indicates that you need to revisit that topic.

I hope this helps in your journey.

All the best!

Thank you very much for your valuable comment.

I’m So much impressed by your experience man, experiences are the best teachers.


First Other peoples experiences and your own we should all be able to learn from them

1 Like

If you never did any coding, I strongly recommend that you start by taking a free interactive online coding course.

See if any of these resources provide a course in your language of choice: Code Academy There are so many resources that teach people to code that it can take ages to select one.

Well, everyone has a different idea of being a professional.

1 Like

Python is really hot so I started there by looking at an eleven hours video with Susan Ibach and Christopher Harrison; Zero to hero in python. I looked at the entire video then I started thinking of ideas in which I could implement what I just learn right away, together with daily practice of the fundamentals, then I move over to Ruby. There is no better resources to learn Ruby than the documentation. I spend hours reading the Ruby documentation than binge watching Youtube videos, then I move to JavaScript web development which I’m doing currently and I’m picking up the fundamentals pretty quick. In conclusion; for backend, automation and data processing I got three tools that I will continue to update my knowledge as new versions comes out and probably some day start a data processing company.

I have to agree with that. I am finding that following along with a course is helpful but as soon as you’re faced with something that is not course structured, it’s a lot of Googling and wondering how much you actually really understood and retained from the course.

1 Like

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.