Don't be afraid to code it yourself

Published on 2021-04-02.

Have you ever thought about developing some type of application from the grounds up and people are telling you that you shouldn't do it, and that it is difficult, and that you shouldn't reinvent the wheel, etc.? Guess what, what you shouldn't do is to listen to those people!

There is only one sure way to become good at something and that is by doing. The more you do something, the better you get at it.

A great benefit of doing it yourself from the grounds up is that you become a master of your code, if something breaks, then you're the one who knows the code inside and out. If you use some pre-made solution, then you don't know the code and will possibly have a hard time helping a client with a bug.

You shouldn't be a afraid to code yourself, not even if it is a complicated task. If every programmer was afraid to code, then nobody would ever code.

Every time you build something, you learn something, and each time you gain experience and skill.

If you or a client need a specific tool or application and you do not like the available options, then code it yourself.

Make sure you don't have any technical debt. Fix your bugs right away, the sooner you do it, the better. If you wait a long time, then it becomes more difficult.

Find the tools that makes it easier to do the things you like to do. I personally use Vim or Neovim as my text editor and integrate that with Ctags. Combined with the terminal tools you find available in a standard Linux distribution or BSD flavor, this setup blows away any sophisticated IDE out there. I then combine that with a couple of homemade scripts and a very few Vim plugins to improve and automate a part of my workflow.

Last, but not least, if you can, and you're not making a proprietary application that your client prevents you from sharing (which they often do), then share the code. If people find your project interesting they will occasionally provide you with valuable feedback or information, and they may even begin to contribute back.

Happy "hacking" :)