<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Tanvi Bhakta - Blog</title><description>Blog posts from Tanvi Bhakta</description><link>https://tanvibhakta.in/</link><item><title>Birthday Blues Purples</title><link>https://tanvibhakta.in/blog/birthday-blues-purples/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/birthday-blues-purples/</guid><pubDate>Wed, 30 Sep 2026 07:46:00 GMT</pubDate><content:encoded>&lt;p&gt;I used to have a complicated relationship with my birthday. I have spent the better part of my adulthood pretending it didn&apos;t exist. Because I used to hate being alive, I didn&apos;t want to celebrate that I was still here. I also didn&apos;t understand the social games people played with gifts, and expectations they had around their own birthdays and parties. If I didn&apos;t acknowledge mine, surely I could opt out of the concept entirely?&lt;/p&gt;
&lt;p&gt;A good friend changed some of this a few years ago by demanding care in the form of acknowledging and celebrating their birthday, and expecting (good) gifts. Because I loved them, I obliged. Now I am in a much healthier place with my own.&lt;/p&gt;
&lt;h2&gt;What I did this year&lt;/h2&gt;
&lt;p&gt;My birthday fell on a Sunday! And the Saturday was a &lt;a href=&quot;https://girlfriendgirlfriend.com/about&quot;&gt;gfgf&lt;/a&gt; - so I took myself out to a good party, dressing up, looking hot, and knowing that I can show myself a good time. I went alone (didn&apos;t have the energy to make plans with friends) but immediately met 12 people i know (bangalore queer circles are MUCH bigger than they were in 2016, but they&apos;re still small enough! What can I say) and really just &lt;em&gt;danced&lt;/em&gt;. Bodies feel so good when they do what you want.&lt;/p&gt;
&lt;p&gt;I woke up on Sunday with a mild hangover and a craving for ramen, so I took myself to &lt;a href=&quot;https://maps.app.goo.gl/enovdBEq5DWTWcrg9&quot;&gt;Kuuraku&lt;/a&gt;, did some shopping after, and came back home just in time for some dearest friends to trickle into a small hang &lt;a href=&quot;https://www.shrutisunderraman.com/&quot;&gt;Shru&lt;/a&gt; had very kindly decided to make happen at my place. We hung out, then I changed into my pajamas and went to bed at 10pm. Fantastic day, couldn&apos;t have asked for more.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://tanvibhakta.in/_astro/img_20260913_131831680.B0kow4ue_Z1nKC36.webp&quot; alt=&quot;A bowl of kuuraku classic ramen, with a half eaten chicken skin yakitori and some plum sake in the background&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://tanvibhakta.in/_astro/img_20260913_152824343.DlvI_C2q_Z2ffFuO.webp&quot; alt=&quot;tanvi smiling brightly, the sun reflecting purple from her glasses. She is holding a bouquet of white and purple flowers.&quot; /&gt;&lt;/p&gt;
&lt;p&gt;How did this happen?&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;I am finally able to be alone and take joy in my own company&lt;/strong&gt;. I don&apos;t how to tell you how to make that happen. Maybe a decade of therapy? Somehow, when I am by myself now, I am a 29-year-old adult with a full and fascinating life, not a 5-year-old girl left to entertain herself for hours and days and weeks on end. &lt;strong&gt;I am not afraid to be by myself&lt;/strong&gt;. I can take care of myself not just physically but also spiritually, emotionally. For the first time in my life, over the last year I have repeatedly chosen spending time with myself over (excellent!) company, and had a good time.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;I have proof that people exist and they love me&lt;/strong&gt;. This isn&apos;t a birthday thing - it is a feeling that follows me every day, throughout the year. Birthdays in popular culture are made out to be this big production where the day is supposed to be all about you/a way for people to show you who they are to you. But that is fake! (and also capitalism). So I&apos;ve learnt to slowly let go of the expectation of a big thing, and look at what I &lt;em&gt;do&lt;/em&gt; have and revel in that. I also did get several messages wishing me and the reminder felt good :)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Knowing that I didn&apos;t have to stress about plans for the day but was still going to meet friends was incredibly freeing.&lt;/strong&gt; I am so, so grateful to Shru for making this happen. I was initially excited about throwing a big party, but I spent the whole week before (and the week after) my birthday dealing with a really intense conflict and I was not in the space to plan or engage with other people. But she created group, set up snacks and punch, and coordinated people. My home is always set up for having guests so nothing else needed to be done. Doing emotional and intellectual labour for me is always its own gift, and this one was so lovely!&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;I&apos;m looking forward to the next several decades of birthdays!&lt;/p&gt;
</content:encoded></item><item><title>What my hands learn every time I log in</title><link>https://tanvibhakta.in/blog/what-my-hands-learn-every-time-i-log-in/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/what-my-hands-learn-every-time-i-log-in/</guid><pubDate>Sat, 18 Jul 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;There is a certain magic to repetition.&lt;/p&gt;
&lt;p&gt;Long ago, in response to a story where someone was forced to change their password every three months, I read advice to make that password something that they wanted to focus on. Yes, we have touch ID, but I still type in my password 7 to 12 times a day. So this advice made sense to me. It comes from the same genre as, on the low-effort, low-effect part of the scale, “write out what you want and put it above your bed so it&apos;s the first thing you see when you wake up”, and high-effort, high-effectiveness being “Re-design your whole office so that walking through the corridors prepares your mind for the thing you need to spend the next 8 hours focusing on”[^1]&lt;/p&gt;
&lt;p&gt;What you pay attention to, grows.&lt;/p&gt;
&lt;p&gt;Your subconscious mind is paying attention to the things your hands are doing, even if you don&apos;t really notice. Four years ago, I changed the login password on all my laptops to &lt;code&gt;publish&lt;/code&gt;. Just the one word. I had been frustrated with wanting to write, but that frustration wasn’t helping me write. Or I was writing, but then I was letting it die in my drafts. I wanted to write and see it through!&lt;/p&gt;
&lt;p&gt;For the next year and a half, every few hours as I would type the word publish (whether I actively paid attention or not) my subconscious brain oriented towards finishing what I had started writing. It paid attention to the barriers stopping me from putting my work out there, and then worked on dismantling them. I didn’t have a blog on the website, so I &lt;a href=&quot;https://tanvibhakta.mataroa.blog/&quot;&gt;wrote on mataroa&lt;/a&gt;. I felt like I had nothing to say (about anything important), so I wrote &lt;a href=&quot;/weeknotes&quot;&gt;weeknotes&lt;/a&gt; (and discovered I was wrong). I attended a &lt;a href=&quot;https://www.evalapply.org/#writing-for-nerds&quot;&gt;writing workshop for nerds&lt;/a&gt;. I started Writer’s Club. I started &lt;a href=&quot;https://blr.indiewebclub.org/&quot;&gt;Indie Web Club&lt;/a&gt;. Here we are.&lt;/p&gt;
&lt;p&gt;My next password was to &lt;code&gt;do the boring thing&lt;/code&gt;[^2]. It’s no surprise that people don’t do hard things - but we must try, every so often, because only through discomfort can we grow. For me, it was hard to be bored. It was hard to pay attention to any one thing for more than half an hour. I would constantly get distracted, with the flavor of “let me check my messages”, but also, “here is a thought. Why don&apos;t I look it up immediately and fall down this rabbit hole where I&apos;m clicking a new link every 90 seconds instead of sitting with this hard problem that I haven&apos;t yet taught my brain how to understand?” And so I decided to remind myself, every login, every &lt;code&gt;sudo&lt;/code&gt; password, every time I have to unlock my keychain access, to Do The Boring Thing instead.&lt;/p&gt;
&lt;p&gt;In the time since this change, I am one year through working the hardest job I have ever worked, the longest hours I have ever worked, learning the most I have ever learnt in my career. I now have conclusive proof that I’m not lazy (take that, depression brain!). I &lt;em&gt;can&lt;/em&gt; do boring things. Along the way, I also learned to do the hard things. I don&apos;t have to turn the boring things interesting. I can just accept that they need to be done, and sit down and make it happen.&lt;/p&gt;
&lt;p&gt;It&apos;s time for a new laptop password. While I figure it out, I&apos;m trying to remind myself - there is a certain magic to repetition.&lt;/p&gt;
&lt;p&gt;[^1]: Cal Newport: &lt;a href=&quot;https://www.goodreads.com/book/show/25744928-deep-work&quot;&gt;Deep Work&lt;/a&gt;. See also: obvious.in office redesign principles (link to exact blog post currently lost to the void)&lt;/p&gt;
&lt;p&gt;[^2]: At the end of May 2025, a few friends caught up with &lt;a href=&quot;https://anexasajoop.in/&quot;&gt;Pooja Saxena&lt;/a&gt; who was in town for coffee. We were shooting the shit and the conversation turned to how the work just needs to be done. Pooja talked about how her and &lt;a href=&quot;https://prtksxna.com/&quot;&gt;Prateek&lt;/a&gt; kept each other work accountable via gentle ribbing, and also how when &lt;a href=&quot;https://github.com/sanjayaksaxena&quot;&gt;her dad&lt;/a&gt; (who is now in his sixties!) complains that the work he has to do to get a &lt;a href=&quot;https://github.com/winkjs/wink-nlp&quot;&gt;passion project&lt;/a&gt; done is hard, she doesn’t have patience for it because he just has to sit down and do it - and she tells him so. This conversation left a deep impression on me. She is right.&lt;/p&gt;
</content:encoded></item><item><title>Giving baby tanvi what she wants</title><link>https://tanvibhakta.in/blog/giving-baby-tanvi-what-she-wants/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/giving-baby-tanvi-what-she-wants/</guid><pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;I’ve been reading since I was four years old because my mother only had so many hours in the day to tell me stories. Her and dad had full time jobs, and I was an intelligent kid - that meant I had to be kept occupied. I was also a lonely kid; so the stories became a lifeline.&lt;/p&gt;
&lt;p&gt;Growing children recreate what they know. When my brother was born (and I was handed babysitting duty), I spent so much time making up stories based on characters we saw around us - ben ten, the monkeys on the banana trees, the youtubers of de jure. I wrote the first seven chapters of a fantasy novel set in a high school in America featuring prominently: eggs that cracked to reveal descendants [of whom??] from Atlantis, some standard misunderstood kid bullied situation, and my current crush at the time (a boy I had spent about ten minutes with who had light brown eyes).&lt;/p&gt;
&lt;p&gt;My best friend and I learnt &lt;a href=&quot;https://couragetotremble.blog/2007/08/09/p-language/&quot;&gt;P language&lt;/a&gt;, wrote parodies of pop songs about loving pizza, and invented new melodies inspired by evanescence. When I was younger, creation was just something I did with all the energy that was generated from consumption and a boredom and a long commute.&lt;/p&gt;
&lt;p&gt;Then, I discovered that an internet existed beyond Club Penguin and &lt;a href=&quot;https://4share.com&quot;&gt;4share.com&lt;/a&gt; (a website to share pdfs of novels). My most vivid experience of consuming blogs was &lt;a href=&quot;https://remittancegirl.com&quot;&gt;remittancegirl.com&lt;/a&gt; (NSFW) - a blog by an author containing &lt;s&gt;erotica&lt;/s&gt; erotic literature that she treating with such care, intention, and quality that I thought... hmm. I would like to be the kind of person that produces work like this.&lt;/p&gt;
&lt;p&gt;Failures so far:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Several diaries (I tore them up. Now I regret it. There was a lot of angst that I thought was cringe, but now I just want to hug baby Tanvi and tell her that she is going to grow up and be so good)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.quora.com/profile/Tanvi-Bhakta/answers&quot;&gt;Quora answers&lt;/a&gt; - I think this counts because I used to go find questions that I wanted to write about and then answer them&lt;/li&gt;
&lt;li&gt;A wordpress blog - I couldn’t find the exact URL at the time of posting&lt;/li&gt;
&lt;li&gt;A weebly blog - lots of poetry, emotions, sexual/political themes. I hid it from people for a long time but now I think sex is a normal thing for 17-year-olds with inappropriate exposures to the internet to spend a long time thinking about. I might migrate my work from that blog to this one eventually. No, I&apos;m still not going to link to it though, but if you ask me I&apos;ll probably tell you!&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://medium.com/@tanvibhakta&quot;&gt;Medium&lt;/a&gt; - mostly for a specific project&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.instagram.com/tanvibhakta/&quot;&gt;Instagram&lt;/a&gt; - 2016 to 2019 I used it mostly for archival, and a brief fashion blog. I retired that when a) the mechanics changed to being doom scrolling, and b) I discovered twitter&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://twitter.com/tanvibhakta_&quot;&gt;Twitter&lt;/a&gt; - 2018 to 2020. Arguably the most famous I have been on the Internet. I want to an Anthropic event in 2025 (5 years after activity!) and someone asked me if I was &lt;em&gt;tanvi.css&lt;/em&gt;. Yes! But also no. I started it because I was doing a lot of networking but I ended up writing about my health, and my personal politics. This changed the kinds of conversations I ended up having with new people, and it felt stifling, so I just quit it one day and didn&apos;t look back.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Over the last two years, I have gotten into the habit of &lt;a href=&quot;/weeknotes&quot;&gt;writing up my week&lt;/a&gt;, and slowly built up the muscle of developing clarity of thought enough to &lt;a href=&quot;/blog&quot;&gt;Blog&lt;/a&gt;. But I want a real blog - a &lt;em&gt;web log&lt;/em&gt;, if you will - that allows me to come back to my own thoughts and track progress, draw conclusions, witness (my) history. I’ve &lt;a href=&quot;blog/website-2026&quot;&gt;written before&lt;/a&gt; about what I want from this blog, and that doesn’t change. But the personal-website side of the internet can be a lonely place, and if I am not fundamentally writing for myself, the writing will not happen.&lt;/p&gt;
&lt;p&gt;Big inspiration: &lt;a href=&quot;https://visakanv.com/#:~:text=I%E2%80%99m%20most%20active%20on%20Twitter%2E%20I%E2%80%99m%20known%20for%20my%20elaborate%2C%20interwoven%20threads&quot;&gt;visakan&lt;/a&gt;’s twitter, &lt;a href=&quot;https://itihas.review&quot;&gt;itihas.review&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I have very poor autobiographical memory, and I want this blog to be proof-of-life for all my major thoughts. I miss writing about low-stakes bullshit that is nonetheless important to my self-perception. Did the tree really fall in the forest if no one was there to hear it? My lonely 4-year-old self just wants to be heard to know that she exists, and everything that has followed has been in pursuit of making that happen.&lt;/p&gt;
</content:encoded></item><item><title>Notes on running</title><link>https://tanvibhakta.in/blog/notes-on-running/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/notes-on-running/</guid><pubDate>Sat, 16 May 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;14 days ago: I have been playing football regularly but I&apos;m pretty shit. A friend kindly offered to start from the basics with me and we did a bunch of passing drills... 40 minutes of passing drills, using only my right leg. Then we played a 50 minute game, and then we drank juice and went home. No cool down.&lt;/p&gt;
&lt;p&gt;12 days ago: I woke up bright and early and had movement coiled up in my body. In about 5 minutes after waking I had shoes on, and I was off. I thought I&apos;d take it casually. No looking at the time/pace/distance - just 140bpm runs. Guys. I did a 5k and I didn&apos;t even realise it. It was my first time running such a long distance! I also did a PR for my kilometer time. I was so incredibly excited. I did a decent warm up and a nice long cool down.&lt;/p&gt;
&lt;p&gt;12 days ago: The bloating.... The burps. I was so uncomfortable. Apparently this is a normal thing that happens with runners? A friend has a collection of photoes of runners who have shit themselves. But this was unexpected, and I was annoyed. Why was my body trying to sabotage me? Little did I know...&lt;/p&gt;
&lt;p&gt;10 days ago: I woke up bright and early and had movement coiled up in my body. In about 5 minutes after waking I had shoes on, and I was off. I stood in front of a house to do my stretches before I ran. I did one squat, and heard a snap from my thigh, and felt a sharp pain! I strained my right adductor. A combination of lots of movement, lack of sleep, an incline, and a squat too deep will do that. Who knew?&lt;/p&gt;
&lt;p&gt;Needless to say, I didn&apos;t play either of the two football games I had scheduled for that weekend. I didn&apos;t drive anywhere because the motion of it would stress the muscle. I couldn&apos;t &lt;a href=&quot;https://www.thepinknews.com/2018/11/27/bisexual-sitting-chairs-meme/&quot;&gt;sit bisexually&lt;/a&gt;. Do you know all the things you use your adductor for? I have slowly, and painfully, spent the last week finding out.&lt;/p&gt;
&lt;p&gt;Today morning: I ran again. I have travel coming up and I wanted to be sure I would be okay. I did a simple 1k, and walked another 1k. Long and shallow static stretches after. I&apos;ve kept up my creatine-and-protien-shake routine to help with recovery. I&apos;m a little sore as I write this but Inshallah I will be able to run by a lake and climb a mountain and play in snow without injuring myself further on my trip.&lt;/p&gt;
</content:encoded></item><item><title>TIL: Fixing it when my right arm gets useless</title><link>https://tanvibhakta.in/blog/til-fixing-it-when-my-right-arm-gets-useless/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/til-fixing-it-when-my-right-arm-gets-useless/</guid><pubDate>Sun, 26 Apr 2026 00:00:00 GMT</pubDate><content:encoded>&lt;h2&gt;Problem&lt;/h2&gt;
&lt;p&gt;Something happens to the muscles in my right shoulder, and my whole right arm becomes useless. The strength in it drops by at least a third - which means I can’t lift things, move things, etc. Typing takes a lot out of me and hurts. There’s follow-on effects to this that I won’t type out because it is depressing to dwell on it.&lt;/p&gt;
&lt;p&gt;This has been the last of the fibromyalgia symptoms that I’ve been dealing with for over a decade. We did nerve conduction tests and ruled out &lt;a href=&quot;https://en.wikipedia.org/wiki/Carpal_tunnel_syndrome&quot;&gt;Carpel Tunnel&lt;/a&gt;? The &lt;a href=&quot;https://deepaksharan.com/&quot;&gt;doctor&lt;/a&gt; at &lt;a href=&quot;https://www.recoup.health/&quot;&gt;recoup physiotherapy&lt;/a&gt; diagnosed me with &lt;a href=&quot;https://en.wikipedia.org/wiki/Thoracic_outlet_syndrome&quot;&gt;thoracic outlet syndrome&lt;/a&gt; but tests that &lt;a href=&quot;https://www.practo.com/bangalore/doctor/dr-manjesh-kashinath-orthopedic-surgeon&quot;&gt;Dr Manjesh&lt;/a&gt; showed that that was a scam. My current hypothesis is that something is going out of whack in the muscles in my [general shoulder area] that causes the whole kinetic chain of rest and motion in my arm to seize.&lt;/p&gt;
&lt;p&gt;When I get like this, there are several solutions I have been using. I’m listing them in order of effectiveness.&lt;/p&gt;
&lt;h3&gt;Solution 1&lt;/h3&gt;
&lt;p&gt;Someone with &lt;a href=&quot;https://tanvibhakta.in/weeknotes/week-of-jul-24th-2025md/#p-10&quot;&gt;magic fingers&lt;/a&gt; releases the tension built up in my neck, shoulders, and pecs. This gives me about 3 or so hours with mostly no symptoms back.&lt;/p&gt;
&lt;h3&gt;Solution 2&lt;/h3&gt;
&lt;p&gt;I exercise regularly and correctly, so the tension doesn’t build up in the first place. Not always possible to do because other fatigue factors are involved.&lt;/p&gt;
&lt;h3&gt;Solution 3&lt;/h3&gt;
&lt;p&gt;I use a tennis ball to press out knots in the general area of my shoulder/back. Since most of the tension is *above* my shoulder and in the sides of my neck, it is never possible to get this completely.&lt;/p&gt;
&lt;h3&gt;Solution 4&lt;/h3&gt;
&lt;p&gt;Targeted exercises for neck, back, shoulders. Targeted to *what*, though?&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://itihas.review/&quot;&gt;Sahiti&lt;/a&gt; was kind enough to spend about an hour helping me understand the motions and debug this with me.&lt;/p&gt;
&lt;h3&gt;Discovery 1: Tennis ball on the &lt;a href=&quot;https://en.wikipedia.org/wiki/Infraspinatus_muscle&quot;&gt;infraspinatus muscle&lt;/a&gt;&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;Find the long edge of your shoulder blade.&lt;/li&gt;
&lt;li&gt;On the inside, at the top next to the knobby bit is where the back attachment of the muscle is.&lt;/li&gt;
&lt;li&gt;Press on the back attachment and feel it in your pec. That’s how you know it is the right muscle.
Roll the tennis ball on the back attachment point to loosen the tension in the muscle as a whole.&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;Discovery 2: Standing Isometrics&lt;/h3&gt;
&lt;p&gt;Simple up-down isometrics, or IYTW isometrics against the wall several times, is enough to relax the set of muscles. Make sure your ribcage is flush against the wall. It shouldn’t flare. If it does, the exercise won’t be able to do its job.
When you do the isometric correctly, you’re forced to put down your shoulders and work your mid-back. This will untense your infraspinatus and move more effort into the mid back.&lt;/p&gt;
&lt;h3&gt;Discovery 3: Mountain pose grounding&lt;/h3&gt;
&lt;p&gt;Stand with both your feet on the ground. Be heavy, send all your energy into the ground. Feel like your feet are large boulders damaging the ground. The energy you are sending into the ground should also flow up through your torso and head (newton&apos;s third law, remember?). This is the way you should feel when you&apos;re doing tango, so you will likely make all the mistakes you make there, here as well. Harness the energy from the ground. Don&apos;t disconnect your top half from your bottom half. When you feel centered, and you can feel the energy thrumming in your back, lift your hands up through the sides with an exhale. You can keep them up or join them if you like (I join them). Continue to feel the energy from your weight on the ground traveling up your back. With every further exhale, elongate your spine so that you are reaching up. Your shoulders should be more relaxed now, but if they aren&apos;t - let them. Let your shoulders drop and feel the energy that was moving through you move around your sides instead.&lt;/p&gt;
&lt;h3&gt;Discovery 4: Prone Isometrics&lt;/h3&gt;
&lt;p&gt;I am unable to isolate and tense my midback. This probably that means my midback isn’t doing as much work as it should be.
Shoulders should be chopping, not wrists. Similarly, your midback should be moving your arms, not your shoulder alone. I tried and failed at using standing pull down rows to isolate the midback. IYTW Isometrics while in the lying down superman position does the trick.
Form notes: If you use your pecs to pull yourself up and back when you’re lifting yourself, your shoulders will find it easier to drop and your midback can take on more of the work.&lt;/p&gt;
&lt;p&gt;This set of exercises lends itself well to the longer term work of identifying and strengthening your mid back so that your infraspinatus doesn’t get overworked and lead to this situation in the first place.&lt;/p&gt;
</content:encoded></item><item><title>Reminders for Engineers Using LLMs</title><link>https://tanvibhakta.in/blog/reminders-for-engineers-using-llms/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/reminders-for-engineers-using-llms/</guid><pubDate>Sat, 11 Apr 2026 00:00:00 GMT</pubDate><content:encoded>&lt;h3&gt;Code is cheap&lt;/h3&gt;
&lt;p&gt;Maybe you should actually rewrite your whole stack if things start breaking. As long as you keep the harnesses for verification (e2e tests, parameterised tests) and the institutional knowledge, you’re fine.&lt;/p&gt;
&lt;h3&gt;Code reviews are a historic relic&lt;/h3&gt;
&lt;p&gt;You will have to figure out knowledge disbursal across your engineering org accordingly.&lt;/p&gt;
&lt;h3&gt;Using LLMs defaults you to the shallows&lt;/h3&gt;
&lt;p&gt;If you’re not careful, you will get caught up in the &lt;em&gt;how&lt;/em&gt; something gets built more than &lt;em&gt;what&lt;/em&gt; it is. Engineers already have a tendency to get lost in the details and be myopic. Make time to take a step back and engage with the tech (and product) as its own unit.&lt;/p&gt;
&lt;h3&gt;Stretch your mind&lt;/h3&gt;
&lt;p&gt;With llms you are creating so much more surface area. It becomes (even more) important to build your own systems to keep track of it all in your head[^1].&lt;/p&gt;
&lt;p&gt;[^1]: Or maybe this is a function of working at a high-intensity product org/start up? I feel the need to be able to talk eloquently about any of the twelve things I&apos;ve worked on this last week at a micro and macro level at a moment&apos;s notice. I am currently bad at this. Advice appreciated.&lt;/p&gt;
</content:encoded></item><item><title>Claude is bad for my hedonist brain</title><link>https://tanvibhakta.in/blog/claude-is-bad-for-my-hedonistic-brain/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/claude-is-bad-for-my-hedonistic-brain/</guid><pubDate>Sun, 05 Apr 2026 14:14:32 GMT</pubDate><content:encoded>&lt;p&gt;I’ve been using LLMs to write all my code since July 2025, but the first few weeks of March saw something strange happen. I woke up at about 4am, and I worked until at least 4pm - often 6 or 7pm - taking breaks only for meals (and perhaps a call or two). That’s a VERY large amount of work! And my brain is so tired at the end of it. But... I wanted this.&lt;/p&gt;
&lt;p&gt;Yes, I think the nature of software engineering has changed. If you’re managing LLMs who write code for you instead of doing it by hand, you’re playing a very different game with your brain chemistry. You’re no longer spending three hours getting lost in a problem statement and getting into flow; you’re managing 6 different contexts, switching between them in the downtime of the others. You become &lt;a href=&quot;https://www.paulgraham.com/makersschedule.html&quot;&gt;a manager instead of a creator&lt;/a&gt;. You become a slave to making sure the machine has enough to eat.&lt;/p&gt;
&lt;p&gt;After using Claude for 6 to 10 hours a day, my brain feels the same way it did in 2018 and 2019, when I was doing Not-Engineering for work, having to manage vendors and customers and research and strategy and following up with about 80 different people and staying on top of the trends so I can capitalise on them in some way. Each conversation checkpoint feels like reaching the end of a long comment thread on an entertaining AskReddit. Each time I come back to the same tab containing a slightly different context the brain signals travel through the same pathways that coming across a *different* short from *Gray’s Anatomy* does.&lt;/p&gt;
&lt;p&gt;After a long, hard, day at work, I come home exhausted. I cannot consider socialising with anyone because I am out of words. I take the time to wind down. I feed the cats, do my skin care, water the plants, prep food for tomorrow. I take the cats through playtime, shower, and head to bed... where my brain, after having been on the hamster wheel for ten hours and then having three hours of rest, is ready to go again. It’s horrible. My cortisol is elevated, my attention split, and I feel like I’m always dropping a ball I don’t yet know about.&lt;/p&gt;
&lt;p&gt;Three years ago, when I realised how much social media usage was eroding my &lt;a href=&quot;https://ankursethi.com/blog/social-media-is-a-threat-to-my-psychological-sovereignty/&quot;&gt;psychological sovereignty&lt;/a&gt;, I was able to simply quit. But I cannot simply quit my job - more importantly, I don’t want to. I enjoy writing code, but only in as much as it is useful to me to get things done. As someone with high agency, LLM-backed code generators have thrown open problem spaces - from things I theoretically know is possible but don’t have the time to do anything about, to things I can actually build, given two days and several million tokens.&lt;/p&gt;
&lt;p&gt;The cost of this is that I need to figure out how to protect my brain the way people with social media jobs need to learn to protect theirs.&lt;/p&gt;
</content:encoded></item><item><title>On the cost of viewing care as burden</title><link>https://tanvibhakta.in/blog/on-the-cost-of-viewing-care-as-burden/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/on-the-cost-of-viewing-care-as-burden/</guid><pubDate>Sat, 04 Apr 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;I made some sub-optimal choices over a weekend in mid March. I was talking to a friend through that weekend, to be an outside observer and keep me sane. The friend held me through it, but later - when it was all over - came over and told me they were mad at me. They used the words “I am mad at you and I am here to yell at you”, which is phrasing we’ve all used in the friend group to indicate tough love. They told me how concerned they were that even though I’m under stressors #1 and #2, I am in denial; how much I’m putting my body through, and how much it can take before I break down. Reader, I did not take it well. I heard what they had to say - they were right, and they were right to say it! - but my brain went to a bad place.&lt;/p&gt;
&lt;p&gt;My brain immediately believed that they were only telling me this because they were mad at me - not because of concern (which was true) but because when I fucked up my self-care they would have to come and pick up the pieces. My brain believed they were mad at me &lt;em&gt;because failing to take care of myself meant I was failing them&lt;/em&gt;, that I was adding to their workload and their burden.&lt;/p&gt;
&lt;p&gt;When children believe that they are responsible for themselves, they turn into well-adjusted individuals. But when they believe they &lt;em&gt;have to&lt;/em&gt; be responsible for themselves, they internalise that&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;They must manage all their problems by themselves &lt;em&gt;at any cost&lt;/em&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;When they inevitably don’t, they are a burden.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The cost of failure becomes exclusion from the group. Modern society systematically strips children from the ability to exercise their agency, making them uniquely reliant on the in-group, and so that cost, for children, becomes too high to fathom paying.&lt;/p&gt;
&lt;p&gt;I knew that was not what my friend was telling me. I knew (because it had been demonstrated) that my friend did not view me as a burden - did not even view caring for me as a burden. They told me that they’ve watched me show up for them and others time and again, and they &lt;em&gt;always&lt;/em&gt; were going to do the same for me. This time, I believed them. Unconditional love is a powerful thing.&lt;/p&gt;
</content:encoded></item><item><title>GloPoWriMo 2026</title><link>https://tanvibhakta.in/blog/glopowrimo-2026/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/glopowrimo-2026/</guid><pubDate>Tue, 31 Mar 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Another year, another &lt;a href=&quot;https://www.napowrimo.net/&quot;&gt;month of poetry&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://tanvibhakta.in/poetry/&quot;&gt;Writing last year&lt;/a&gt; was lots of effort in my head, and very little once I started. I finally proved to myself that I don’t need to be depressed to write poetry, and to write poetry I’m proud of. (Not that it’s any good! Just that I’m happy :)&lt;/p&gt;
&lt;p&gt;This year, I want to write entirely in Konkani. I miss the language, and I think I will never speak it as much as I want to (for lack of people to talk to in it) - but maybe knowing I can write in it (sans a culture of reading, writing, a grammar, or an alphabet) will ease the ache in my heart.&lt;/p&gt;
</content:encoded></item><item><title>Minting Tanvi Bucks</title><link>https://tanvibhakta.in/blog/minting-tanvi-bucks/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/minting-tanvi-bucks/</guid><pubDate>Sun, 29 Mar 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Follow &lt;a href=&quot;https://itihas.review/&quot;&gt;Sahiti&lt;/a&gt;’s excellent rant to me about &lt;a href=&quot;https://www.astralcodexten.com/i/166959786/part-four-how-alpha-works-part-2-incentives&quot;&gt;how incentives work&lt;/a&gt;, I have implemented an economy for myself.&lt;/p&gt;
&lt;h2&gt;The Store&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;500 Tanvi Bucks gets me an excellent massage from a friend.&lt;/li&gt;
&lt;li&gt;200 Tanvi Bucks gets me permission to use 2 hours in the morning to work on something I’m excited about (as opposed to doing work I get paid for)&lt;/li&gt;
&lt;li&gt;Essentially, I want to use Tanvi Bucks as tangible proof that yes, I &lt;em&gt;do&lt;/em&gt; indeed deserve it.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;The Bank&lt;/h2&gt;
&lt;p&gt;I earn 50 Tanvi Bucks every time I&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Sleep, allowing myself 8 hours (if it was likely that I was otherwise going to be up late)&lt;/li&gt;
&lt;li&gt;Work less than 8 hours a day (this is a problem, I’m generally at my desk for 9 to 12 and my body HATES it)&lt;/li&gt;
&lt;li&gt;Do some other unpleasant tasks - yesterday I earned 50 Tanvi Bucks for responding to ten people I’ve been putting off in the last week (there was some unnecessary shame involved that kept me from doing so immediately)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Smaller, more consistent ways to earn&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;50 Tanvi Bucks for a blog post&lt;/li&gt;
&lt;li&gt;20 Tanvi Bucks for a poetry submission to GloPoWriMo&lt;/li&gt;
&lt;li&gt;100 Tanvi Bucks for an SICP exercise&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I have some other big number Tanvi Bucks I’m set to earn when I finish larger projects. Admin-type tasks, and Important but not Urgent tasks are a good category to make Tanvi Bucks from!&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;Given a number, humans are wired to make it go up. I find that I often have the desire to do things, but I’m doing so much that by the end of the day intrinsic motivation alone is not enough to push me. Thus tasks that will generate Tanvi Bucks are by nature prioritised - and I will only assign Tanvi Bucks to tasks that will result in net gains for me but are mildly unpleasant.&lt;/p&gt;
&lt;h2&gt;Giving myself rewards just doesn’t work&lt;/h2&gt;
&lt;p&gt;In the past, I’ve tried other external motivators and they have failed in annoying ways.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;What kind of reward should I get for what kind of task? There is really nothing that consistently makes me happy that I don’t already have access to (I don&apos;t enjoy sweets, or chocolate).&lt;/li&gt;
&lt;li&gt;It’s a lot of cognitive effort to come up with a reward that feels satisfying enough to be a driver.&lt;/li&gt;
&lt;li&gt;Good rewards should improve the baseline when availed, but not hurt the baseline in its absence. Most times, when I don&apos;t get a reward, it feels like a punishment, which was horrible! And that made me much less likely to reach for the rewards mechanism in the first place.&lt;/li&gt;
&lt;li&gt;I have agency. If I didn’t do a thing I should have, and as a result I didn’t get a thing I wanted, I got mad! And hurt. And generally felt like a petulant eleven year old. Withholding rewards as punishment is a horrible way to parent (and reminded me too much of the bad sides of my parent), so I would soothe myself by simply accessing the reward. This further weakened the idea of the reward being a thing to aspire to - because I knew I could just get it anyway.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Using currency as a middle layer obfuscates most of these problems. Using the currency to weigh in when I&apos;m indecisive kills two bird with one stone. I hope the way I’ve structured my current economy sidesteps most (or all?) of these problems.&lt;/p&gt;
&lt;p&gt;If you want to, you can keep track of my economy here: &lt;a href=&quot;https://t.me/tanvibucks&quot;&gt;t.me/tanvibucks&lt;/a&gt;&lt;/p&gt;
</content:encoded></item><item><title>Liquid Food Log</title><link>https://tanvibhakta.in/blog/liquid-food-log/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/liquid-food-log/</guid><pubDate>Sat, 07 Mar 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;I had the two wisdom teeth on my right side taken out on Tuesday. There was a lot of unexpected suffering post-facto, which I’m attempting to document here to save someone else from this poor misery (or myself when I get the left side removed).&lt;/p&gt;
&lt;h2&gt;The food&lt;/h2&gt;
&lt;h3&gt;Day 0 - ie surgery day&lt;/h3&gt;
&lt;p&gt;Immediately after the removal I went and got ice cream. This was a problem because&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;I don’t consume dairy.&lt;/li&gt;
&lt;li&gt;I hate ice cream
But I went to Lick and had their mango sorbet and found immense relief. I also ordered two boxes of Noto dairy free ice cream (French vanilla, and double chocolate) for home.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Meal 1: Tomato Gazpacho. I owe it entirely to &lt;a href=&quot;https://ankursethi.com/&quot;&gt;Ankur&lt;/a&gt;, who, despite knowing each other for seven years and being best friends for three, cooked for me for the first time &lt;em&gt;ever&lt;/em&gt; in the making of this.&lt;/p&gt;
&lt;p&gt;Meal 2: milkshake - sweet melons, chikoos, oatmilk.&lt;/p&gt;
&lt;h3&gt;Day 2&lt;/h3&gt;
&lt;p&gt;Meal 1:
&lt;a href=&quot;https://vegrecipesofkarnataka.com/398-ragi-ambli-recipe-raagi-ambali-finger-millet-porridge.php&quot;&gt;Ragi ganji&lt;/a&gt;. (this recipe is a little complex, but for my version you just dissolve the ragi flour in a small amount of water and heat it in a large amount of water to create a slurry. Can be flavoured any way you like, similar to an oatmeal).&lt;/p&gt;
&lt;p&gt;Meal 2: Ragi ganji + bottle guard juice&lt;/p&gt;
&lt;p&gt;Meal 3: Cold miso soup&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;200ml water&lt;/li&gt;
&lt;li&gt;two eggs (slurry)&lt;/li&gt;
&lt;li&gt;1 tsp horse gram paste&lt;/li&gt;
&lt;li&gt;half tsp white miso (after adding ice)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Meal 4: A strawberry/banana/oat flour smoothie that &lt;a href=&quot;https://devanjal.mataroa.blog&quot;&gt;Devanjal&lt;/a&gt; brought me.&lt;/p&gt;
&lt;p&gt;Meal 5: The last bits of ragi ganji.&lt;/p&gt;
&lt;h3&gt;Day 3&lt;/h3&gt;
&lt;p&gt;I woke up in so much pain and needed to eat something immediately so I could take my meds.&lt;/p&gt;
&lt;p&gt;Meal 1: protein powder + water + ice&lt;/p&gt;
&lt;p&gt;Meal 2: banana + strawberry + oatmilk smoothie I made for myself inspired by my friend yesterday.&lt;/p&gt;
&lt;p&gt;Meal 3: this is where I hit the jackpot. Food is very important to me, and I vary flavours and textures very often in my everyday meals. Not being able to do so has been such a toll... until I made this soup. I’ve been craving &lt;em&gt;khao suey&lt;/em&gt;, so I made a broth flavoured like it.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;1tbsp mustard oil, heated&lt;/li&gt;
&lt;li&gt;1tsp home ground ginger paste I had in the freezer&lt;/li&gt;
&lt;li&gt;1 tsp fuckin onion flakes in had in the fridge&lt;/li&gt;
&lt;li&gt;100ml water&lt;/li&gt;
&lt;li&gt;several drops of Vietnamese fish oil&lt;/li&gt;
&lt;li&gt;1tbsp thai pork stock powder&lt;/li&gt;
&lt;li&gt;1 tsp haldi&lt;/li&gt;
&lt;li&gt;1/2 tsp pepper&lt;/li&gt;
&lt;li&gt;three shakes of Singapore-chinese mushroom stock powder&lt;/li&gt;
&lt;li&gt;frickin pav bhaji masala from Zoff (the secret ingredient!)&lt;/li&gt;
&lt;li&gt;a slurry of 2 eggs&lt;/li&gt;
&lt;li&gt;100ml of coconut milk&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;It look longer to write out the ingredients list than to make this meal! And it satisfied me so completely. I am so proud of this for myself - that when I have a craving I am able to make it happen for me. Past Tanvi did a good job - learning about flavour profiles, stocking pantry, learning to prioritise her feelings. Making this dish, to me, was a radical act of self-care.&lt;/p&gt;
&lt;p&gt;So of course I told three friends about it and invited them over for dinner and made real khao suey for them. Substitutions because vegetarian:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;vegetable stock powder instead of pork stock&lt;/li&gt;
&lt;li&gt;a little more mustard oil because no sub for the fish oil&lt;/li&gt;
&lt;li&gt;added frozen veggies&lt;/li&gt;
&lt;li&gt;rice noodles (I don’t stock wheat noodles any more)&lt;/li&gt;
&lt;li&gt;and I made toppings, frying onions and scallions&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;While they ate this dinner, I had
Meal 4: Half a banana smoothie that Devanjal got me as thanks for dinner&lt;/p&gt;
&lt;p&gt;After this meal and this group hang, I had a second wind - so I ended up working from 11pm to 4am, so I needed another snack (and another painkiller) at 1am.&lt;/p&gt;
&lt;p&gt;Meal 5: protein shake&lt;/p&gt;
&lt;h3&gt;Day 4&lt;/h3&gt;
&lt;p&gt;Also woke up in lots of pain. No new things today - repeats of ragi ganji, banana smoothie, etc. But there were other highlights.&lt;/p&gt;
&lt;p&gt;I ate a semi-smushed food! I ate some plain cold oatmeal with (you guessed it) oatmilk. I ate about 1/4th of a cup and mostly smushed it against my palate instead of chewing, but it provided a very necessary boost to my confidence.&lt;/p&gt;
&lt;h3&gt;Day 5 (the day I published this)&lt;/h3&gt;
&lt;p&gt;I visited the dentist again today and was encouraged gently to start introducing semi-solid foodsback into my diet. So I&apos;m thinking of doing this via idly dip, overcooked noodles, and more oatmeal. I think I&apos;m still going to avoid anything with hard bits or crunchy small pieces for another week or so. I drank my ragi ganji at room temp and not ice cold today. Baby steps.&lt;/p&gt;
&lt;h2&gt;The recovery&lt;/h2&gt;
&lt;p&gt;I was told I could start eating warm and semi-solid food post 24h after the procedure, but I was in too much pain and discomfort to be able to trust that. I’m glad I took it slow. I also iced the side of my face for about 36 hours post procedure, but I don’t know how much good it did me.&lt;/p&gt;
&lt;p&gt;Because I was entirely on liquid food, it was much easier to take care of my mouth and the sutures. I didn’t actually brush for the first three days - I could barely open my jaw enough - but I did use a medicated mouth wash on days one, three, and four which helped with making me feel better about infection possibility.&lt;/p&gt;
&lt;p&gt;Other things:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;I made sure to add huge blocks of ice to every drink.&lt;/li&gt;
&lt;li&gt;Nothing I ate had any kind of chilli/hot spice in them.&lt;/li&gt;
&lt;li&gt;Because I was eating such light food, I didn’t need the Pan D even though I was on very strong antibiotics.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Shout out once again to Past Tanvi who indulged in a then-partner’s desire to drink lots of ice water and bought &lt;a href=&quot;https://amzn.in/d/0dGuolgp&quot;&gt;this set&lt;/a&gt; of silicone trays for large ice cubes. I probably went through 36-40 cubes over the course of those four days. I also have never drank this much ice water in my life (I don’t like the cold! I carry a flask around everywhere! I have a &lt;em&gt;sensitive throat&lt;/em&gt;.)&lt;/p&gt;
&lt;p&gt;Before the procedure, I didn’t realise how much pain I would be in and therefore completely failed to plan for most of it. Luckily, Ankur and &lt;a href=&quot;https://himanshikalra.com/&quot;&gt;Calra&lt;/a&gt; really came through on Day 0 and work was flexible enough to allow for wfh and strange sleep schedules (one of the pain meds made me really drowsy). But this whole experience really made me realise how self-reliant I can be, and how good the systems I&apos;ve built for my life are. I&apos;ve always been fairly independent but I&apos;ve really craved nurturing and care when I&apos;m sick (like most people) - maybe next time I will feel better about taking care of myself. It&apos;s also worth thinking about which of these systems are a function of living at home and which of these I can replicate when I&apos;m travelling - for when I spend more time on the road and invariably catch a fever or two.&lt;/p&gt;
&lt;p&gt;I do have to get the left side set of teeth removed but I think it’s going to be a while before I schedule it...&lt;/p&gt;
</content:encoded></item><item><title>Review: Wuthering Heights</title><link>https://tanvibhakta.in/blog/review-wuthering-heights/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/review-wuthering-heights/</guid><pubDate>Sat, 14 Feb 2026 00:00:00 GMT</pubDate><content:encoded>&lt;ol&gt;
&lt;li&gt;It is a very 2026 movie&lt;/li&gt;
&lt;li&gt;Was it a bad movie? Yes. Did I enjoy myself? Yes.&lt;/li&gt;
&lt;li&gt;If you’ve read the book, you should simply forget that you’ve read the book and watch the movie. They closely follow similar plot points... but this could also be a movie adaptation of the princess bride.&lt;/li&gt;
&lt;li&gt;This movie is high production value bad Dramione fan fiction.&lt;/li&gt;
&lt;li&gt;This is exactly the kind of movie I expect people to make in 2026. This is the kind of movie people are going to take screengrabs of with captions on and tag themselves. This is the kind of movie that people are going to shorten into 180seconds to monetise their shitty YouTube-shorts-driven channels. This is the kind of movie that exists for people to write about, not for the art of it at all. This is fine.&lt;/li&gt;
&lt;li&gt;Give the person in charge of visuals a raise. Starting from the typeface (which is why I went to watch the movie in the first place), all the colors were so saturated. Rich. Evocative.&lt;/li&gt;
&lt;li&gt;Give the post-production person a paycut please. I don’t actually know if AI was used it to finishing of this movie, but it felt like it. Some backgrounds were too smooth, others didn’t make visual sense.&lt;/li&gt;
&lt;li&gt;It feels like Jacob Elordi has been typecast into playing only Nate-like roles. I’m not complaining, I think? Bad Boys are certain one of the boys of all time.&lt;/li&gt;
&lt;li&gt;I don’t get some of the plot. I don’t get it. Why do we start by showing the public hanging? Why do we focus on the dead man’s stiffy? Why is a lady shaking her bosom at him? Why do we never revisit any of this again? Why does Isabella allow herself to participate in the sexual depravity that Heathcliff puts her through (especially in the context of the times)?&lt;/li&gt;
&lt;li&gt;The violence feels gratuitous and uncouth. It’s just plain uncomfortable. The scene with the slaughter of the dead pig, all the jellied things. Ugh.&lt;/li&gt;
&lt;li&gt;The costumes are gorgeous. The set design is breath-taking. The moors are so lovely.&lt;/li&gt;
&lt;li&gt;Charli did a decent job with the soundtrack, but she could have put the effort in to a different album-long music video and it would have been less forgettable. This is classic Charli. Every time she flips, she immediately has to flop.&lt;/li&gt;
&lt;li&gt;At 150ish minutes of runtime, this is not something I will watch again. I don’t even expect to think about this movie again. But I suspect the visuals will come back to me when I least expect it.&lt;/li&gt;
&lt;li&gt;I gave up 20% of the way through reading this book when I was very young. It felt too tedious. Now I’m going to have to pick it up again, even if the book has nothing to do with the movie, just because of the visuals it has left me with.&lt;/li&gt;
&lt;li&gt;I can’t wait to read some obscure piece of literature 15 years from now that is going to reference wallpaper containing a birthmark from the left cheek.&lt;/li&gt;
&lt;/ol&gt;
</content:encoded></item><item><title>Lollapalooza 2026</title><link>https://tanvibhakta.in/blog/lollapalooza-2026/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/lollapalooza-2026/</guid><pubDate>Sun, 08 Feb 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;This is the 4th edition of &lt;a href=&quot;https://lollaindia.com/&quot;&gt;Lollapalooza India&lt;/a&gt;, and the 4th time I’m attending it.&lt;/p&gt;
&lt;p&gt;Things that will stay the same (aka festival advice from me who has attended ~7 music festivals now):&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Never take the metro. And DEFINITELY never take a cab/car. The local trains are brilliant, and you should take it (first class is your friend, as is going early when the crowds are less).&lt;/li&gt;
&lt;li&gt;If you’re doing the festival right, you will end up walking at least 20k steps. So it’s okay to walk from the local to the station, budget in two kilometres a piece for the entrance and the exit. Most people walking with you will also be going to the festival, so you will have fun!&lt;/li&gt;
&lt;li&gt;Stay hydrated. Take a clear bottle inside, or buy one for Rs. 100/- as a momento of the festival.&lt;/li&gt;
&lt;li&gt;The alcohol is NOT worth it. The long lines, it is dehydrating, and costs 1k for a decent cocktail? No thanks.&lt;/li&gt;
&lt;li&gt;Skipping the drinks also means you spend little to no time in the lines to the loo.&lt;/li&gt;
&lt;li&gt;Festivals, to me, are a place of music discovery. So I will always go at 2pm and I will always attend as many artists as possible. Open your mind, and you might be surprised.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;This edition was surprisingly rock/metal heavy - generally Lollapalooza tries to be a little more genre-inclusive. This edition also hit my personal preference of having acts that are fronted by women, so I had a particularly good time in terms of music discovery.&lt;/p&gt;
&lt;h2&gt;Day 1&lt;/h2&gt;
&lt;h3&gt;&lt;a href=&quot;https://www.zoya.life/&quot;&gt;Zoya&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;BRILLIANT indie alt pop vibes. &lt;a href=&quot;https://homegrown.co.in/homegrown-explore/dive-into-south-asian-artist-zoyas-genre-shifting-musical-journey&quot;&gt;Indian girls can make pop music&lt;/a&gt;!!!! The performance was a vibe and a half. Reminiscent of &lt;a href=&quot;https://rollingstoneindia.com/future-of-music-2024/kayan-future-of-music-2024/&quot;&gt;Kayan from a few years ago&lt;/a&gt;. Def listening to the &lt;a href=&quot;https://open.spotify.com/album/0sXTdsond4x6HOr6V8DQhf?si=cTt2mNE0SOC1Lf01BXPY9w&quot;&gt;new album&lt;/a&gt;.&lt;/p&gt;
&lt;h3&gt;&lt;a href=&quot;https://hotmilk.co.uk/pages/band&quot;&gt;Hot milk&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Very rock metal, we only heard the last ten minutes. Fronted by a woman, so they’re going on my playlist.&lt;/p&gt;
&lt;h3&gt;&lt;a href=&quot;https://www.mothermothersite.com/&quot;&gt;Mother mother&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Alt/rock/folk, TWO front women (and a frontman). We stayed for the first thirty minutes of their set, which included &lt;a href=&quot;https://open.spotify.com/track/4IA6pgGRmqfxWGAfyZ8cgR?si=734a0b967e134273&quot;&gt;a song&lt;/a&gt; that started with the lyrics&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;I wear women&apos;s underwear&lt;br /&gt;
And then I go to strike a pose in my full-length mirror&lt;br /&gt;
I cross my legs just like a queer&lt;br /&gt;
But my libido is strong when a lady is near, yeah&lt;br /&gt;
What defines a straight man&apos;s straight?&lt;br /&gt;
Is it the boxer in the brief or a twelve-ounce steak? Nah&lt;br /&gt;
I&apos;ll tell you what a woman loves most&lt;br /&gt;
It&apos;s a man you can slap but can also stroke&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Um, HELL yes. They’ve been around for twenty years (!) but seem to be especially popular gen-z music (whatever that means). They’re a little too folksy to be on my regular rotation but I can see that I’m going to have to pick out a few pieces to go in there. Their energy on stage was chill and fun, perfect for the 4pm slot, getting us ready for the rest of the festival.&lt;/p&gt;
&lt;h3&gt;&lt;a href=&quot;https://fujiikaze.com/&quot;&gt;Fujii Kaze&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;From the homework I’d done for the festival, I was looking forward to his performance. His album felt like pop from the mid 2015s, which is not far enough away from us that we’re nostalgic for it (yet). He is a very good looking man, but his movements felt like he was still learning them, like they didn&apos;t come naturally. I was expecting him to come with backup dancers like &lt;a href=&quot;https://www.youtube.com/shorts/XCETZKCrSlY&quot;&gt;Eric Nam from Lolla India 2024&lt;/a&gt; - it definitely felt like the performance was choreographed that way. Nonetheless, he put on such a show! The crowd contained a large number of people from the Japanese diaspora living in India, which was really nice to see. It looked like they had mostly come to see him!&lt;/p&gt;
&lt;p&gt;Men from SEA are often mocked (especially in India and other locales with a prominent chauvinistic masculinity) for being effeminate. Fujii took that one step further - the man is NOT afraid of his hip gyrations. This was not appreciated by the set of young 20somethings next to me - they said some pretty homophobic stuff and walked away. I’m glad they told on themselves - more space for me! This didn’t seem matter to the crowd at large, they were charmed and here to enjoy themselves. The crowd for Fujii Kaze was already pretty strong - maybe 30k? I was suprised by how much of the crowd sang along with every word of his set!&lt;/p&gt;
&lt;h3&gt;Ken Carson, Destroy Lonely, Homixide Gang&lt;/h3&gt;
&lt;p&gt;They were opening for Playboi Carti on the main stage because they&apos;re his labelmates. We didn’t listen to them, because a friend and I had decided to stay on to try and get to the front for the next act, but in the silence between sets we heard some incredible energy and the kind of hip hop I would have enjoyed live. I probably won’t listen to them again but I would like to catch them live.&lt;/p&gt;
&lt;h3&gt;&lt;a href=&quot;https://www.yungbludofficial.com/&quot;&gt;Yungblud&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;I decided to prioritise his set purely on the basis of watching his &lt;a href=&quot;https://www.youtube.com/watch?v=oJZmO5mByVY&quot;&gt;grammy nominated performance of Changes&lt;/a&gt; where he played with &lt;a href=&quot;https://en.wikipedia.org/wiki/Nuno_Bettencourt#Legacy&quot;&gt;Nuno Bettencourt&lt;/a&gt; of &lt;a href=&quot;https://en.wikipedia.org/wiki/Extreme_(band)&quot;&gt;Extreme&lt;/a&gt; fame.&lt;/p&gt;
&lt;p&gt;Extreme headlined for &lt;a href=&quot;https://bandland.in/&quot;&gt;Bandland&lt;/a&gt; in Nov 2024, and is quite possibly the best live performance I have ever seen. They are a very classic rock band. I spent ages 15 to 19 listening to classic rock (I was in my pick-me era). I have since learnt about my own tastes, and don’t waste my time listening to rock, but I &lt;em&gt;do&lt;/em&gt; catch it live where I can. There is something about the magical combination of electric guitar, bass guitar, and a classic drum kit that can just take over my body and let me forget myself. &lt;em&gt;Extreme&lt;/em&gt; is not the classic rock that the boys I hoped would pick me embodied - they’re the kind of classic rock that pushed the boundaries of genre. They grew long hair, wore make up and sequins. They danced about on stage. They were &lt;em&gt;earnest&lt;/em&gt; about the music they wrote and created. They were (I am told) the &lt;em&gt;antidote&lt;/em&gt; to the rigid masculinity I’ve grown up with and associated with rock. Also, they’re hot, and they know it. The way rockstars play with their audience is a sight to behold. There is a banter in it that I can’t help but me charmed by, even as I know what is happening.&lt;/p&gt;
&lt;p&gt;Yungblud is such a rockstar, except he’s from MY generation. For two straight hours, the man’s energy propelled what grew to be 70,000 people (!!) to sing, scream, and sway with him. One man’s energy pushed us to forget everything except the body we inhabited, the people around us, and the music. Did Yungblud get his start as a cover artist? I’m not familiar as to how he can perform songs that don’t belong to him (what his belonging in music, really?) but his traditional setlist seems to contain a bunch of classic rock songs (fleabag, changes, I was made for loving you) that is designed to endear him to any crowd and showcase his chops as a pure performer. On social media, Yungblud feels authentic, charming, hard working, and embodies a lot of the values rockstars should[1].&lt;/p&gt;
&lt;p&gt;I knew from &lt;a href=&quot;https://open.spotify.com/artist/1McMsnEElThX1knmY4oliG?si=VV1lDjjlQ3yT6uXtEVTffQ&quot;&gt;Olivia Rodrigo&lt;/a&gt; and &lt;a href=&quot;https://open.spotify.com/artist/5wugb0kaq0J6nyQ5Xgd17i?si=64dKw1U2T4q2ikiCgVjplQ&quot;&gt;Aly &amp;amp; Aj&lt;/a&gt; that I could enjoy rock on its own merits. I know from Yungblud that there’s some ways to go before I will let rock die.&lt;/p&gt;
&lt;h2&gt;Day 2&lt;/h2&gt;
&lt;p&gt;Honestly Day 2 was fine. Yes I had fun, but after the high (and tiredness) of yungblud I think I just made it through the day and enjoyed myself nominally. I&apos;ll fill up this section if I ever feel the need to revisit this day.&lt;/p&gt;
&lt;p&gt;Zokova&lt;br /&gt;
Callum Scott&lt;br /&gt;
The burgers at that stall&lt;br /&gt;
Bloodywood&lt;br /&gt;
Kehlani&lt;br /&gt;
Linkin Park&lt;/p&gt;
&lt;h2&gt;Outside lollapalooza&lt;/h2&gt;
&lt;p&gt;Haleem and chai at Good Luck Cafe&lt;br /&gt;
Breakfast at the versova place&lt;br /&gt;
Breakfast at Bombay Journal&lt;br /&gt;
Dinner at Eddy’s
Breakfast at Cafe Irani Chai&lt;/p&gt;
&lt;h2&gt;Bombay through the ages&lt;/h2&gt;
&lt;p&gt;The very first time I came to Bombay in any meaningful way was also for the very first Lollapalooza. Since then, I’ve been here in Bombay seven or eight times, all with Anu. It was very hard doing this festival, and this city, without the person whose context I know it most in. I didn’t stay in Bandra this time (and I regretted it) - but in some ways, I was glad to be staying elsewhere because I wasn’t confronted with the memories that every single sidewalk held for me. I did finish the festival and enjoyed myself, and now I can go back to Bandra. Shout out to &lt;a href=&quot;https://www.shrutisunderraman.com/&quot;&gt;Shruti&lt;/a&gt;, the OG Bambai girlie whom I called at least forty times over the course of those four days, who made sure I didn’t have to think one whit about meals and transportation, and reminded me that Bombay doesn’t stay in the past. I grow and the city has space for me and all the rest of the life I have to live.&lt;/p&gt;
&lt;p&gt;[^1]: What those values are is a discussion for another time.&lt;/p&gt;
</content:encoded></item><item><title>Update on my llm usage patterns (Jan 2026)</title><link>https://tanvibhakta.in/blog/update-on-my-llm-usage-patterns-jan-2026/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/update-on-my-llm-usage-patterns-jan-2026/</guid><pubDate>Sat, 31 Jan 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Since &lt;a href=&quot;/blog/thoughts-on-ai-june-2025&quot;&gt;my last update&lt;/a&gt;, I’ve gone all-in on &lt;a href=&quot;https://code.claude.com/docs/en/common-workflows#run-parallel-claude-code-sessions-with-git-worktrees&quot;&gt;git worktrees&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I typically have between 2 to 4 tabs running, one for each worktree. Each tab will have between two to four “sections” running - one plain terminal for commands (I really dislike using &lt;a href=&quot;https://code.claude.com/docs/en/interactive-mode#quick-commands&quot;&gt;the ! thing&lt;/a&gt; in Claude because I can&apos;t seem to view the complete output), one with Claude for the primary issue of this worktree, perhaps one secondary Claude thing going with me trying to understand how some part of the codebase is implemented or doing a different exploration path of the solution myself. On the base worktree (which mostly points to &lt;code&gt;main&lt;/code&gt;) I&apos;ll sometimes have a fourth pane doing some larger exploration/some update to the dev experience/some update to the ci etc, but the moment it becomes a change I want to keep an issue gets created and I branch + worktree.&lt;/p&gt;
&lt;p&gt;I also have a few instances of Webstorm open, one for each worktree. &lt;a href=&quot;https://plugins.jetbrains.com/plugin/23813-git-worktree&quot;&gt;This (paid) plugin&lt;/a&gt; to add worktree switching support has been invaluable, but given how llms forefront worktree-based workflows I think this feature should go Webstorm’s base offering soon. I use the IDE to review changesets, make minor changes, and to store the scratch files... but that’s about it. I definitely don’t rely on it as much as I used to. Colleagues have gone entire days without needing to open an IDE. I’ve had to leave my beloved Github Desktop behind because while I love the intuitive and simple interface, there is simply no easy way to make it work with worktrees.&lt;/p&gt;
&lt;p&gt;Here’s a detailed breakdown of how I use worktrees to tackle issues of different sizes.&lt;/p&gt;
&lt;h2&gt;the small stuff&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;Spec out a small feature/bug on linear.&lt;/li&gt;
&lt;li&gt;Create a worktree using the linear branch name. Since we work with in a monorepo with microservices, we have a custom script that clones the existing directory, and then copies the &lt;code&gt;.env&lt;/code&gt; including a port offset, and the &lt;code&gt;.claude&lt;/code&gt; folder. We do fresh installs of &lt;code&gt;pnpm&lt;/code&gt; for every worktree but we use the same docker volumes and databases to reduce resources needed.&lt;/li&gt;
&lt;li&gt;The llm already has most of the context it needs from the issue, pulled out via the linear cli. It knows to use &lt;a href=&quot;https://code.claude.com/docs/en/sub-agents#built-in-subagents&quot;&gt;Explore&lt;/a&gt; to figure out the relevant parts of the codebase. We have solid &lt;code&gt;Claude.md&lt;/code&gt;s and &lt;code&gt;README&lt;/code&gt;s for our services that the llm knows to use to jump off of.&lt;/li&gt;
&lt;li&gt;The llm does the fix. I run claude in yolo mode, most permissions turned on via &lt;code&gt;.claude.settings.json&lt;/code&gt; . If it&apos;s a UI change, in my initial prompt I ask the llm to take a screenshot of the result via the playwright mcp, and I just check that result before the commit. If it&apos;s any kind of backend/api change, I get the llm to use a &lt;a href=&quot;https://github.com/obra/superpowers/blob/main/skills/test-driven-development/SKILL.md&quot;&gt;tdd skill&lt;/a&gt; during the implementation. Both of these things get defined in the initial prompt.&lt;/li&gt;
&lt;li&gt;&lt;s&gt;Review&lt;/s&gt;, manually tweak/confirm/test, commit + push + merge + deploy (I have &lt;a href=&quot;https://raw.githubusercontent.com/Alt-AI-Inc/Base/refs/heads/main/.claude/skills/end/SKILL.md?token=GHSAT0AAAAAAC7VOCHCZ3XH36MD4Q6SVOE22L5532A&quot;&gt;a skill called &lt;code&gt;/end&lt;/code&gt;&lt;/a&gt; that does the last bits automatically and just alerts me if something reds on the ci)&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;Scope for improvement&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;At work on a different project we&apos;re using &lt;a href=&quot;https://github.com/steveyegge/beads&quot;&gt;beads&lt;/a&gt;, which is a cli-first task management tool that claude can use instead of its internal todo list. You can essentially run an agent to automatically pick up and do a lot of the manual stuff I&apos;m doing around deciding to work on a task, creating a worktree etc. I don’t know if I &lt;em&gt;want&lt;/em&gt; to go &lt;em&gt;even faster&lt;/em&gt;, but it’s certainly an option!&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;the big stuff&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;Lay out the barebones with claude. I&apos;m NOT using planning mode. I want it to go explore the codebase, find relevant files etc, and present a high level overview of what we&apos;re doing. I might even ask it to explain the problem statement to me/reframe the problem statement so that I can make sure all the initial constraints I have are represented.&lt;/li&gt;
&lt;li&gt;Then I&apos;ll tweak the problem statement/the general problem area, sometimes with 2 or 3 back-and-forths until I&apos;m happy with the way the question/task is framed at all[^1].&lt;/li&gt;
&lt;li&gt;THEN I open a new claude code thread, paste in the refined high level problem statement, and use a &lt;a href=&quot;https://github.com/obra/superpowers/blob/main/skills/brainstorming/SKILL.md&quot;&gt;brainstorm&lt;/a&gt; skill I have to actually think through all of the large implementation details. This is where most of my time goes. I can spend 4 to 6 hours on this step. This brainstorm skill essentially does the work of defining the specifics of the implementation, covering all primary surface areas. The skill tries to be comprehensive and is reasonable, but it heavily relies on the prompt to understand where to go deep. I will sometimes introduce new considerations for it to &quot;think&quot; about, or look up the stuff it&apos;s suggesting myself. This step also spawns a few claude on the web sessions in learning mode where I&apos;m trying to conceptually understand something, and some tabs where I’m reading the docs myself to confirm the statements Claude is making.&lt;/li&gt;
&lt;li&gt;The brainstorm skill works by proposing a series of decisions, thinking through a few possible paths, and recording that path. When I&apos;m happy with the majority of the decisions I’ve made, the LLM writes it all out in a document in &lt;code&gt;docs/plan/epic-name/YYYY-MM-DD-feature-name-design-document&lt;/code&gt;. This is the design doc.&lt;/li&gt;
&lt;li&gt;If the task is gnarly enough, I get a &lt;a href=&quot;https://github.com/obra/superpowers/blob/main/skills/writing-plans/SKILL.md&quot;&gt;writing plans&lt;/a&gt; skill to actually do the work of figuring out the implementation. The skill breaks down the proposed solution into very granular phases, and tasks. It finds the relevant files to change, the line numbers to change, the types to add, the functions to call. I only cursorily review the output of this skill/subagent. This work gets written into a much large implementation details document.&lt;/li&gt;
&lt;li&gt;Sometimes I&apos;ll get a &lt;a href=&quot;https://github.com/obra/superpowers/blob/main/skills/requesting-code-review/code-reviewer.md&quot;&gt;code review agent&lt;/a&gt; to go over the plan. Depending on how complex the task is, I might ask it to go over the design decision document before accepting it, or the implementation details document. With the latter, the skill almost always catch functions that have been hallucinated, some esoteric but obvious bug in the implementation details, some security concern etc. The relevant file is updated with these observations.&lt;/li&gt;
&lt;li&gt;Then I&apos;ll kill the last claude thread and open a new thread, just telling the llm to implement the file we’ve created using the &lt;a href=&quot;https://raw.githubusercontent.com/Alt-AI-Inc/Base/refs/heads/main/.claude/agents/senior-software-engineer.md?token=GHSAT0AAAAAAC7VOCHCEEWVQHL7D5QDYE742L56SVQ&quot;&gt;senior software engineer subagent&lt;/a&gt; with the tdd skill, spawning them to run in parallel. Then the LLM does its thing! This can take a while. Sometimes it will ping me 1/3rd of the way through to do a manual check of how things are going, but mostly I just let it runbe. The subagents know to commit after they finishes each task.&lt;/li&gt;
&lt;li&gt;When it&apos;s all done, I get the code review agent to also look at the implementation. It catches some more things, but they&apos;ll often be irrelevant or over-engineering.&lt;/li&gt;
&lt;li&gt;Then I&apos;ll do a manual test, and discover some extremely dumb thing missing - some flavour of the LLM implementing all the individual parts but forgetting to wire it together, etc, so I&apos;ll describe the issue and let the main agent fix it. I’ll do a few more manual tests for interactions with existing features that I didn’t talk about during the implementation. There will almost always be three obvious things to take care of. They will go in my scratch file or in new threads to fix immediately.&lt;/li&gt;
&lt;li&gt;Then I create the PR, wait for nobody to review my PR for two days, and merge it in!&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;Scope for improvement&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;I feel like I could be defining much better tests but I don&apos;t understand enough about how to do that yet, soon inshallah. I want to go through the &lt;a href=&quot;https://quii.gitbook.io/learn-go-with-tests&quot;&gt;learn tests with book&lt;/a&gt; but I’ve also been saying that for a bit now.&lt;/li&gt;
&lt;li&gt;Ideally I also define the e2e playwright test in the design doc stage so that the llm can do it itself, but right now we have auth that doesn’t work with worktrees that blocks it, and I know I&apos;ll need to build some scaffolding to handle it that I don&apos;t have the time for rn.&lt;/li&gt;
&lt;li&gt;Personally, I don&apos;t remember streets that I don&apos;t walk on - even if I&apos;ve (been) driven around them many times. Similarly, I&apos;ve noticed that details and context for the things I&apos;ve worked on using the llm flow slip away from me much faster week-on-week than it used to. There are several possible reasons - I am working on a much larger surface area, I’m simply working on more issues than I normally would, I&apos;m not having to figure out how the internals of something are to be able to use it - but it&apos;s still an issue. I&apos;m going to have to figure out how to do a big-picture review and small-picture review for myself - or figure out other ways to revisit small systems within my codebase.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;More general notes&lt;/h2&gt;
&lt;p&gt;I think &lt;a href=&quot;https://claude.com/docs/skills/overview&quot;&gt;skills&lt;/a&gt; were the game changer for me. They&apos;re essentially just markdown files with some frontmatter that contain all those &quot;You are a Senior Software Engineer&quot; prompts we used to keep around in the clipboard from a few months ago.&lt;/p&gt;
&lt;p&gt;I know a lot of people use &lt;a&gt;workflows&lt;/a&gt;, which are essentially more invokable versions of &lt;a&gt;my ten-step program&lt;/a&gt; from above. A workflow allows one to attach a type of subagent and a type of skill to every task, and is often used to set claude loose on the codebase overnight. At work a colleague uses them extensively but they&apos;re a little to out of control for me right now - or maybe I&apos;m not confident enough in my ability to spec a problem out well enough without oversight :)&lt;/p&gt;
&lt;h2&gt;More general improvements I want to make&lt;/h2&gt;
&lt;p&gt;I feel like I need to move to &lt;a href=&quot;https://ghostty.org/&quot;&gt;ghostty&lt;/a&gt; because I hear it&apos;s much better with the flicker issues than iterm is. But claude has gotten a lot better about that in the recent updates, from what I can see. I don’t know what iterm features I’m locked into (probably just keyboard shortcuts?) but I’m loathe to make too many changes to my workflows as is.&lt;/p&gt;
&lt;p&gt;I feel like I also need to move to Zed over Webstorm because, unfortunately, Webstorm just takes up too much RAM, and I can’t justify the cost (of losing memory). I really don’t want to do this though. Most other IDEs are horrible at &lt;a href=&quot;/blog/cursor-ux-issues#:~:text=Cursor%20is,symbol&quot;&gt;implementing JetBrains shortcuts&lt;/a&gt; and no, I don’t want to learn &lt;s&gt;VS Code&lt;/s&gt; &lt;s&gt;Sublime Text&lt;/s&gt; &lt;s&gt;TextMate&lt;/s&gt; keybindings. I also fundamentally have a problem with an editor that prioritises &lt;a href=&quot;/blog/cursor-ux-issues#:~:text=Footnotes&quot;&gt;putting me in an audio channel with every other current user of their product&lt;/a&gt; over letting me talk to the robot the editor was built around.&lt;/p&gt;
&lt;h2&gt;Addendum&lt;/h2&gt;
&lt;p&gt;I was recently made aware of &lt;a href=&quot;https://skills.sh/&quot;&gt;skills.sh&lt;/a&gt; which is a good place to start exploring available skills. Right now the leaderboards are full of the anthropic base skills + &lt;a href=&quot;https://github.com/obra/superpowers-marketplace&quot;&gt;obra&apos;s superpowers&lt;/a&gt;, but it will be good to keep an eye on this over the next few months.&lt;/p&gt;
&lt;p&gt;[^1]: I’m almost always working with a scratch file here, with a todo section and a list of problem spaces I am not yet ready to tackle but need to make a note of.&lt;/p&gt;
</content:encoded></item><item><title>What do you want from your website in ten years?</title><link>https://tanvibhakta.in/blog/website-2026/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/website-2026/</guid><pubDate>Sat, 03 Jan 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Henrik Henrission has this celebrated essay:
&lt;a href=&quot;https://www.henrikkarlsson.xyz/p/search-query&quot;&gt;A blog post is a very long and complex search query to find fascinating people and make them route interesting stuff to your inbox&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;(At the time of posting, this was one of an infinite number of tabs languishing half read in my phone browser. I’m not referring to the contents of the blog, but rather responding to the title alone).&lt;/p&gt;
&lt;p&gt;I&apos;ve been posting on this website for a year now, and I haven&apos;t actually had interesting things in my inbox as a result of my blogs. However, this HAS been my experience with social media. When I was active on twitter (2018-2020) I was &lt;em&gt;constantly&lt;/em&gt; getting DMs from people I didn’t know, with opinions or solutions for things I was curious about. I didn’t have to think about a posting schedule the way people do with SEO. I was just active, and consistent, and like magic I had an audience (and people in my inbox).&lt;/p&gt;
&lt;p&gt;There are many things wrong with twitter (when people would tell me they know me from twitter I would instinctively apologise!) but that feeling of access, and knowing someone, is undeniable. Community is very important to me, and I feel like I’ve been fairly successful in building it over the last few years - physically. When I got off twitter mid-pandemic, I lost that online community and without it, I feel a little incomplete.&lt;/p&gt;
&lt;p&gt;I was able to build community physically by being very intentional about it. In my home, I made spaces for people to sit, and to work from. I put out an ashtray even if I don’t smoke. I put guides for the shower and spare toothbrushes in the other room. I stock oatmilk I don’t drink. It’s easy to make a home inviting because I live there! But I don’t live on this blog - I live in my website framework and my writing app and my linear board. Other people visit this blog, sure, but they mostly see me in their emails or their rss feeds.&lt;/p&gt;
&lt;p&gt;I didn’t have to think about building community with twitter - I just posted! Consistency is easy when you’re &lt;a href=&quot;https://www.addictioncenter.com/behavioral-addictions/social-media-addiction/&quot;&gt;doing drugs&lt;/a&gt;. I was young, dumb, and inflammatory enough that I didn’t need to think about “best time to post” because the algorithm always worked for me. I suppose, when there’s no algorithm, I am going to have to be a lot more intentional about how I create online community.&lt;/p&gt;
&lt;h2&gt;To do with my website so it becomes more like home&lt;/h2&gt;
&lt;p&gt;(links go to my linear board)&lt;/p&gt;
&lt;p&gt;[ ] &lt;a href=&quot;https://linear.app/tanvibhakta-website/issue/TBW-62/better-typography&quot;&gt;better typography&lt;/a&gt; so people are invited to take a seat and read&lt;br /&gt;
[ ] a &lt;a href=&quot;https://linear.app/tanvibhakta-website/issue/TBW-10/create-dark-mode-for-the-landing-page&quot;&gt;dark mode&lt;/a&gt; so people can do this where they want&lt;br /&gt;
[ ] &lt;a href=&quot;https://linear.app/tanvibhakta-website/issue/TBW-63/to-begin-with-allow-simple-comments-on-your-blog&quot;&gt;comments&lt;/a&gt;&lt;br /&gt;
[ ] a &lt;a href=&quot;https://linear.app/tanvibhakta-website/issue/TBW-64/add-a-footer-to-your-website&quot;&gt;footer&lt;/a&gt;!&lt;br /&gt;
[ ] more experiments, and things that bring joy. &lt;a href=&quot;https://linear.app/tanvibhakta-website/issue/TBW-65/small-application-audio-on-my-website&quot;&gt;Audio on clicks&lt;/a&gt;, and cursor magic, and &lt;a href=&quot;https://linear.app/tanvibhakta-website/issue/TBW-66/maybe-some-dynamic-backgrounds&quot;&gt;sunset backgrounds&lt;/a&gt;.&lt;br /&gt;
[ ] respond to the emails people send to me (sorry &lt;a href=&quot;https://learningwala.in/&quot;&gt;Mihir&lt;/a&gt; and &lt;a href=&quot;https://blog.anikthink.com/&quot;&gt;Anik&lt;/a&gt; 😅)&lt;/p&gt;
&lt;p&gt;I can’t go back to using social media the way I used to because it is simply unhealthy for my brain. But I enjoyed so much about it - the joy of posting, not having to introduce myself, having an archive of silliness, and even the parasocial relationships.&lt;/p&gt;
&lt;p&gt;In ten years, I want people to open this website to develop a relationship with me.&lt;/p&gt;
</content:encoded></item><item><title>Define: partner</title><link>https://tanvibhakta.in/blog/define-partner/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/define-partner/</guid><pubDate>Fri, 02 Jan 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;I used to think that if someone was my partner (or I was someone&apos;s partner) there was an obligation. And that the difference between a friendship and a partnership, no matter how strong the friendship, is that with the partnership, I would be obligated to say yes. I would owe it to my partner to stretch myself to show up for them. And I think this definition worked for a little bit, but not for very long. It breaks down in all kinds of social constructs where your friends show up for you and your partners aren&apos;t in a place to do so.&lt;/p&gt;
&lt;p&gt;In a world where sex is not exclusive to partnership, and the distinction between romantic love and platonic love are just getting more blurry, I have never been able to — and I continue to not be able to — explain the difference between my closest friends and those I would call my partner.&lt;/p&gt;
&lt;p&gt;For a while I thought it was about role. My partner is someone I can refer to in society as a romantic partner, and since they fit the definition and they play all the parts of the role that society expects, they are my partner. It&apos;s a circular definition! I live with someone, and I have sex with them, and I claim to love them (in public), and I stretch myself for them, and I show up with them in social situations, and I introduce them to my family, and I lean against them when I&apos;m tired, and I expect them to skip work to take care of me when I&apos;m sick, and I do the same for them, and I let their fights affect me, and I let my fights affect them. Then we&apos;re partners, right?&lt;/p&gt;
&lt;p&gt;But I do most of these things with my friends anyway.&lt;/p&gt;
&lt;p&gt;A friend quoted an Urdu poem that I don’t remember the exact words to, but it went something like this:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Burn all the letters I’ve written to you, read and unread&lt;br /&gt;
For they contain the evidence of my love&lt;br /&gt;
You can extinguish that flame of letters with some water&lt;br /&gt;
But how can you extinguish the one in my heart?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;And my answer immediately was &lt;em&gt;indifference&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;The opposite of love is not hate, it is indifference. I didn&apos;t break up with my most recent partner because I hated him. I broke up with him because I felt like I stopped mattering to him.&lt;/p&gt;
&lt;p&gt;A partner, then, is someone that you &lt;strong&gt;cannot&lt;/strong&gt; be indifferent to, someone who sticks around, whose every action, opinion, and thought changes the way you exist. It affects your comport, and any decision you can make. That&apos;s a big responsibility. This definition feels lofty, but it makes sense as a descriptor to the relationships I’ve seen around me. It is something I can align with in my existing relationships. So I think for now, that&apos;s the definition I will go with.&lt;/p&gt;
&lt;p&gt;Obviously there are a lot of fallacies here. There&apos;s lots of people who I cannot be indifferent to. My boss, for example, or the Prime Minister. But maybe your partner is someone who you don&apos;t &lt;em&gt;let yourself&lt;/em&gt; be indifferent to, who you commit to hearing and supporting, or who you &lt;em&gt;commit&lt;/em&gt; to letting influence you. I think that&apos;s my definition for now.&lt;/p&gt;
</content:encoded></item><item><title>Deepawali 2025</title><link>https://tanvibhakta.in/blog/deepawali-2025/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/deepawali-2025/</guid><pubDate>Sat, 25 Oct 2025 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Deepawali has always been the biggest festival my family and I have celebrated growing up. Traditionally,&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;We would wake up early in the morning to get oiled rubbed into us, and then we&apos;d have to sit around trying not to get it everywhere. If I was in Sringeri for Deepawali, all the children would be oiled, then made to stand in a row at the bottom of the bathroom for Ammama to fling scalding water at us straight from the handi. In my mother&apos;s house, things were a little calmer - though the water still had to be very hot to get the oil off.&lt;/li&gt;
&lt;li&gt;Then we’d breakfast. There would be 5 types of poha (why? There just were). Daat phow, mirasangi phow, kalayl phow, Dheya phow, and god phow. That&apos;s thick poha, chilli poha, mixed-with-hand poha, curd poha, and a jaggery one to cap it off for you heathens.&lt;/li&gt;
&lt;li&gt;After that it gets a little fuzzy. When does the Pooja happen? Unclear, I didn’t care too much and our poojas growing up were small anyway.&lt;/li&gt;
&lt;li&gt;In Dubai, after breakfast we’d all get dressed up and give our neighbours little sweet boxes made with things that my mum and her friends made by hand! I loved all the attention I got for my dresses back then. When I moved into the apartment I live in now, 4 years ago, I did this too. My neighbours were very surprised, and didn’t seem to particularly welcome it. Cultural fossilisation in NRI families strikes again!&lt;/li&gt;
&lt;li&gt;There would be a giant lunch with many courses. The dishes wouldn’t be “special” though, just lots and healthy. The joy of the lunch would be all of us sitting down to eat together, something we rarely did as a family.&lt;/li&gt;
&lt;li&gt;There would be some kind of lights in the evening. No firecrackers at all, but always diyas and maybe another pooja/bhajan thing, more new clothes.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;I’m not religious, but festivals aren’t really about religion. I deeply believe in the need for people to have rituals around which they organise themselves and their loved ones together. I have family, and I also have chosen family.&lt;/p&gt;
&lt;p&gt;I want to focus on what rituals can mean for chosen family. Shru has always done Christmas, Akila has always done new years. We all use our birthdays as an excuse to bring people together. There are other yearly things - an annual event some friends do for fun, there’s pride and the festivities that surround it. We all show up to BQFF and Maya Bazaar. I started this post writing about wanting to create new rituals - and I still do! - but I realised that I have built so many for myself already. Now I just need to make them contagious, so that the friends I have in other cities will fly down for them some time :)
I do Lohri in Jan with and for Dee, and then Lolla in Bombay for the magic of festivals, and to honor joy in someone I love. I do Tuesday dinners for ranting and just to show up with friends. There is a book club. If you are reading this and you know I love you (and you should!) then please, know that you are invited to all of this and more.&lt;/p&gt;
&lt;p&gt;Deepawali is already pretty overloaded for most people with natal family obligations, but I hope that there is some space for it every year to do a shindig at mine.&lt;/p&gt;
&lt;p&gt;This year, I hosted lunch on Sunday, I didn’t really have a plan. But people showed up and we cooked. I put flowers in my house, lit candles, and felt loved.&lt;/p&gt;
&lt;p&gt;Then on Monday, I went home with trepidation but was pleasantly surprised. Things didn’t change too much - my father and brother continued to do their own thing. But I didn’t pressure myself to look good or cook, I just showed up. I am tired of being the good daughter, so I just sat with her while she did things, chattered a little bit, and brought out some carrom and Hanabi. When it was time to leave, there were fireworks on the street, so when mu asked me to stay until they passed I was so relaxed I actually agreed - on the condition that I could just do my own thing instead of interacting with anyone. I think it really helped that we were hosting a fifth person, a young cousin of mine convalescing from Dengue. He hung out with mum and brother playing yet another game of Hanabi while I sat in my corner playing video games.&lt;/p&gt;
&lt;p&gt;I can’t remember the last time I felt this relaxed and restored in my parents’ house. I let go of expectations of myself, and my parents let go of expectations of me too. Most importantly, I was able to just exist, doing my own thing. When I went back home I realised I’d actually enjoyed myself, in a quiet way - and I was looking forward to visiting my parents again soon.&lt;/p&gt;
</content:encoded></item><item><title>Conflict is a valuable relationship metric</title><link>https://tanvibhakta.in/blog/conflict-is-a-valuable-relationship-metric/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/conflict-is-a-valuable-relationship-metric/</guid><pubDate>Mon, 20 Oct 2025 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Some friends and I have a standing dinner hang every Tuesday evening, the location of which changes often. This week, we were supposed to meet at my place so I could get some long-standing chores out of the way. But some wires were crossed, two friends unwittingly staged a coup, and we had to meet at a different friend’s place. Ordinarily this would have been fine but having to go in to office + flare being generally bad this week meant that I was Not Happy with the turn of events. By the time I met my friends, it was clear that the whole location change was unnecessary. So what did I do? I had a tantrum.&lt;/p&gt;
&lt;p&gt;I was mad at my friends and I made it clear. They let me rant, validated that my irritation was warranted, acknowledged their respective parts in it, and fed me chai and biscuits to make me feel better. We ended up having a good evening regardless (and I secured an IOU 😏).&lt;/p&gt;
&lt;p&gt;Conflict is hard to deal with for most people, even those of us who have lots of practice at it. My personal metric for how reliable a relationship with someone is, is the way I have been able to resolve conflict with them. Conflicts are also inherently harder in groups because there are just more forces on the playing field. I’m not saying you should have a fight with someone to make your relationship stronger! I am saying that despite this particular group of friends being newer to me, I feel safer in my dynamic with the group than I did before my tantrum because I know there will always be &lt;em&gt;space&lt;/em&gt; for me.&lt;/p&gt;
</content:encoded></item><item><title>Rebase doesn&apos;t work for modern development teams</title><link>https://tanvibhakta.in/blog/rebase-doesnt-work-for-modern-development-teams/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/rebase-doesnt-work-for-modern-development-teams/</guid><pubDate>Sat, 18 Oct 2025 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Note: this is an opinionated post I wrote to try and understand my own thinking. I welcome opinions. My own as held here are subject to change.&lt;/p&gt;
&lt;p&gt;I don’t think teams should standardise on using git rebase. I think it’s a fantastic idea in theory, but most teams shouldn’t use it.&lt;/p&gt;
&lt;h3&gt;1. Rebase rewrites history.&lt;/h3&gt;
&lt;p&gt;This is fine if you’re merging PRs every 4 hours - but the moment you’re doing things that take even a day or two, you lose context and it’s hard to redo conflict. This gets much worse if you’re doing feature branches. Often, a few different developers are working on a feature branch and it’s one developer who is responsible for rebasing on main every few hours. But that developer might not always have context for the (large!) changes that are coming in. I don’t think developers should be given the power to lose history in a workflow that involves multiple people.&lt;/p&gt;
&lt;h3&gt;2. Rebase isn’t built for codegen practices.&lt;/h3&gt;
&lt;p&gt;Rebase optimises for code preservation - but with Claude code and the ilk, code generation is cheap. We should be optimising for reduced code management time instead.&lt;/p&gt;
&lt;h3&gt;3. You cannot confirm the atomicity of a commit.&lt;/h3&gt;
&lt;p&gt;Since a merge commit is a new commit, you can run precommit hooks and other validators and confirm that your merge works as intended. That’s not true for rebase (&lt;a&gt;precommit doesn’t run after every conflict fixed&lt;/a&gt;). It’s hard to fix conflicts correctly when you have 112 commits in one branch and 52 commits in the other and they touch a lot of the same services. (This commit flow seems to be normal for teams heavily relying on codegen practices!). What this means is that you’ll often have a commit at the end anyway that “fixes something” - yes you could track down what commit the issue originated from and do a &lt;a&gt;fixup&lt;/a&gt;, but how likely are you to to this at 8pm before your kid’s birthday party and you want to just get the PR in?&lt;/p&gt;
&lt;p&gt;I suspect rebase can work well if&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Developers work in different parts of the codebase with very little/no overlap&lt;/li&gt;
&lt;li&gt;Or if developers work in highly synchronous teams where people know what’s going on in all parts of the codebase&lt;/li&gt;
&lt;li&gt;Or if people are truly able to have very short-lived branches.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;Associated material&lt;/h2&gt;
&lt;p&gt;This is a bit of a hot take at work, and I want to know that I’m wrong. But I have spent at least 30 hours from Sept 1st to Oct 15th rebasing branches so I keenly feel the pain. What did I do wrong? I would like to change my mind. Here’s some material I have found that I need to respond to, to finish the mental model in my head.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Julia Evans on What can go wrong with &lt;a href=&quot;https://jvns.ca/blog/2023/11/06/rebasing-what-can-go-wrong-/&quot;&gt;Git Rebase&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;https://graphite.com/blog/why-ban-merge-commits&lt;/li&gt;
&lt;/ol&gt;
</content:encoded></item><item><title>OLE Automation Date</title><link>https://tanvibhakta.in/blog/ole-automation-date/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/ole-automation-date/</guid><pubDate>Mon, 22 Sep 2025 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;TIL about the &lt;code&gt;[Excel serial date number](https://support.microsoft.com/en-us/office/date-systems-in-excel-e7fe7167-48a9-4b96-bb53-5612a800b487)&lt;/code&gt; format.&lt;/p&gt;
&lt;p&gt;They’re also known as an &lt;code&gt;OLE Automation date&lt;/code&gt; - which, I assume, is how mechanical bulls track their calendars.&lt;/p&gt;
&lt;p&gt;The date is present in the format &lt;code&gt;45911.32361&lt;/code&gt; where&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;The integer part &lt;code&gt;45911&lt;/code&gt; represents the number of days since the epoch date.&lt;/li&gt;
&lt;li&gt;The decimal part &lt;code&gt;.32361&lt;/code&gt; represents the fraction of a day, ie the time of day&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;I had a zap populate a google sheet with “current time”. The formatting helper in Zapier shows the current time in a specific format but either&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;google sheets automatically converted it to the excel format (for some reason?!) when it saw the date from Zapier OR&lt;/li&gt;
&lt;li&gt;The web hook from squarespace is hooking into a db/csv/something that is optimised for excel, as opposed to coming from the form directly (which makes sense).&lt;/li&gt;
&lt;/ol&gt;
</content:encoded></item><item><title>LLMs create &quot;bad&quot; code</title><link>https://tanvibhakta.in/blog/llms-create-bad-code/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/llms-create-bad-code/</guid><pubDate>Tue, 09 Sep 2025 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;In the last two days, I’ve departed radically with my code gen usage. I’m no longer using it to augment my work, I’m orchestrating it, sitting back, and merely approving the results.&lt;/p&gt;
&lt;p&gt;It feels like crap. I’m not having fun anymore. I’m barely touching the code, for one, and I also know that the code I’m generating is so bad even &lt;em&gt;I&lt;/em&gt; don’t want to read it.&lt;/p&gt;
&lt;p&gt;That’s a pretty harsh statement, no? What determines how “good” or “bad” code is? What is bad about &lt;em&gt;this&lt;/em&gt; code, exactly?&lt;/p&gt;
&lt;p&gt;Maybe it’s the verbosity?&lt;/p&gt;
&lt;p&gt;I have a friend who is very verbose. Sometimes they explain in 5 sentences what most people can relate to in 5 words or less. They speak to &lt;em&gt;feel&lt;/em&gt; heard, rather than &lt;em&gt;be&lt;/em&gt; heard. It can get tiring, but at least they are speaking in a way that is beautiful for the ear to listen to. Llms? Not so much.&lt;/p&gt;
&lt;p&gt;Or maybe it’s just unfamiliarity?&lt;/p&gt;
&lt;p&gt;I think I find that the code is not &lt;em&gt;tasty&lt;/em&gt; because I haven’t spent the time seasoning it. Or maybe it &lt;em&gt;is&lt;/em&gt; true that the secret ingredient is the love of the creator.&lt;/p&gt;
&lt;p&gt;When I’m writing words, I read back what I’ve written and it feels like the words are a part of me. I don’t have exactly that relationship with code I’ve written from scratch, but I do identify with the thoughts in my brain that I had when writing it. With this codegen code, it’s blank. There’s a nothingness that cannot be related to.&lt;/p&gt;
&lt;p&gt;Much has been written about the voice of the creator that llms haven’t been able to replicate. I think what’s I’m missing here is the voice of the programmer whose code I am reviewing? When I look at their code, instead of thinking, “hmmm that’s an interesting way to solve the problem” I look at their scratch files and wonder what prompt they used to get all this boilerplate while my eyes glaze over looking at the code.&lt;/p&gt;
</content:encoded></item><item><title>You, bird</title><link>https://tanvibhakta.in/blog/you-bird/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/you-bird/</guid><pubDate>Sat, 06 Sep 2025 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;You, bird.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;You&lt;/em&gt;, bird.&lt;/p&gt;
&lt;p&gt;You, bird!!!&lt;/p&gt;
&lt;p&gt;Initially, this prompt confused me a little bit. I was even a little mad - these prompts are supposed to make you think, and be fit for a blog! But that’s not really true. Blogs don’t have to be deep. They don’t &lt;em&gt;have&lt;/em&gt; to be nuanced explorations of ideas.&lt;/p&gt;
&lt;p&gt;The big thing that brings people back to social media is the culture. It’s the memes, and that feeling of being part of an in-group. I’ve been writing on my website for close to a year now, and I reliably miss shitpost culture. I want to make jokes that only five people will understand but those five people will find it hilarious, and I want to do this &lt;em&gt;outside&lt;/em&gt; the groupchat. If I want to reduce people’s reliance on social media, then I need to support blogging culture becoming more accessible. And yes, more whimsical. More fun.&lt;/p&gt;
&lt;p&gt;I’ll confess - while at IndieWebClub we’ve been following along with the indie web carnival, I haven’t read the curation items yet. But this month I’m looking forward to it!&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;This post was written as part of &lt;a href=&quot;https://underline.center/t/indiewebclub-9-with-ankur-and-tanvi/520&quot;&gt;Indie Web Club #9&lt;/a&gt;&lt;/p&gt;
</content:encoded></item><item><title>Issues with the cursor UX</title><link>https://tanvibhakta.in/blog/cursor-ux-issues/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/cursor-ux-issues/</guid><pubDate>Thu, 07 Aug 2025 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;I used cursor for a month for code work, using the claude.com interface only for one-off conversations or larger planning work.&lt;/p&gt;
&lt;p&gt;I have several nits to pick with the cursor team.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;I’d like for the button to “show background AI agents” to pop up within the chat instead of being a separate button at the top. When I’m working with a wide screen I’d like to take advantage of the extra real estate.&lt;/li&gt;
&lt;li&gt;This is especially true when the background AI agent is setting up a package or preparing an environment using the terminal. I hunted quite a bit and couldn’t find the terminal the background agent had opened and left something running that I wanted to kill. I finally had to restart the editor to do the job - not a good look!&lt;/li&gt;
&lt;li&gt;They have inline code recommendations. The recommendations are almost never what I want to actually do with the code, and they disable the existing codesense autocomplete. AND they use up tokens? Dislike.&lt;/li&gt;
&lt;li&gt;Cursor is forked from VS Code, but they offer the ability to use JetBrains keybindings. Unfortunately the implementation of this is very janky - cmd + click, for example, adds a new cursor instead of jumping to the symbol.&lt;/li&gt;
&lt;li&gt;Their implementation for shortcuts for their native features also seems to be quite buggy. The icon alt text keeps changing its mind on what the shortcut to open the AI pane is. It alternates between offering me two options (shift + esc and opt + cmd + B), neither of which work.&lt;/li&gt;
&lt;li&gt;The shortcuts for “review next file” don’t work, and the one for “Accept this chunk” works so poorly.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;I hated every minute I used this product - but I used it anyway because I felt like I needed to give it enough time to see if the paradigm made sense to me. I tried out Zed and couldn’t figure out the UI at all[^1], and the add ons for jetbrains and vs code felt too hamstrung. Maybe I should have given Windsurf another shot? I last checked it out six to eight months ago. But my favourite editor will always be JetBrains (you cannot erase seven years of muscle memory), and therefore I have now jumped onto the Claude Code bandwagon.&lt;/p&gt;
&lt;p&gt;[^1]: why am I automatically added to a voice chat with everyone else who is using Zed??? WHAT. Also how do you open the AI tab. I simply could not find the button, and I clicked every single one there was.&lt;/p&gt;
</content:encoded></item><item><title>Review: The Book of Queer Saints</title><link>https://tanvibhakta.in/blog/review-the-book-of-queer-saints/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/review-the-book-of-queer-saints/</guid><pubDate>Wed, 23 Jul 2025 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;I read this book as part of &lt;a href=&quot;https://coolingpearls.wordpress.com/category/book-club-queer-reads-bangalore/&quot;&gt;Queer Read Bangalore&lt;/a&gt;’s read along for July.
I will preface by saying that I consume very little horror in any media.&lt;/p&gt;
&lt;p&gt;Overall 3/5 stars. Lots of stories in this anthology didn’t feel like horror, or didn’t feel like complete stories; but I appreciate this book for existing and these stories for introducing me to fun and new ideas!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;We frolic within the leviathan’s heart: 3/5&lt;/strong&gt;
I enjoyed the sense of longing, and the broadwalk scenes were vivid and made for a good reading experience. I wish the story had explored the actual leviathan experience more. This wish for something &lt;em&gt;just a little more&lt;/em&gt; set the tone for the rest of the stories.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The Neon Holocaust: 1/5&lt;/strong&gt;
This immediately reminded me of &lt;a href=&quot;https://www.goodreads.com/book/show/43317482-in-the-dream-house&quot;&gt;Carmen Maria Machado’s In the Dream House&lt;/a&gt;. Since &lt;a href=&quot;https://www.goodreads.com/review/show/7433599438&quot;&gt;I really disliked that book&lt;/a&gt;, it’s no surprise that I disliked this story too.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Morta: 3/5&lt;/strong&gt;
This story was about baby gay yearning. Been there, done that. The horror here was about the fear of hurting someone you love. Mild sff angle, reminded me of &lt;a href=&quot;https://www.goodreads.com/book/show/56179360-light-from-uncommon-stars&quot;&gt;Ryka Aoki’s Light of Uncommon Stars&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Eclipse, or the courtship of the sun and the moon: 2/5&lt;/strong&gt;
I really liked this story!! Beautiful setting, imagery, the writing was so compelling and drew me in... and then the ending completely ruined it. If it was supposed to be a metaphor, I wish the writer had engaged with it or explored the consequences, even continuing the metaphor. As it stands, the ending feels like a copout, or a hack to meet a deadline.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Stage five clinger: 4/5&lt;/strong&gt;
This story explores the feelings of baby girl gay, and how sometimes queer elders (as in not just age) can be exploitative? There is a scene of exquisite imagery near the end. Gorgeous. Knocking one star off because it was more body horror than horror.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The love that whirls: 2/5&lt;/strong&gt;
Another story that missed the mark. There was a lot of prose and a lot of emotion, but I’m truly not sure what the story was meant to &lt;em&gt;say&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Crumbs: 5/5&lt;/strong&gt;
This story was the highlight of the collection for me. Truly atrocious, the writer achieved this effect through a masterful layering of at least 5 different types of horror. Every paragraph, every beat designed to evoke some fresh disgust in the reader. I am glad I read this collection for this story alone.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Three for a funeral: 3/5&lt;/strong&gt;
The placement of this light, familiar YA story after the series of intense ones before it was a good call.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The last disgrace: 4/5&lt;/strong&gt;
Every good werewolf story has to be followed by a good vampire story. This one was long, but vivid and beautiful. I think the ending of this one was also a little hamstrung, but the writer played out most of the beats they started with so I feel okay about it.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The city behind the city: 3/5&lt;/strong&gt;
Another long one. I loved the surreal aspects to the story, but the MC himself seemed a little unrelatable.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Therianthrope: 4/5&lt;/strong&gt;
Another lovely short that made me feel things. This one spoke in particular to the apprehensions bi/pan women have about approaching other women, a fear I identify with quite heavily.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Macrame Flames: 3/5&lt;/strong&gt;
I’m not sure if it’s the prose, the setting, or the Satan, but this one felt quite reminiscent of &lt;a href=&quot;https://www.goodreads.com/book/show/12067.Good_Omens&quot;&gt;Good Omens&lt;/a&gt;. Once again, it’s the last paragraph that I’m knocking a second star off for. I understand the hesitation to bury our gays - but sometimes, the dead should stay dead.&lt;/p&gt;
&lt;p&gt;I didn’t read &lt;strong&gt;Heliogabalus Fabulous&lt;/strong&gt; because I was out of time and it felt more dreamy prose.&lt;/p&gt;
&lt;p&gt;Throughout this collection, we see a few themes emerge: The horrific experience of being queer begins with abandonment. Every single one of the events in these stories would have gone differently if the protagonists had community - a parent wanting to know when they’ll be home, a friend to look out for them, a society that notices their absence.&lt;/p&gt;
&lt;p&gt;I wouldn’t recommend this book to a horror fan, but I would recommend this book to someone who was looking to explore the inherent horror of being queer.&lt;/p&gt;
</content:encoded></item><item><title>Stop snorting narrative</title><link>https://tanvibhakta.in/blog/stop-snorting-narrative/</link><guid isPermaLink="true">https://tanvibhakta.in/blog/stop-snorting-narrative/</guid><pubDate>Fri, 11 Jul 2025 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;I’ve been addicted to keeping my brain occupied for as long as I can remember. From grades 2 to 5 I would come home and immediately call my friends[^1], just to not &lt;em&gt;feel alone&lt;/em&gt;, and I’d chatter with them for hours on end. By Grade 6, I knew my way around the pirate sites well enough that I could download all the books my heart desired. I used these books as a way to escape the dreary reality of childhood, a habit that served me well in my hostel years (no internet, but I &lt;em&gt;lived&lt;/em&gt; next to the library? Yes please!).&lt;/p&gt;
&lt;p&gt;When I went to college, I had the internet again. It was scary how easy it was to substitute reading for social media - especially something like Reddit, which is mostly text based and allows for rabbit holes that felt exactly like reading a less rigorous &lt;a href=&quot;https://www.goodreads.com/author/list/7956.Mary_Roach&quot;&gt;Mary Roach book&lt;/a&gt;. I stopped reading long form almost entirely in those 4 years (except for around the exams, where I would restrict my internet usage and immediately fall into a Very Large Novel series. Thanks, &lt;a href=&quot;https://parahumans.wordpress.com/&quot;&gt;Worm&lt;/a&gt;!).&lt;/p&gt;
&lt;p&gt;Like most of us, I’ve been struggling with some form of dependence on social media for the better part of a decade. But when I make the effort to remove myself from them, my life doesn’t get better. It isn’t the social media that is the problem, &lt;em&gt;it is my desire to consume narrative&lt;/em&gt;. Stories are fundamental to who we are as humans[^2], and I am old enough that I know how to substitute for the internet. The exercise, then, is not to merely stop doing the thing that is hurting me. It is to answer a few fundamental questions for myself:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;What does rest look like for me, to actually feel restored?&lt;/li&gt;
&lt;li&gt;What activity do I fill my time with, to actually allow for thought?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;[^1]: In Dubai, where I grew up, landline calls within the emirate were free; but the internet depended on the landline being available, and a second call wouldn&apos;t go through if the line was already occupied. This was very frustrating for my mum who couldn’t tell me anything about the house because I was too busy making up song lyrics with Shravani.&lt;/p&gt;
&lt;p&gt;[^2]: Perhaps the nicest illustration of this is in &lt;a href=&quot;https://www.goodreads.com/quotes/66591-all-right-said-susan-i-m-not-stupid-you-re-saying-humans&quot;&gt;Terry Pratchett’s (GNU) Hogfather&lt;/a&gt;&lt;/p&gt;
</content:encoded></item></channel></rss>