Build projects build knowledge build a foundation

Build projects build knowledge build a foundation

Summary: ↬ In this post, we examine the importance of building our own projects and how it will help us improve as a programmer

Mar 31, 2021

4 min read

---


When we start learning to program we spend a lot of that time in tutorials, reading books, checking on other more experienced programmer's code, and many other things that we think are helping us be better, but in reality, they are not as helpful as we thought.

In one of my latest posts, I wrote about the tutorial hell and how it can hold us back. This can be applied to almost anything that we can learn. If you ask any experienced developer which is the best way to learn to program, it's almost certain that almost all of them if not all will tell you that there is no way around it, you have to build your own projects.

"The only way to learn a new programming language is by writing programs in it." - Dennis Ritchie

Learning from a source is great, basically necessary but that is just the start. In order to actually learn you have to take the next step and start coding on your own. Think about it for a second, imagine you want to learn how to draw, if you watch a tutorial about drawing, did you really learned how to draw? obviously not. This is simply because we can't really learn new abilities just by watching or listening. We have to practice!

Practice is what makes us improve. Why? because we're actually putting to work the knowledge acquired from the tutorial, video, or book. It is only when we practice that we're actually getting better. The problem comes when we get stuck with the fear of failure.

There is a high chance that when we start our projects we will fail, and we won't be able to get everything writes, and that's the point. We have to remember that failure is not bad, failure is what will tell us in which area do we need to improve and keep practicing. Think of how many things were discovered after many failures (ask Edison and his many failures before inventing the light bulb).

"Programming isn't about what you know; it's about what you can figure out.” - Chris Pine

When I started learning React the first few days, I struggled a lot. I almost quit learning it. And for some reason I just didn't, I kept going. And now I can safely say that I know to React. Of course, there is a lot from React that I still can learn in order to master it. But looking back at when I first started I feel proud of myself for how much I have improved. And why did I improved? Because I kept failing, and failing, and failing, in other words, I kept practicing and building projects until eventually, I got it right.

As in life, anything worth it is never easy. So, in order to learn to program, we have to practice, we have to struggle and we have to fail. And eventually, if we keep going, we're going to get it right.

In the end, if we want to be better at anything, including programming, we have to practice. Don't be afraid of failure, embrace it, learn from it. Because those failures will help you get better. So, if you are starting to learn to program and don't feel ready yet I encourage you to start building your own projects, it doesn't matter if they are small, just start typing on your own. And when you get stuck then start thinking on how to solve the problem, ask around, research and I guarantee you that you will succeed.

One of the more important parts of a building is its foundation. The foundation is the one in charge of supporting the complete structure. Just as with a building's foundation, as a programmer you have to build your own foundation and make sure that it has the require strength to support your programming structure.

The more projects you build, the better you will be. So, go and start building projects on your own, by building projects you get knowledge, and with the knowledge, you get a better programming foundation and that's the whole point because I can guarantee you that building your own projects is the best investment you can do to improve your skills.