Almost a five checkmark day

Missing 17 mins of sleep.

Morning in bed with coffee, books and hugging boys. Followed by another (nearly) 10K run—felt and ran better than yesterday. Then a short walk, with a little chase play, for the boys. Lazy, hot afternoon. Capped off with another evening spent in the cool river water with Chewie and Dudley. All ready to crash now. Happy! 🙂

I miss Bombay

I often miss Shimla, where I spent some of the happiest periods of my childhood, most of them with my favourite cousins or my dad. Guildford smells like Shimla sometimes, bringing those memories back. Ambleside always smells like Shimla, perhaps why I like it so much.

I sometimes miss Joka, the place, some of the people, some sweet smiles, many regrets. Lakes, bridges, Calcutta and the rest.

I miss Goa. The easy escape, the careless freedom, the sea and the breeze.

I occasionally miss my Punjabi tabbar with all our eccentricities.

But the place I miss the most, that I itch to go back to every so often, is Bombay. I miss my Bombay. A hell, fucking, LOT.

It’s not my Bombay anymore. I’ve changed, and it must’ve changed. Yet I miss it like crazy and itch to be there. The unreachable itch.

Fuck.

Continue reading I miss Bombay

Signs

Unconsciously and frequently… grinding teeth, clenching fists & jaws, hunching shoulders.
Unable to focus long enough to read long articles or any books, outside of work.
Frequently snacking on desserts or peanut butter.
Drinking more caffeine than usual.
Restless for activity despite running twice a day.

All are signs to unwind. I need a vacation. I really need to meditate. And, maybe, spend a day at a quiet beach, or hiking around a mountain.

But mainly, meditate.

Continue reading Signs

All in a day’s work

Morning—Work.
2 horas of work, 2 commits, one publish. An hour off. 2 hours of work, including responding to half a dozen emails.

Break.
Walk the dogs. Lunch. Watch an episode of Star Trek Discovery.

Afternoon—Fix the tap.
Clean the working area under the sink. Wiggle into the tiny space under the sink and remove the old kitchen tap. Boys try to join me under the sink, and lick me to ensure I’m fine. Find two right sized pieces of wood from the pile under the shed (thank you previous owners). Spend another 5 minutes trying to get both the dogs out from under the shed, and into the house. Saw them (the wood pieces, not the dogs) into correct size and shape. Measure, mark, drill holes for the piping into the wood pieces. Fit the piping and the tap on top of the kitchen board. Realise the hole is too small for the top, thick part of piping. Disassemble everything, drill a smaller secondary hole. Reassemble everything. Wiggle back under the sink and fit everything together. Connect the water pipes. The little dog has dozed off with my right leg as his pillow. After a few minutes of fruitless cajoling, replace my leg with my rolled-up hoodie for his pillow. Get up and test everything is working. Wiggle back under the sink and tighten all the connections. Clean all the tools and the removed tap. The little one is still sleeping on my hoodie next to the sink. Open the fridge. Both the dogs are awake and ready for something, anything, from in there.

All this while cooking the little one’s meal (boiled chicken and rice) for next 24 hours.

Late afternoon—work.
The big one is sleeping behind me on the carpet. The little one is sleeping across us on the bed. I’m trying to work. Good luck to me!

Coding, from 20 years ago

I was updating a few things in the Todo.txt Android app earlier today. I have a second hand Pixel device that I use for testing as I develop. Since I hadn’t used it for a few days, its battery was fully discharged, and it’d be a short while before I could use it to run and test the code. I had the option of using one of the many software emulators, but they are slow on my system1 when run alongside the Android Studio and multiple Chrome instances. Instead, I decided to just code the stuff, document it, and write a few tests till the Pixel was ready for use.

This was different from my usual development practice of writing a few lines of code and then executing to see if it’s working as expected before continuing. I had to think ahead, and structure the code a bit more. I had to mentally execute the method, and its tests. I wrote a bit more comment docs than usual to account for lack of instant execution confirmation. It felt odd and marginally discomforting at times. But it was fun.

Towards the end of the session, I realised that it was also more productive. I had almost completed two of the three planned updates by end of the hour-long session. Not taking frequent pauses to compile-execute-observe-confirm freed me up to continue planning and coding further and faster. It also stopped me from taking detours on updating unrelated or tangentially-related bits observed in the execution.

The session reminded me of how we used to write code when I was studying engineering. Compiling and executing even our C programs was slow on my PC back then2. So, executing was infrequent, and often followed long periods of writing code, and running through the flow manually multiple times. If the program required internet access, it meant even more coding and manual verification before testing it by execution3. Fond memories :)

Anyway, the Pixel is charged now. I can now test the morning’s code and, if it works, commit it, and move on to the third update.


  1. I use a 2015 MBP, though well specced. It has 16GB RAM, 3.1GHz dual core i7, and 1TB SSD. 
  2. I had a best-amongst-peers custom assembled PC. It had 256MB RAM and 8GB HDD. I can’t recall the processor details, but it was a Pentium II. 
  3. This was after I got a PC. Before that, I’d write the code on one of the PCs in the computer lab, print it on dot matrix printers, and take the printouts back to hostel/home. There I’d go over the code, update it with pen, and then go type it in at the lab the next day to execute and debug. It was more fun than it sounds.