As someone self-taught in programming, I have seen and personally experienced a lot of approaches to learning to code. Some of them are good, and most of them are not. I will not go through a lot of them in this journal, since it might require a whole different journal on its own.
In this one, I would like to focus on one specific thing while learning to code, and build something.
On Building Project
Building a project as part of your code-learning journey is great. I couldnāt even recommend it enough to everyone. Itās a lot of fun, and it will teach us a ton of things.
No matter what stages of your learning journey youāre currently at, whether you know nothing or are an experienced developer learning new technologies, building āsomethingā is the way to go.
But, unlike a lot of experienced programmers out there, a lot of people who are getting started on the journey of software development (in my view) are doing similar things, they build a clone.
On Cloning
I am not sure why a lot of people did that. But, I suspect thatās because a lot of learning resources out there (especially YouTube tutorials) are building clones as the primary object.
I have a few opinions on that. Assuming youāre building a project to fill up your portfolio, building a clone is not that āimpressiveā. I know it sounds a bit harsh. But, there are dozens of people out there that did the same thing. Itās so difficult to stand out.
Then, the clone is technically just a thing with a set of predefined features, rules, looks, etc, that rarely gives the developer the freedom to express their skills. And the developer itself rarely gives their personal touch on this case.
Of course, cloning is not necessarily a bad thing. Thereās Build Your Own X thatās popular. But, the major difference that I see in this case is that they want to know how the tools that they are recreating are working at the fundamental levels.
Build Better
So, how can I build better? My personal guidelines are simple:
- Does it pique my interest?
- Will I personally use it (and maybe other people too)?
- Will it teach me something new?
I believe a good personal project should meet all of those criteria. But, at the end of the day, developing something shall be fun. Have fun coding!
Published on: