Back

Thing's I've tried

I often talk about things going wrong but let's talk about the things I've tried, no failure, no success, just things I found cool and tried to do.

Note: Everything here is still in the realm of programming

I don't know if I should do this in terms of a timeline or alphabetically by project so I'll just go with timeline.

I don't plan to bore you by explaining how a to-do app I built right out of college got me to the path of success but this is more a timeline of domains and things in development that got me into it.

2013

Mid 2013, Right before I started college (~17 years), witnessed one of my classmates playing around with the HTC Forest and he was talking about this custom ROM that he'd installed on it. Found that cool, got home, took my galaxy Y and got to work the next few weeks till I built my own Custom ROM somewhere at the end of the month.

Was tied to hacking through java code, reverse engineering the android system to fix and tweak things for the ROM. The ROM itself was pretty stable but then I didn't really give it any more time of day and moved onto other things in life.

2014

Still interested in programming and development but wasn't sure what I wanted to do (still don't really know that though...), Someone introduces me to Arch Linux and I was someone who just preferred Ubuntu, specifically because of how smooth Gnome 2 was. I had a pretty beat up PC so the performance mattered and learning about Arch made a small part of my dream come true. Making my own OS. Now the own OS part is pretty far fetched for someone who wasn't as smart as the other kids but it was a fun dream to have. I'm pretty sure most developers wish to do it at some point.

And well, I was able to get the small part come true as I built a POC distribution of what I wished arch was. There were a few patches here and there to make sure older kernel ran with the shitty WIFI adapter I had but that was 2014.

2015

3rd year of college, I didn't do much but continued running around different linux distributions and playing around with Python to build a few tiny backend apps. The primary one was a clone of facebook because it was famous back then and I didn't understand how the PubSub messaging server that was used; worked.

So I built a tiny chat server replicating something very similar to Facebook's messenger at the time. It was the just the backend. I sucked at design at this point.

2016-2017

Most of time went with projects and submissions so I didn't get to build or pick up anything fancy though this was when I built something similar to what you might call a GUI for brew. Except it wasn't for brew.

I was still into linux but then package management for most source built apps was shit and brew didn't work for linux I guess , or I didn't know about homebrew back then but the package manager approach didn't work for a lot of software that was out in the open.

The idea was very similar to homebrew where I'd maintain the manifest of how something should be built and where it needs to be installed and this would be scripted in python cause I was writing this in python. It had a GUI that would show progress, something similar to what you see in Mac's App Store around 2016.

Pretty much built the POC and a decent looking GUI before a fellow linux enthusiast asked me to switch the whole thing to electron because it was cooler to write it in electron. So, I did. First time writing javascript and I start with electron....

Luckily, I was able to get it all working with the existing python backend to install the packages and also what I submitted as my college project for the 3rd year.

2017-2018

Getting into javascript, opened the door for full fledged web development and the start of me torturing myself for the next 7 years. I still submitted a version of the Arch linux distro as my project for 4th and final year at college but that was the last time I played around trying to fix linux internals on different hardware. Huge respect for the folks that maintain the kernel. I almost broke my brain trying to figure everything out.

2017 is also the year that I graduated and got a job working for firm and did some casual web dev work. The usual fighting with Angular 1.6 till you do it the "non angular way" and push it to production. React was gaining a lot of popularity in India during this time and jobs started shifting from MEAN stack to MERN stack.

For the react lovers, you have 0 idea how much boilerplate code the initial versions of redux and redux-saga took.

Fortunately or Unfortunately, I stuck to web development till 2020, I found other things that were cooler but I didn't really get time from work since I worked in startups as the founding / core engineer and hardly gave any importance to sleep.

2020-2021

The "I can build everything" phase started around here. I had lost my marbles completely around this time. I built random websites, decided that everyone else was just stupid and didn't know how to build products and that any product that I found online, I could build it alone.

This gave life to a few products listed below

2021-2024

In this duration, I build a POC for a programming language, a few MacOS apps, a few go based CLI tools (including the one that builds this website), a few go based build tooling (Goblin.run) and tried to port react-native's RAW SDK to support rendering with preact, helped maintain a few OSS libraries that involved working with the Javascript AST, written libraries that manipulate the AST's to generate web components that become interactive on load (preact island's tooling).

Simple stuff.

On the whole, I've tried systems programming, web development, mobile development, native desktop app development, developer tooling and a few more things that I might've forgotten about and I'm yet to find the one thing that I enjoy.

So, just in case you think you are lagging behind and aren't able to find something that you'd like to do for the rest of your life? Trust me, you aren't the only one and it's totally fine.

That's it for now, Adios!