Mar 29, 2020

How I Started Enjoying Programming Again

A question that has haunted me all my life is of identity. If I include my hobbying years, I have been programming for more than a decade. However, my interests have always been much wider—economics, psychology, mathematics—and the list of things that I have dabbled with is long and growing—design, writing, vector art, photo editing, chess. I am a textbook dilettante. The idea of having a single pursuit for your whole life doesn’t appeal to me, and perhaps, never will.

That leads to my life’s bigger puzzle: what is my ‘calling’? To put it in other words, what should I be doing happily for the next decade or two? Programming is what I have done for the longest while. I enjoy it to a good extent (at least, when there are less bureaucratic battles to fight), but for the past 5-6 years, I couldn’t enjoy being called a programmer. In my hobbying years, I wasn’t afraid to build something silly just for the fun of making it, but this all disappeared at some point.

I don’t know when exactly it happened*,* but I know there were a few triggers. But the biggest one was the sheer dorkiness associated with coding.

I started despising being a nerd, even though I was an a archetypical one. This happened gradually when I started to learn a bit more about the business side of things. In his famous essay, Don’t Call Yourself a Programmer, Patrick Mckenzie wrote:

“Programmer” sounds like “anomalously high-cost peon who types some mumbo-jumbo into some other mumbo-jumbo.” If you call yourself a programmer, someone is already working on a way to get you fired.

A programmer started to feel like someone who loves to code, but isn’t business-smart enough to make bigger gains from it, a code monkey who doesn’t understand the value of his/her own work. A silly side-project was beginning to sound like a wasted potential to make more money. After all, you could use all that time to build something commercially meaningful.

At this point, my technical skills started to feel too normal, too commodotized to be important. After all, a person with half a brain can learn to do most of the CRUD stuff I did in a small timeframe (I know, considering all the nuances, this isn’t true but that’s what I believed). Yes, you get paid well regardless, but your peers did too, didn’t they?

I wanted to be more than a programmer. A business-savvy consultant, or perhaps, an entrepreneur. I didn’t want the tag of a coder. I didn’t want to waste my effort on side-projects unless they had the potential to make some money. I wanted to more business-esque things: reach out to talk to customers, or build a network, or create a brand.

Long story short, all of that didn’t work out. I have always enjoyed building things, but I wasn’t great at other aspects of creating a business. And the constant pressure to build something great made me very stressful with scarcely any success to show for it. An example: In 2016, I wanted to build a content marketing analytics software. I tried to talking before building, got some interest, but I was too worn out by slow sales cycle and cluelessness about marketing.

This can be a story of a ‘the tech guy’ too delusional to understand realities of creating an online business, or a startup wannabe doing the opposite of what needs to be done, but it’s also of trying too hard to be someone else. Maybe I should have tried harder, survived a bit longer, but I distinctively remember feeling burned out by all the self-imposed pressure. It wasn’t enjoyment in any sense.

All this changed this year. This year has been about unlearning what I thought was important, understanding that I do enjoy programming and that there’s nothing terrible about it.

Here’s a list of four things my younger self should have known:

  1. There always more money to be made, but if you’re comfortable with where you’re, you don’t need to engage in an endless chase to optimize hours and rates. That’s not to say doing something like negotiating salary isn’t important but you aren’t a failure if you’re rate isn’t $200 / hour.
  2. You’ve a higher chance of success when you’re making things for fun, solving your own problems. And not stressing yourself about succeeding. Again, completely opposite might be true for someone else.
  3. Advice from successful people should be given a lot of weight, but much of it is context-dependent, and you can ignore something that isn’t applicable to you.
  4. As much as growth-mindset is true, you’re genetically predisposed to be better at certain things, while slightly worse at others. An example: When I see sales people around me, I notice that they absolutely love to talk. I do too, but I find calls and meetings a bit exhausting and need time to get back up. Certainly, it’s not something I would enjoy doing for a living.

So, after a long, hard break, I have started doing things for fun again. Recently, I built:

  1. A blogging system entirely in Notion using unofficial Notion API. You just to have to write a post in a folder and everything from creating a post to publishing will be taken care of. This post is published using that.
  2. A bunch of automation using Hammerspoon. For eg, to copy path of Finder’s current location so that it’s easier to go to that directory in CLI.
  3. A website dedicated to Coronavirus memes.
  4. Foundation stone of a personal dashboard. I synced my Android screentime stats of phone to Notion.

The answer to question in the headline is very mundane. I started enjoying programming again when I stopped being too particular about what I need to build and started doing things for myself. I am no longer hindered by what’ll eventually be commercially viable. Simple but very effective.


Follow Me!

I write about things that I find interesting. If you're modestly geeky, chances are you'll find them too.

Subscribe to this blog via RSS Feed.

Don't have an RSS reader? Use Blogtrottr to get an email notification when I publish a new post.