Relearning Programming: My Process in the Modern Tech World

October 23, 2025 · by Akarsh

I’ve been in the tech industry for about 15 years. In my early days, I tried to build something that made money without knowing how to code, using WordPress, SEO, and other basic tools.

Later, I built a web app, which let me explore far more of tech: proper coding (though my early code wasn’t very impressive), databases, deployment, Nginx, frontend development, and backend APIs.

Then I took a break from building for about five years to focus on work. One day I realized that if I didn’t start making something now, I might never get the chance, because I would only get busier.

For the first couple of days, my mind felt blank, and I was distracted by social media and everything else around me. So I decided to learn a new language or framework: to occupy my mind, make good use of the time, and broaden what I could do.

I was already familiar with JavaScript, Java, PHP, Python, and Ruby. I became interested in Rust because it lets you explore memory allocation, type safety, and other low-level concepts. I started reading the documentation and watching tutorials. At first I was impressed, because Rust offers almost C-like speed with much stronger safety guarantees. I experimented in the Rust playground and gained a good understanding of pointers, immutability, and other concepts, though I haven’t explored server-side development with it in depth yet.

Next, I learned Go. Go is my first recommendation if you want the best performance for server APIs: it’s fast, scalable, efficient, and simple. I tried examples in the Go playground and loved how quickly I could build APIs that performed so well. I wasn’t a fan of some of its error-handling patterns and type-system choices, though, such as the way enums work.

Then I built an API in Go. I started with Gin and implemented simple features, such as handling input and saving data, backed by a PostgreSQL database. I added JWT-based authentication with the golang-jwt library. I also tried GORM as an ORM in one project and SQLx in another. My takeaway: if you want full control, SQLx is better; if you want to ship quickly and can give up a little control, GORM is fine.

After experimenting with several languages and frameworks, I now have a broader and deeper understanding of programming. I’m still learning every day, exploring anything from hardware to software that catches my interest, even if I still get stuck on simple programming questions now and then.

Throughout, I used AI only for definitions, syntax explanations, and “how-to” guidance. I deliberately didn’t let it write code for me. I wanted to learn step by step: reading, practicing, and writing the code myself.

Thanks for reading. You can find me on X/@akarshcp.