Friday, January 24, 2025

2024 - Life could be so hard sometimes

Takuji Ichikawa wrote something along the lines that writing a novel is like crying. Putting words down is akin to when tears are visible. By then it is a done deal. The heavy lifting is the process leading to the first drop. Tidal waves of emotion, kicks in the stomach, and even punches in the face, hopefully figuratively, are at work for that moment. It is magical and it is despair. All that time, the manifestation is invisible. I didn't talk much about it, nor write, yet more than half of January has gone through and I am still figuring out what to make of the last year. In the recent couple of years, I have felt attuned to the rhythm of the world, from a faraway war to the rise of temperature to a drop in interest rate. 2024 is so personal.

Photos were taken

In my younger years, I used to be a vivid amateur photographer. I liked it quite a lot. The hobby made me look at life through a different lens ;) Time flew slower. Locations were canvas. The next subject would be just around the next turn. Really, as a bachelor, that was the best reason to drag myself out of the house and to all the weird corners. Yet one thing and another, the lockdown flipped everything off, the joy faded, the places turned dull. Then the camera died 2 years ago. Well not exactly, only LCD died turning the thing into a decade-old Kodak. I would know what photos I took if I could find a computer. I obviously didn't sign up for the film camp.

At some point, Vy had this wild idea: let's take our own pre-wedding photos. It sorta made sense, we travel relatively regularly, and we don't think the wedding is the biggest thing in life, it just has to be fun, as long as the photos are in focus we can make them work. Little did we know, taking any couple photos that were not selfies was such a pain in the ass. We were out of frame, out of focus, and out of place. That lasted for exactly one trip, to Kota Kinabalu.

After the ordeal though, I netted a massive win: a new camera. How I took photos had changed. I was no longer the guy wandering the street, I commuted and I picked up my fiance from... places. I am horrible at taking portraits, which are the majority of my photos now. My everyday life is not scenic, it is mundane. It only takes a spider to make my morning excited these days. That sounds bad, I swear I am not that boring. Anyway, a new toy is never a bad idea amirite?










Trees were murdered in mass

Ok it is not that bad. I absolutely positively killed more trees than I grew though. What started as a way to put a breath of life into the new place eventually grew on me ;) Checking on the green minions is how my day starts and ends. I have growth lights in my place, does that mean I live in a greenhouse? I am impatient by nature, my favorite moment of getting things done is the day before. Naturally, I poked around too much, fertilized too generously, and pruned too often. I am glad I didn't get a dog or a cat. Trees don't scream bwahaha. 

Through a process of forceful natural selection, the ones I have left are quite robust. I can leave a week or two without them missing me much. It took two years to settle in, I am done with modifying the look of the apartment. Technically, the murphy bed doesn't see much use and I can totally easily make it a splendid aquarium... Perhaps another time.

    

GenAI is taking over the world

2024 could have been just another year of the post-COVID world with all of the usual trivialities. We had some good hires, made a bad promotion, and got ghosted by interview candidates quite often. We put Parcel Perform on a multi-cluster architecture, fear of scalability is a thing of the past. That was a big win for us, but all of that was quickly outshined by the presence of GenAI in every corner of the industry. Many have written about the seemingly sudden rise of the AI overlord, I know you know mine is not that kind of blog post.

At the beginning of the year, we made a modest investment by providing each developer with a GitHub Copilot account. However, this initiative didn't truly pick up steam until the latter half of the year. The GenAI wave has two main facets: utilizing it in daily tasks and integrating generative features into our software.

First we got everyone drunk with the AI Kool-Aid. We ditched GitHub Copilot with Cursor and one of those design-to-code tools. I am not trying to be cryptic here, design-to-code is just all over the place at the moment with a good tool turning into garbage after a single version upgrade. Still waiting for a good Figma plugin to stop this madness. Next, we paired everyone with one of the GenAI chatbots of their choice. Everyone then was asked to automate an aspect of their work with the new pet. Heck one tried to get suggestion for k8s deployment's allocated resources. Finally, to put things on hyperdrive, we made concentrated investments that involved the whole team and made a major change: code-to-doc so our doc stops getting out of date the moment it is released, end-to-end automation of partner integration (finger cross the API doc is readable), code review companion built right in Gitlab, and some more. Once the ball rolled, it kept rolling.

Making GenAI features started later, and it was more of a full-body experience. I found making agents a practice of chaos and order. On one hand, there were so many know-how questions at the beginning. Is a knowledge base better than long context? When is a function a tool and what is it a node on a graph? Are real estate agents human or AI? On the other hand, it is still writing code, it is still software engineering. Although the learning curve is steep, it is somewhat defined (and padded with deprecated doc, looking at you LangChain). What can be learned will be learned and when the dust settles, the ones who lose are those with bad ideas. Bad ideas are gimmicks, forcing people into a conversational nondeterministic interface where traditional text and button work just as well if not better. Bad ideas focus on only making the tools but neglect the importance of data quality. Bad ideas fail to tap into the protective moat, the unfair advantages companies accommodated in their lifetime - they got reduced to beginners and beaten by other younger and faster beginners. I found a combination of everything-go hackathons and iterative agile processes worked pretty well. The space needs to be explored (hackathon), and the adventurers need to be questioned if they are heading in a desirable direction (iterations).

