"Hello Eze, So I saw your portfolio website, and I think it's awesome! How long have you been coding? I want you to be my mentor. Where did you learn how to code?"

This is one of the wonderful comments I received from LinkedIn (please keep them coming, haha).

Well, I have never gone to a bootcamp or had a mentor (I really wish I had one). I used the resources available to me to learn how to code. So I can call myself a "self-youtube-pdf programmer." Before we continue, if you are a beginner, please get a good mentor. You will appreciate me soon enough.

Getting better at coding is a journey that varies, but there are always a lot of constants involved. As a front-end developer, I have decided to share some essentials I used in the course of learning and practicing software development. Most of them will be frontend-development-centric, but they can be useful to any programmer. So Let's walk through together…

1) Sheer Willingness And Determination

Just like every other skill in the world, you have to be willing to learn it so that you can learn it. In tech, desire is not enough; you need to back it with the utmost willingness. I started commercial programming in late 2019. Then I just wanted to code and make money; the desire was there, but I wasn't willing enough to do the needed work. It was when I was determined to focus that I started getting the desired results. Everyone wants to be the best at what they do but the difference is the amount of determination and work put in. My dad would say "Everyone wants to be rich, but not all want to get rich".

2) Code more. Type more.

The meme below says it all. The more code you write, the better you become at it. It is a no-brainer. The obvious reason why companies sort out experienced developers. Writing more codes makes you more familiar with syntax, and you are very likely to make mistakes and encounter problems. Going through these mistakes will help you learn new things. Since I started averaging 7 hours daily on my wakatime, I started improving at a crazy rate. It laid the foundation for me to understand complex concepts and gave me better judgment in assessing situations. Reading PDFs and documentation is not enough; you have to back it up with practice. Writing more code allows you to apply theoretical knowledge to real-life projects. It also makes you more efficient and speedy while working on a project because there is a good chance you have done something similar before. Don't let bugs scare you at all. You can even start a project, use it as a SaaS startup idea, and learn while building. It doesn't have to be optimal or scalable; just keep building. Make sure you build projects that excite you as well; this will make you love coding and want to build more. All my side projects are things I love to build, it excites me, especially the sports and podcast web apps.

None

3) Learn How You Learn

YouTube videos work for me perfectly. I have a friend (a very good developer) who sleeps two minutes into a YouTube tutorial. How we all assimilate things differently—it's the way of life. For you to be good at something, you need to find the method that works for you.

When I go to YouTube and see "How to build WhatsApp clones with Nextjs in 11 hours," this is how I approach it: Going through an 11-hour tutorial and replicating and understanding it can take up to a week if not more. So what I do is break the video into three parts and try to build something with the knowledge you gather in each part. This will help you learn and understand the concepts better. Any problem you are having has a thing or two on YouTube; it is that generous. You can go there, watch or download the videos, and gather what you need.

One man's food is another man's poison. If YouTube doesn't work for you or you believe it is time-consuming, then you should try documentation and e-books. I go to various sites that offer free ebooks, like Goalkicker and some Telegram channels, and download them. I go through them and learn the syntax and best practices. It can be boring, yes, but it is worth it. You can go to the library's website and read their documents. Reading documents has saved me a lot of time watching videos. Documentations like the one in Shadcn UI can be so helpful. In case you need someone to make your documents more scalable, just know that I am available.

Some Of My YouTube Channel

  • Code with Antonio — link — Master in Nextjs and web in general
  • Javascript Mastery — link — Know how to handle beginners in Reactjs and very good at laying a good programming foundation.
  • Simon Grimm — link — He is making learning React Native so much fun.
  • freecodecamp
  • There are so many others. Just go there and have fun learning.

4) Steal and study codes.

"Good artists borrow, great artists steal." Pablo Picasso. In this context, I won't call it stealing but rather "outsourcing.". Any code you have in mind to write, someone around this global village has done something similar, and you will likely find it on GitHub. GitHub has helped me a lot in terms of development. At my leisure, I go there to search for technologies, see what other developers are doing, and follow the trend. When I have a problem, I go visit there to see if someone has done something similar, and I have found 98.9% of the time (manufactured stat). You also need to study them and improve the code. Despite all the appreciation, I still feel GitHub is underrated. You can go there and steal—I mean, outsource code to solve your problems; by doing so, you will learn as well. Please, as you outsource, try and star the helpful ones. It takes nothing from you.

5) Minimize your use of Ctrl C + V. Say No to Copy-N-Paste Syndrome

"Please, my friend, it is okay; you have copied enough for the day." I feel our code editor should have this command because some of us copy more than cats. Copy and paste can be unhelpful to programmers, especially beginners. It takes the fun away—the typing and all. It kind of makes you less efficient. When I say you should steal codes, my bad, I mean outsource codes. I mean, you should go through and type it out because, as you type out these syntaxes, your brain registers some of them and gets used to them. This is a psychologically proven fact.

None

6) Collaborate with other people And Ask Questions

If you see how I ask questions, you won't believe I am the one who built these projects. I do it "shamelessly." The shame is in quotes because, truly, there's no shame at all. One tree can't make a forest; that's why you need to seek out knowledge from your counterparts. Once I have a problem and my Github can save me, I run to Twitter, LinkedIn, or any developer's outlet to ask for help. This has helped me a lot because you can see how others do their thing and pick from them. Don't be ashamed to ask questions anywhere at all, not just in programming. If you work on open-source projects on GitHub as well, you will be amazed at how much you can learn. It is not a must to work on paid projects all the time.

My 6-month internship didn't pay me, but it has shaped my work ethic and pushed me to a level I didn't know I could reach. I am not saying you should take an unpaid internship (I will never repeat that), but as a programmer, you have to STAY BUSY ALWAYS.

7) Visit UI Design Sources

When you want to build personal projects and struggle to come up with designs, it is understandable. That's why I use UI Hut and Behance. I go to these sites to see web and mobile designs and try to replicate them. Sometimes I don't have time to replicate; I just play the designs in my head and see how I can go about it. I also visit Awwkwards to see what is obtainable in the market. Going through sites teaches me how to build mine with the best practices. So I will advise you to go to these websites and get the design that will carry out your projects.

8) AI tools are your friends

As I open my Vs code, I open the Chatgpt tab on my Chrome as well. Two of them work hand-in-hand. They complement each other. AI tools, not the police, are your friends. Don't allow the edgy developers to whine at you; AI tools are available to make our lives as developers easier, not just to take our jobs. Sometimes I wonder if I could have continued coding with AI tools. It gives me crazy, almost infinite power. Honestly, there are very few things I can't do with it. Use them if possible, and pay to have access to them. But there are always side effects, so minimize the copy-and-paste syndrome. Use the idea, not just the generated code, and you are good to go. For now, for me, I think Chapgpt is the best. You can recommend the ones you're using.

9) Practice more.

Yes, practice more.

NB: It will take time. Be patient and enjoy the bumpy ride, haha.

These are some practices that made me a better front-end developer and all-around programmer, and I hope they will do the same for you. Check out my other articles as I continue my journey as a technical writer and a better developer. Reach me here

To be continued…

Thank you for reading.

With Love ,

Ezigbo ❤.