When I started my coding journey, I remember searching for that one piece of advice that would make everything click for me. Some guiding principle, some magic lesson, or some unknown fact. Something that would make my brain go "aha" and make it that much easier to learn coding from that point forwards.
If you're early in your journey, you might be searching for the same thing. It's natural to look for a silver bullet to solve all our problems. We do that in all aspects of life, and coding is no different.
Unfortunately, this one piece of advice that will change everything doesn't exist.
Learning to code and having a successful development career is all about tradeoffs. You'll focus on some things for a while, then inspiration strikes and you switch gears. Some lessons help you a lot, while others seem pointless. Some days will work out great and fill you with energy, while other days make you feel stupid and incompetent.
I know that's not what you were expecting to hear, and to make it up to you, I will share my own, personal favourite piece of advice that I believe will be most valuable to you. It's not a silver bullet, and it won't make you an amazing developer over night - but it will help you improve your skills and enjoy a more successful development career in the long run:
Start a blog!
A blog is a way to document your learnings. It's a way to take something you've experienced and ingrain the knowledge in your brain. Starting a blog will help you in many ways:
- You'll retain knowledge by forcing yourself to put it into words
- You'll be helping others that might be in a similar situation as you
- You'll improve your written communication (important for all developers)
- You'll be able to refer back to your own blog posts when you come across the same issue or need to reflect
- You'll stand out to potential employers by showing that you care enough about coding to write about it
What you write about isn't really important. It can be a small trick you just discovered, a new piece of syntax you learned, or which language you're planning to learn next. It can also be about your struggles - maybe you're feeling burned out, or defeated by a particular problem. Writing about it can serve as a form of therapy. Anything you write will help you improve your written communication, which is a severely underrated skill in our field.
Now, you might be wondering how you start a blog - and that's a great question! The way I see it, there are 3 great alternatives:
- Write on Hashnode/Medium/Dev.to. These platforms are by far the easiest way to get started, and they'll help you gain views organically simply by promoting you to other readers. They have great editors and you can get up and running in minutes. Definitely recommend this in the beginning so you can focus on your writing.
- Use WordPress. WordPress is a great blogging engine, somewhat easy to set up, and you'll have full control of your platform. This makes it easier to make it look and feel how you want, but it also requires some more technical know-how to use effectively.
- Use a static site generator + Markdown files. This one is a bit harder to get started with, as it'll demand a bunch of coding effort up-front. But it's also the best way to gain full control and integrate your blog into your personal website.
All of the above methods are great, but the most important thing is that you just start writing. Pick a platform and stick with it. Build a backlog of content, then you can always switch later. You want to reduce friction as much as possible so you can focus on getting your articles out there. So with that in mind, here's a clear plan for what you should do next:
Write an article.
The topic doesn't matter, the platform doesn't matter. It doesn't even need to be a long or insightful article. Just open a text file and get going. Write about something interesting that you did or learned. Let the thoughts flow freely. When you've reached a natural stopping point, publish it. Don't worry about perfection, or whether or not anyone is going to read it or agree with it. Just get it out there.
Sooner or later, you'll come to love writing - and it will be a huge asset throughout your entire development career.