The thought of GenAI beyond the work at Parcel Perform though is where I found and still find myself in a predicament. GenAI is pushing an overloaded workforce into yet another fever. You probably have heard AI won't replace humans but humans with AI will replace those without. In Vietnam, for the first time in forever, the salary of junior dipped but that of managers increased. I am not convinced 2025 would be better. People haven't had the time to ask can my biology brain keep up, Big tech CEOs have already voiced about the replacement of human in the workforce with non-real-estate agents. I don't know if the comparison to the industry evolution makes sense. The machines then needed human to operate, the machines now need human to stay out of their way. We as a species have never showed a good track record of massively upskilling all of its members, let alone doing it continuously because do you think AI would stop learning? The US shifted manufacturing work overseas and failed to upskill its people is why we have Donald Trump as the supreme leader. Other than Bhutan, no country is at the luxury of constraining AI growth because countries with AI will replace those without. The UN has miserably failed at the one reason of its existence: uniting countries. If we can't agree on climate change (of which 2024 was extreme), what is the odd we share the same view on AI? Man, it's hard to sleep sometimes.


Then things go south.

A lost cousin

I am not a big fan of the word "cousin". Growing up with other kids of the same generation in the family, I have always seen them as "siblings". When I was in elementary, it took effort to internalize the difference. I was closer to a particular cousin than I could ever be with my brother. He was only a year older than me. He is no more.

Growing up, we were inseparable yet in our teens our paths diverted. I was a timid obedient nerd, he was a charming energetic cool kid. Things outside of school were more appealing to him, things that were more mature than our ages then. He dropped out, then got back in school a couple of times till high school was over. To my knowledge, he didn't have jobs but many temporary gigs. He got full-body tattoos, divorced, and was an alcoholic. To be frank, I don't know in which order, I was busy figuring out my life. We met from time to time and felt an unbridgeable gap between us.

One day, after watching a midnight football match, he went to sleep and had a stroke in the wee hours. The family rushed him to hospital but by then there was blood all over his brain. I flew in a couple of hours later, enough time to witness the doctors giving up on my cousin. We took him home on an ambulance ride. I was in the back squeezing a manual resuscitator. At home, we worked in shifts, trying to keep him comfortable, at least to the best of our knowledge, he was never conscious. It was hard to sleep though, so the 8-hour shifts morphed into an endless streak of time till the sleep took over. It still took 3 more days till his light went out. Then there was a funeral, as usual.

Our lives were different only by a few coin tosses of life that I felt as if I watched my life pass by through a mirror. It was the kind of reflection that rocked my core. He passed away in June and my memory of July was just the color of black. My cousin left Earth a memento, a tween boy who is smart, timid, and might as well be on a spectrum of autism. He is in so many ways different from both his late father and myself yet so full of potential for greatness, the kind of potential that could wither in the wrong environment. I wanted to stop that vicious circle of life. I am trying. At the same time, I am only in my 30s. I am ready for work. I never feel ready for life.


The burnt-out is here

For many years, I was the embodiment of gung ho at work. I was the first man to come in the time of trouble, and the last man out. I was a one-man on-call team for years before I was blessed with a talented team of DevOps. I made it a point that I never asked anyone to do anything I couldn't do myself. I have been like that for the last 10 years.

I tried to build capacity for the team in numerous topics, but in a startup, things you need to do crop up way faster than things you have figured out. Many times it came down to personal effort and self-sacrifice. One of my favorite sayings goes like this, running a business is like being an octopus, you juggle many things in parallel, or else you get crushed by competition. But you can't pay an equal amount of attention to those many things, or else you get crushed by mental pressure. The trick is to pay attention to one thing till it has a clear chance of success, keep a light touch on it, and move on to the next priority. Well I guess even the most mighty octopus only has 8 arms. 

For a while, there seemed to be so many things happening at once for my little trick to work. People come and go, leaving behind gaping holes for the ones behind. There was organizational restructuring done with the best intentions but butchered by unskilled execution or unpredictable future. We were practicing disaster recovery one day and rushed to put together a new product cluster the next. We were fixing carrier integrations for days just to have them broken down in a few hours. It's like being punched in the face, falling down, and before you can properly stand up, get another blow in the liver. I understand nobody wants to sign up for hardship, but at times, it feels incredibly lonely. 

With my stress high and my health in decline, I turned to computer games. I longed for a win to make up for the loss out there. But I always remember my loss more than my win and I keep coming back for more. This is not the way. I understand that much. I need the strength to get myself out of the swamp. The strength that vanishes before the end of a work day. There were meetings I sat through without my brain working.

I burned out before, big time, so bad that there wasn't anything left. I built everything again from scratch. I was out of job for 6 months and didn't regain my confidence for the next 2 years. Those 6 months were the best time of my life. I don't know if I can afford it this time. It is such a crucial moment in the life of Parcel Perform and I don't want to see everyone's effort in a decade turn into smoke. Past a certain point, life doesn't usually get harder, things just happen a lot faster. Like Tetris. This time though, getting myself out of a swamp while keeping on juggling might be the hardest challenge for me yet.


Oh and I am getting married next year. I am so happy that I have Vy in my life, through the high notes and the not-so-great ones. Seems to be a lot of work though. Heck, perhaps life does get harder and faster!