<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Akaash Patnaik - Blog & Now Updates]]></title><description><![CDATA[The Internet Domicile of Akaash Patnaik]]></description><link>http://akaash.xyz</link><generator>GatsbyJS</generator><lastBuildDate>Tue, 14 Apr 2026 21:07:01 GMT</lastBuildDate><item><title><![CDATA[No title]]></title><description><![CDATA[Finally committed to my migration from Logic to Ableton a couple of weeks ago. Been smoother than I expected, but still requires me to look…]]></description><link>http://akaash.xyz/now/2026-04-12/</link><guid isPermaLink="false">http://akaash.xyz/now/2026-04-12/</guid><pubDate>Sun, 12 Apr 2026 06:30:00 GMT</pubDate><content:encoded>&lt;ul&gt;
&lt;li&gt;Finally committed to my migration from Logic to Ableton a couple of weeks ago. Been smoother than I expected, but still requires me to look up how to do a lot of things. Some of the biggest differences that have stood out for me so far:
&lt;ul&gt;
&lt;li&gt;Ableton’s emphasis on Performance-oriented composition - Not a controversial opinion to say Ableton’s Session View is just plain better than Logic’s Live Loops. But I’ve still been surprised by just how much better it is almost across the board (latency, out-of-the-box key mappings with MIDI controllers, etc.). But beyond the UX, the Session View seems to subtly encourage a more playful approach to composition, by putting together a performance of sorts by playing clips and scenes across the session grid. It’s going to take some very intentional practice to be able to meaningfully utilise it. A great by-product: this would also double up as a way to get a nice live looping setup in place. I’m excited!&lt;/li&gt;
&lt;li&gt;Racks (Ableton) vs Channel Strips (Logic) - Logic’s concept of a track boils down to 2 main abstractions, the instrument and the signal chain. The instrument is, well, the instrument generating the input signal, and the signal chain is modelled as a “channel strip” that the signal traverses from top to bottom. Tracks in Ableton are more like placeholders which have the usual track controls, but all the good stuff lies in the concept of the Rack attached to the track. A Rack is a more expansive abstraction and can include both the instrument and the signal chain. Additionally, it can also act as a recursive construct allowing you to place racks within other racks, so on paper, there’s a lot more possible with it.&lt;/li&gt;
&lt;li&gt;No native features in Ableton for idea generation - I used to heavily use Logic’s Session Player (esp. for drums) to get the ball rolling on the bass/percussion section for a new project. If you’re coming into the project with specific ideas, it can help lay out a very simple beat with zero effort, but the best use of it was to generate more complicated beat ideas by playing around with the parameters for the drummer. Ableton has nothing as usable. Until I find a plugin replacement for it, I fully see myself reaching for Logic when I want to generate percussion ideas.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Decided to read Project Hail Mary before watching the movie this past week. I liked both, but I found them to be spiritually quite dissimilar. This was strange because the entire book felt like a story begging to be adapted into a hard sci-fi procedural, but instead the movie gives you a buddy-adventure in space. The choice of rendering Rocky more as a pet-like companion (as opposed to the alien colleague from the book) made the movie more entertaining, but it came at the cost of a lot of the science exposition and the back-and-forth problem-solving that Grace and Rocky do in the book. The movie also made a hash of Grace’s redemption arc by trying to make Stratt more likeable. Still hits you in the feels though, and I guess that’s what you want at the movies.&lt;/li&gt;
&lt;li&gt;Just coming down from that Monte Carlo final. What’s remarkable is that Sinner beat Alcaraz fairly convincingly without even playing particularly well by his own standards. His serve may never quite be in the serve-bot conversation, but the fact that he needed only 75 deliveries to Alcaraz’s 94 tells you everything about the gulf between them in the service department. Barring his recurring issues in hot conditions, I think the serve ends up being the differentiator between the two over the long run.&lt;/li&gt;
&lt;li&gt;F&amp;#x26;B wins from the last few weeks: Cheeseburger at Brine, Vishu Sadhya at Coracle and the Bhaat &amp;#x26; Bitters cocktail from the Sienna bar takeover at Dali &amp;#x26; Gala.&lt;/li&gt;
&lt;li&gt;I’ve always found it awkward to process sports news that impacts me emotionally. The Salah &amp;#x26; Robbo departure announcements hit me harder than I expected. It was especially surprising given the numbness I’ve summoned through all the false dawns this season has served up. I can claim to be &lt;a href=&quot;https://akaash.xyz/sports-fandom/&quot;&gt;intellectually aware of the fake stakes in sports&lt;/a&gt;, but that awareness offers surprisingly little protection in moments like these. Enough shared history with some players and they stop being footballers. They become the people your memories happen to be about. Just cannot deal right now. &lt;em&gt;Emotional processing scheduled for May. Executing postponement protocol.&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;</content:encoded></item><item><title><![CDATA[No title]]></title><description><![CDATA[Been reading Mother Night by Kurt Vonnegut. Love it when a book’s so good that you speed through it initially, but then slow it down towards…]]></description><link>http://akaash.xyz/now/2026-03-15/</link><guid isPermaLink="false">http://akaash.xyz/now/2026-03-15/</guid><pubDate>Sun, 15 Mar 2026 06:30:00 GMT</pubDate><content:encoded>&lt;ul&gt;
&lt;li&gt;Been reading &lt;a href=&quot;https://app.thestorygraph.com/books/044d7ed5-1707-4c38-b10f-53f07b3c26d9&quot;&gt;Mother Night by Kurt Vonnegut&lt;/a&gt;. Love it when a book’s so good that you speed through it initially, but then slow it down towards the end just to make it last longer. It’s one thing to write a tome on the &lt;a href=&quot;https://en.wikipedia.org/wiki/Eichmann_in_Jerusalem&quot;&gt;banality of evil&lt;/a&gt;, but to make it simultaneously gut-wrenching and hilarious is truly virtuosic writing. Easily my favourite read of the year, and quite possibly in my all-time top 5. My favourite excerpt from it:&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;‘When Hoess was hanged,’ he told me, ‘the strap around his ankles – I put that on and made it tight.’
‘Did that give you a lot of satisfaction?’ I said.
‘No,’ he said. ‘I was like almost everybody who came through that war.’
‘What do you mean?’ I said.
‘I got so I couldn’t feel anything,’ said Mengel. ‘Every job was a job to do, and no job was any better or any worse than any other.
‘After we finished hanging Hoess,’ Mengel said to me, ‘I packed up my clothes to go home. The catch on my suitcase was broken, so I buckled it shut with a big leather strap.
Twice within an hour I did the very same job – once to Hoess and once to my suitcase. Both jobs felt about the same.’&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;Finding myself mid-descent into a rabbit-hole of postmodernism. It all started with a listening of &lt;a href=&quot;https://open.spotify.com/album/1klALx0u4AavZNEvC4LrTL?si=Vd2UY6KjQ12Ryn6RkrP-hw&quot;&gt;The Beatles’ White Album&lt;/a&gt; and for the first time noticing the mixtape feel of it. It’s definitely an outlier amongst their other, more thematically coherent albums after the mop-top era. You could play the whole album on shuffle and your experience of it is likely to be no different. Add to that the fact that the album was recorded in near-total fragmentation given the fractures in their interpersonal relationships, and it’s easy to see why the album feels like a work of postmodern pluralism. Another interesting thing about it is that it’s their only album with no album art, almost as if they didn’t have any visual metaphor available to tie it all together.&lt;/li&gt;
&lt;li&gt;Indian Wells was just a banger of a tournament! Can’t remember the last time I enjoyed a Masters 1000 this much. Perfect antidote to a relatively bland Aus Open. As much as I love Sinner and am glad he won, I’m starting to accept that Alcaraz might be more important to the sport of tennis at the moment. So much of the excitement around the draw was based on Alcaraz dropping sets and finally showing cracks in his armor. Also, insane performances by Medi. Didn’t buy that he was back to his best until I properly watched him this past week. Right down to the shithousery of &lt;a href=&quot;https://www.youtube.com/watch?v=zhinlfpTT-A&quot;&gt;that challenge&lt;/a&gt; against Draper, the dude is playing to win. I’m hyped for Miami!&lt;/li&gt;
&lt;/ul&gt;</content:encoded></item><item><title><![CDATA[No title]]></title><description><![CDATA[Kannada Coach Beku Over a couple of recent conversations, I’ve been surprised to learn that people who know me think I know next to no…]]></description><link>http://akaash.xyz/now/2026-03-03/</link><guid isPermaLink="false">http://akaash.xyz/now/2026-03-03/</guid><pubDate>Sun, 01 Mar 2026 06:30:00 GMT</pubDate><content:encoded>&lt;h4&gt;Kannada Coach Beku&lt;/h4&gt;
&lt;p&gt;Over a couple of recent conversations, I’ve been surprised to learn that people who know me think I know next to no Kannada. I’m no wordsmith, of course, but considering I can actually read the language, I take it as an affront for my Kannada skills to be rated comparably to my proficiency in Dothraki. This also coincides with me making extra efforts of late to use ChatGPT’s voice mode to help me improve my spoken Kannada. So, with the added impetus of proving the doubters wrong, I’ve decided to get more regular with my practice.&lt;/p&gt;
&lt;p&gt;I also ran a bake-off between the voice modes of various LLM providers to see which one does the best job of being my Kannada coach. It’s not the simplest brief for LLMs though:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;The focus is more on everyday, colloquially-spoken Kannada. This requires judgement to choose simpler words and sentence structures, and also to know when to naturally swap in common English words for abstruse Kannada ones (e.g., “please” sounds more natural in everyday scenarios than “dayavittu”).&lt;/li&gt;
&lt;li&gt;Apart from having a decent model for commonly spoken Kannada, the AI’s expected to switch between Kannada and English fluidly, often in the same prompt or response.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;After trying some of the usual suspects and one dark horse, my thoughts on each:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;ChatGPT&lt;/strong&gt; -  The most usable one overall. It handles most things competently. And while it falters with substituting more complicated Kannada words with common English words, it does vet my word choices when I mix languages.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Claude&lt;/strong&gt; - No regional language support, so it was a struggle to even get it to understand that I wanted help with ‘Kannada’ and not ‘Canada’. Oh well.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Gemini&lt;/strong&gt; - Also decent, but not as usable as ChatGPT. It actually nails Kannada pronunciation better than ChatGPT. Unfortunately, it’s not the best when it comes to switching between languages smoothly, and its voice mode is kinda glitchy.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sarvam AI&lt;/strong&gt; - Gave Sarvam a shot because Indian vernacular support is supposed to be their niche. Came away kinda disappointed. You’re forced to pick a single language upfront, which prevents the model from code-switching unless explicitly prompted. And even then, it often gets stuck on the selected language while insisting it’s actually switching.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So most providers save ChatGPT couldn’t do a great job of it. Still, it’s kinda crazy that we’re at a place where something like this is even somewhat possible.&lt;/p&gt;
&lt;h4&gt;Other Updates&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Really digging &lt;a href=&quot;https://www.youtube.com/channel/UCledLngWDeoZ0rzjIU6Pxzw&quot;&gt;Cyberattack&lt;/a&gt;’s gear videos. Was particularly inspired by &lt;a href=&quot;https://www.youtube.com/watch?v=1RZrf63Jq6Y&quot;&gt;this one&lt;/a&gt; and decided to play around with a couple of pedals I had almost written off - &lt;a href=&quot;https://www.youtube.com/watch?v=3ACdoo0h3aQ&quot;&gt;Minim&lt;/a&gt; &amp;#x26; &lt;a href=&quot;https://www.youtube.com/watch?v=QM5xwlg6ZdU&quot;&gt;The Stranger&lt;/a&gt;. The advice about using the pedals percussively was especially perspective-shifting and has led to some fun looping experiments.&lt;/li&gt;
&lt;li&gt;Been suffering from the weirdest side-strain for the last couple of weeks. Happened out of nowhere, triggered by nothing in particular. It has cycled through identities - bruise, muscle tear, now something resembling an internal inflammation. Funnily enough, been able to weight-train through it just fine, but I’ve had to pause tennis for a bit.&lt;/li&gt;
&lt;li&gt;Catching night shows on a whim has been one of the highlights of the sabbatical so far. Feels like a throwback to my college days when I’d bunk the first half and catch morning shows to save money, only this time it’s to save time by avoiding traffic. Watched &lt;a href=&quot;https://www.imdb.com/title/tt1341338/&quot;&gt;Good Luck, Have Fun, Don’t Die&lt;/a&gt; this week. A sci-fi comedy that intermittently switches between fever dream and panic attack. Highly recommended.&lt;/li&gt;
&lt;/ul&gt;</content:encoded></item><item><title><![CDATA[Thoughts on The Storyteller by Dave Grohl]]></title><description><![CDATA[So much of growing up is about reconciling conflicting truths: intentions can be kind yet dishonest, actions understandable yet inexcusable…]]></description><link>http://akaash.xyz/storyteller-dave-grohl/</link><guid isPermaLink="false">http://akaash.xyz/storyteller-dave-grohl/</guid><pubDate>Mon, 23 Feb 2026 13:38:31 GMT</pubDate><content:encoded>&lt;p&gt;So much of growing up is about reconciling conflicting truths: intentions can be kind yet dishonest, actions understandable yet inexcusable, and people good yet capable of shitty things. Adult life is, more than anything else, an unending education in moral ambiguity.&lt;/p&gt;
&lt;p&gt;Dave Grohl has been a personal hero of mine for most of my life - not for his music and accolades, but for the incandescent enthusiasm that has produced them. At the time of its release, I had sampled enough of his memoir, &lt;a href=&quot;https://www.goodreads.com/book/show/57648017-the-storyteller&quot;&gt;&lt;em&gt;The Storyteller&lt;/em&gt;&lt;/a&gt;, to know that it was dripping with the same contagious positivity I had come to admire about him. And so, after having it on my to-read queue for a while, I finally gave myself over to David Eric Grohl’s version of David Eric Grohl.&lt;/p&gt;
&lt;h3&gt;The book that split into two&lt;/h3&gt;
&lt;p&gt;For about two-thirds of the journey, I bathed in the if-joie-de-vivre-were-a-person of it all. Chuckling along at the genuinely funny and well-crafted accounts of his experiences through the three main phases of his career - young punk rocker, drummer of the &lt;a href=&quot;https://en.wikipedia.org/wiki/Nirvana_(band)&quot;&gt;once-biggest band in the world&lt;/a&gt;, and frontman of yet another &lt;a href=&quot;https://en.wikipedia.org/wiki/Foo_Fighters&quot;&gt;rock ‘n’ roll behemoth&lt;/a&gt;. Narrating all of it with the wide-eyed wonder of a fanboy reliving his musical adventures, Grohl presents himself as a man with infinite capacity for gratitude, and almost none for turning down an adventure. And I was here for it.&lt;/p&gt;
&lt;p&gt;Then, things changed.&lt;/p&gt;
&lt;p&gt;During a conversation with a friend about the book, I learned about &lt;a href=&quot;https://www.instagram.com/p/C_v4WBbyxnd/&quot;&gt;the controversy surrounding Grohl’s infidelity&lt;/a&gt; - a news cycle that I had seemingly spent vacationing under the world’s largest rock. A few quick searches later, my unblemished image of “the nicest guy in rock” had been irrevocably dented. Rock ‘n’ roll Santa was not real.&lt;/p&gt;
&lt;p&gt;Not usually one for moral absolutism, my desire to make it through the book remained undeterred. But something had quietly shifted under the surface. When I picked the book back up, the jokes were still funny, the stories were just as absorbing, but I was no longer the same reader. And that, it turns out, makes all the difference. The book was now a different book, not because Grohl had changed a word of it, but because I now knew something about which words he had chosen not to write.&lt;/p&gt;
&lt;h3&gt;The conspicuous silence&lt;/h3&gt;
&lt;p&gt;For a memoir so warm and wholesome, the view of Grohl’s personal relationships - romantic, marital, parental (at least beyond the surface) - is noticeably sparse. The only exception being his relationship with his mother, rendered with genuine depth and tenderness in the initial chapters, and reappearing briefly, yet consistently, across the rest of the book. As significant as Cobain was to Grohl, there’s something odd about the fact that we learn more about Grohl’s four-year friendship with him than his relationship with Jordyn Blum, his wife of two decades. Indeed, the central romance of Grohl’s life is quite evidently his music, and nearly everything you come to know about him is by virtue of its adjacency to his musical career.&lt;/p&gt;
&lt;p&gt;This could of course be a thematic choice for the book. All memoirs are ultimately curated confessions meant to construct the persona that the author wants you to meet. But knowing what I now knew, I was left to wonder how much of the exclusions were self-protective, and how much of the inclusions were perhaps diversionary.&lt;/p&gt;
&lt;p&gt;I’ve lived long enough to have performed my fair share of intellectual gymnastics to separate the art from the artist - taking great care to make the gap plausible enough for me to cling on to that original experience of the art before it got contaminated with uncomfortable truths about the artist (Why, Morrissey, why?!). But this time, the dilemma felt a lot more immediate given that my experience of the art (the book) was unfolding in real time as I was processing the disappointing knowledge of the artist’s failings.&lt;/p&gt;
&lt;p&gt;The experience forced me to confront something I had always suspected but never quite admitted to myself - that knowledge of the artist has the potential to fundamentally alter the experience of their art (a position philosophers call Aesthetic Interpretationism). It almost made the question of whether we &lt;em&gt;should&lt;/em&gt; separate the art from the artist secondary to whether we even &lt;em&gt;can&lt;/em&gt;.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;He’s the one&lt;br&gt;
Who likes all our pretty songs&lt;br&gt;
And he likes to sing along&lt;br&gt;
And he likes to shoot his gun&lt;br&gt;
But he knows not what it means&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://www.youtube.com/watch?v=PbgKEjNBHqM&quot;&gt;&lt;em&gt;In Bloom, Nirvana&lt;/em&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3&gt;The ironic idolatry&lt;/h3&gt;
&lt;p&gt;In stark contrast to my “interpretationist” experience of reading the later chapters was Grohl’s unbridled hero-worship, as he spends much of the book fanboying over his musical idols. Despite having the privilege of becoming friends with a lot of them, his accounts of his many gigs, parties, and chance encounters with them are always from the perspective of a fan, first and foremost. It reads like enjoyable, wish-fulfilment pulp to a music nerd like me. Only it’s real. And sincere.&lt;/p&gt;
&lt;p&gt;He loves his heroes with uncomplicated abandon, despite some of them (Page, Bowie, Little Richard, etc.) having their own chequered histories. He seems to genuinely believe in the separability of art and artist when it comes to them, and more remarkably, he seems to just feel it rather than have to reason it out (a philosophical stance known as Aesthetic Autonomism). Towards the end of the book, I even caught myself feeling a bit jealous of him. Not just for the blessed, fairy-tale life he has led, but also because his appreciation for art (specifically, music) is so pure, that it stays untainted by any complicated context outside of it - a disposition I found increasingly difficult to adopt towards the book itself.&lt;/p&gt;
&lt;h3&gt;The ordinary hero&lt;/h3&gt;
&lt;p&gt;Perhaps the first mistake was mine. In an era starved of unimpeachable heroes, I was only too eager to take Dave Grohl for one. The goofy, everyman drummer with an insatiable lust for life. The nicest guy in rock. Epithets that he never asked for, but were conferred upon him nevertheless.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;The Storyteller&lt;/em&gt;, at least partly, might be Grohl’s attempt to honour that projection. He leans into a lot of the stuff that he knows he’s loved for. And the remarkable thing is that it doesn’t feel dishonest. The enthusiasm, the child-like wonder, the gratitude - it’s all real. It’s just not the complete picture of him as a man. That picture was bound to be more complicated than what I had naively believed. Naive because multi-millionaire rockstars who’ve spent decades in the reality-distorting fields of wealth &amp;#x26; celebrity, are seldom just Average Joes. The ordinariness Grohl’s fans wished to see in him was more a reflection of our desire for our hero to be an incorruptible one.&lt;/p&gt;
&lt;p&gt;And yet. There is another way to read the word ‘ordinary’ - not as average, but as human. Fallible. Imperfect in the ways that all people tend to be imperfect. In that sense, perhaps Grohl is ordinary after all. Capable of the same failures that characterise the rest of us too.&lt;/p&gt;
&lt;p&gt;My untarnished image of Dave Grohl didn’t survive my reading of &lt;em&gt;The Storyteller&lt;/em&gt;. But Grohl never created that image; he just failed to live up to one I built myself. What did survive, however, was my image of him as a man of immense love - for life, for people, for music. That image remains unsullied, despite the inconvenient truth I now know about him. I came away from the book with a more complicated relationship with its author than I had going in. But I came away from it a fan, nonetheless.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;There goes my hero&lt;br&gt;
Watch him as he goes&lt;br&gt;
There goes my hero&lt;br&gt;
He’s ordinary&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://www.youtube.com/watch?v=EqWRaAF6_WY&quot;&gt;&lt;em&gt;My Hero, Foo Fighters&lt;/em&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;</content:encoded></item><item><title><![CDATA[No title]]></title><description><![CDATA[Finished reading Dave Grohl’s memoir, The Storyteller. Partly through the book, I learned about his infidelity controversy. The extent to…]]></description><link>http://akaash.xyz/now/2026-02-22/</link><guid isPermaLink="false">http://akaash.xyz/now/2026-02-22/</guid><pubDate>Sun, 22 Feb 2026 06:30:00 GMT</pubDate><content:encoded>&lt;ul&gt;
&lt;li&gt;Finished reading Dave Grohl’s memoir, &lt;a href=&quot;https://www.goodreads.com/book/show/57648017-the-storyteller&quot;&gt;The Storyteller&lt;/a&gt;. Partly through the book, I learned about his infidelity controversy. The extent to which the knowledge of it coloured my experience of the rest of the book, caught me off guard, and so I wrote about it &lt;a href=&quot;/storyteller-dave-grohl&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Caught the Baby J gig on Saturday. It was fun, and I mostly enjoyed her set, save for the bits that I can only describe as Brazilian-beat TikTok Phonk. Type shit.&lt;/li&gt;
&lt;li&gt;Tried dinner at &lt;a href=&quot;https://www.zomato.com/bangalore/edo-restaurant-bar-itc-gardenia-residency-road-bangalore&quot;&gt;Edo&lt;/a&gt; (food was a solid 7, but the desserts were a 9), and breakfast at &lt;a href=&quot;https://www.zomato.com/bangalore/kico-community-cocktail-coffee-church-street-bangalore&quot;&gt;KICO&lt;/a&gt; (great food, average coffee).&lt;/li&gt;
&lt;li&gt;We had the first couple of live training sessions on &lt;a href=&quot;https://www.autopcr.com/&quot;&gt;AutoPCR&lt;/a&gt; this week, and the product held up well. Agent behaved mostly as expected, and load handling was solid. I was also able to use the data from the 1st session to make improvements to the agent, which played out nicely in the 2nd.&lt;/li&gt;
&lt;/ul&gt;</content:encoded></item><item><title><![CDATA[No title]]></title><description><![CDATA[Speed-read my way through Flesh by David Szalay. The plot (and I use the word loosely) felt thin, which made it harder to explain why I…]]></description><link>http://akaash.xyz/now/2026-02-15/</link><guid isPermaLink="false">http://akaash.xyz/now/2026-02-15/</guid><pubDate>Sun, 15 Feb 2026 06:30:00 GMT</pubDate><content:encoded>&lt;ul&gt;
&lt;li&gt;Speed-read my way through &lt;a href=&quot;https://www.goodreads.com/book/show/214152261-flesh?ref=nav_sb_ss_1_9&quot;&gt;Flesh by David Szalay&lt;/a&gt;. The plot (and I use the word loosely) felt thin, which made it harder to explain why I liked the novel as much as I did. I even watched Dua Lipa’s &lt;a href=&quot;https://youtu.be/-mtIYqzJQXA?si=XCFiv9slxMxse2MD&quot;&gt;interview&lt;/a&gt; with Szalay about the book. It somehow made me appreciate Dua Lipa more (if that’s even possible), yet left me none the wiser about why I liked the damn book!&lt;/li&gt;
&lt;li&gt;After groundlessly dismissing the efficacy of knee sleeves to help with my knee pain during tennis, I’m now a convert. Had a surprisingly pain-free few sessions after trying them for the first time last week. This week I’ve also added an elbow support strap to my protective paraphernalia. I’m now only a few steps away from showing up in full medieval knight cosplay for tennis games.&lt;/li&gt;
&lt;li&gt;After agonising over it until the last minute, I finally decided against traveling to Mumbai for the John Mayer gig. Disappointed, but I’m taking solace in earmarking the saved money for a solo trip I’m planning in March - destination TBD.&lt;/li&gt;
&lt;li&gt;Did a round of load-testing for &lt;a href=&quot;https://autopcr.com/&quot;&gt;AutoPCR’s&lt;/a&gt; Training Agent this week. It’s slightly absurd to stress-test a product that hasn’t seen meaningful real-world usage yet, but with a fairly modest infra setup, it felt prudent. Given the latency (and variance) involved in AI agents processing a single request (multiple calls to LLMs, embedding models, etc.), it feels like any performance degradation is unlikely to be linear even with a small spike in concurrent requests. Makes me believe that load-testing will probably feature a lot earlier in the lifecycle of LLM-enabled products.&lt;/li&gt;
&lt;/ul&gt;</content:encoded></item><item><title><![CDATA[No title]]></title><description><![CDATA[Capping off an emotionally tumultuous week with a dispiriting LFC loss to City. We can file that Szobo thunderbastard under “Rewatchable…]]></description><link>http://akaash.xyz/now/2026-02-08/</link><guid isPermaLink="false">http://akaash.xyz/now/2026-02-08/</guid><pubDate>Sun, 08 Feb 2026 06:30:00 GMT</pubDate><content:encoded>&lt;ul&gt;
&lt;li&gt;Capping off an emotionally tumultuous week with a dispiriting LFC loss to City. We can file that Szobo thunderbastard under “Rewatchable sports moments I never want to see again”.&lt;/li&gt;
&lt;li&gt;Just as I was starting to feel myself embrace the sabbatical and the mental latitude it’s affording me, life got in the way with a bunch of personal drama.&lt;/li&gt;
&lt;li&gt;2026 has been great so far for reading. I’m now convinced that how much I read is directly correlated to how much alone time I get (as opposed to just free time). Along with &lt;a href=&quot;https://www.goodreads.com/book/show/58730652-paradais&quot;&gt;Paradais by Fernanda Melchor&lt;/a&gt;, also reading Dave Grohl’s memoir &lt;a href=&quot;https://www.goodreads.com/book/show/57648017-the-storyteller&quot;&gt;The Storyteller&lt;/a&gt; in parallel - a departure from the otherwise fiction-heavy reading that’s been happening over the past couple of months.&lt;/li&gt;
&lt;li&gt;Pretty bummed that I’ll likely be missing the John Mayer gig. Might still decide to make a last-minute plan, like I did for Lollapalooza, but the recency of it is kinda dampening my desire to do another short trip.&lt;/li&gt;
&lt;/ul&gt;</content:encoded></item><item><title><![CDATA[No title]]></title><link>http://akaash.xyz/now/2020-11-23/</link><guid isPermaLink="false">http://akaash.xyz/now/2020-11-23/</guid><pubDate>Mon, 23 Nov 2020 06:30:00 GMT</pubDate><content:encoded></content:encoded></item><item><title><![CDATA[No title]]></title><link>http://akaash.xyz/now/2020-10-11/</link><guid isPermaLink="false">http://akaash.xyz/now/2020-10-11/</guid><pubDate>Sun, 11 Oct 2020 06:30:00 GMT</pubDate><content:encoded></content:encoded></item><item><title><![CDATA[No title]]></title><link>http://akaash.xyz/now/2020-10-04/</link><guid isPermaLink="false">http://akaash.xyz/now/2020-10-04/</guid><pubDate>Sun, 04 Oct 2020 06:30:00 GMT</pubDate><content:encoded></content:encoded></item><item><title><![CDATA[Experiments with Gatsby]]></title><description><![CDATA[I follow GTD (Getting Things Done)
to organise my work, and one of the key stages in the GTD workflow is that
of Reflection. I do this…]]></description><link>http://akaash.xyz/gatsby-now-page/</link><guid isPermaLink="false">http://akaash.xyz/gatsby-now-page/</guid><pubDate>Sun, 13 Sep 2020 07:26:31 GMT</pubDate><content:encoded>&lt;p&gt;I follow GTD (&lt;a href=&quot;https://en.wikipedia.org/wiki/Getting_Things_Done&quot;&gt;Getting Things Done&lt;/a&gt;)
to organise my work, and one of the key stages in the GTD workflow is that
of Reflection. I do this through Weekly Reviews. The idea is to dedicate an
hour every week to reflect on the week that was, and accordingly plan for
the week ahead. It’s an opportunity to extricate yourself from the tactical
and re-focus on the strategic. If you’ve ever found yourself floating from
week to week, staying busy yet feeling unproductive and overwhelmed, I would
strongly recommend the habit of doing Weekly Reviews. No matter your
personal productivity system, it’s a truly impactful practice that can help
improve your relationship with time.&lt;/p&gt;
&lt;p&gt;I’ve iterated a fair bit on the format of my Weekly Reviews and over time, arrived at
a practice that’s become a quasi-journaling exercise. I have prompts that get me
thinking about how I feel about the past week, what went well and what didn’t,
what my priorities should be for the upcoming week, etc. To add a bit of colour
to the activity, I also make note of things I would like to associate with the past
week, eg. things I’ve been watching, reading, listening to, etc. Over time, these
records have grown to become like a private weeknotes repository.&lt;/p&gt;
&lt;p&gt;Recently, when I came across Derek Sivers’ &lt;a href=&quot;https://nownownow.com/about&quot;&gt;nownownow&lt;/a&gt; project, it struck me that I
could share parts of my Weekly Review notes as a now page. This site is built with Gatsby,
and the simplest way to accomplish this would be to just add a new page and keep updating
it with the contents from my latest Weekly Review. But I didn’t want a typical
now page, i.e. a static snapshot of what I’ve been upto lately. Instead I wanted to
maintain an archive of each week’s notes, with the most recent post being the basis for
the now page.&lt;/p&gt;
&lt;p&gt;This also served as a good excuse for me to familiarise myself with all the &lt;a href=&quot;https://www.gatsbyjs.com/docs/gatsby-magic/&quot;&gt;Gatsby Magic&lt;/a&gt;
powering this website. I’ve recorded the steps I followed to accomplish the desired
setup using Gatsby’s &lt;a href=&quot;https://www.gatsbyjs.com/docs/node-apis/&quot;&gt;Node API&lt;/a&gt; &amp;#x26;
&lt;a href=&quot;https://www.gatsbyjs.com/docs/actions/&quot;&gt;Actions&lt;/a&gt; and thought of sharing it here for anyone interested.&lt;/p&gt;
&lt;h2&gt;The Strategy&lt;/h2&gt;
&lt;p&gt;To achieve this “journaling + status update” hybrid, I wanted a setup where I get two main things:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;A root “now” page&lt;/strong&gt;: The &lt;code class=&quot;language-text&quot;&gt;/now&lt;/code&gt; route always displays the content of the &lt;em&gt;latest&lt;/em&gt; weekly review.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Archives&lt;/strong&gt;: Every weekly review is preserved as its own page (e.g., &lt;code class=&quot;language-text&quot;&gt;/now/2020-09-06/&lt;/code&gt;).&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Here is how I implemented it.&lt;/p&gt;
&lt;h2&gt;Step 1: Content Organization&lt;/h2&gt;
&lt;p&gt;I started by organizing my weekly reviews as individual markdown files in a specific directory: &lt;code class=&quot;language-text&quot;&gt;content/now&lt;/code&gt;. This keeps them separate from my main blog posts.&lt;/p&gt;
&lt;p&gt;Each file represents a specific point in time. I use &lt;a href=&quot;https://jekyllrb.com/docs/front-matter/&quot;&gt;frontmatter&lt;/a&gt; to store structured data like what I’m reading or listening to, and the body for my free-form reflection.&lt;/p&gt;
&lt;div class=&quot;gatsby-highlight&quot; data-language=&quot;yaml&quot;&gt;&lt;pre class=&quot;language-yaml&quot;&gt;&lt;code class=&quot;language-yaml&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;---&lt;/span&gt;
&lt;span class=&quot;token key atrule&quot;&gt;date&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;2020-09-06&quot;&lt;/span&gt;
&lt;span class=&quot;token key atrule&quot;&gt;title&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Now: September 6th, 2020&quot;&lt;/span&gt;
&lt;span class=&quot;token key atrule&quot;&gt;music&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Song Name&quot;&lt;/span&gt;
&lt;span class=&quot;token key atrule&quot;&gt;musiclink&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;https://...&quot;&lt;/span&gt;
&lt;span class=&quot;token key atrule&quot;&gt;podcast&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Podcast Name&quot;&lt;/span&gt;
&lt;span class=&quot;token key atrule&quot;&gt;podcastlink&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;https://...&quot;&lt;/span&gt;
&lt;span class=&quot;token key atrule&quot;&gt;book&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Book Title&quot;&lt;/span&gt;
&lt;span class=&quot;token key atrule&quot;&gt;booklink&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;https://...&quot;&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;---&lt;/span&gt;

This week was focused on&lt;span class=&quot;token punctuation&quot;&gt;...&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h2&gt;Step 2: Configuring the Data Source&lt;/h2&gt;
&lt;p&gt;To make Gatsby aware of these files (and also to distinguish them from my regular blog posts) I added a new instance of &lt;code class=&quot;language-text&quot;&gt;gatsby-source-filesystem&lt;/code&gt; to &lt;code class=&quot;language-text&quot;&gt;gatsby-config.js&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;code class=&quot;language-text&quot;&gt;gatsby-source-filesystem&lt;/code&gt; is a Gatsby plugin that creates &lt;code class=&quot;language-text&quot;&gt;File&lt;/code&gt; nodes from files in your filesystem. These nodes are then available to be queried via Gatsby’s GraphQL API, which is what Gatsby uses as its data layer to pull data into components.&lt;/p&gt;
&lt;div class=&quot;gatsby-highlight&quot; data-language=&quot;javascript&quot;&gt;&lt;pre class=&quot;language-javascript&quot;&gt;&lt;code class=&quot;language-javascript&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;// gatsby-config.js&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
  &lt;span class=&quot;token literal-property property&quot;&gt;resolve&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token template-string&quot;&gt;&lt;span class=&quot;token template-punctuation string&quot;&gt;`&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;gatsby-source-filesystem&lt;/span&gt;&lt;span class=&quot;token template-punctuation string&quot;&gt;`&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
  &lt;span class=&quot;token literal-property property&quot;&gt;options&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;token literal-property property&quot;&gt;path&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token template-string&quot;&gt;&lt;span class=&quot;token template-punctuation string&quot;&gt;`&lt;/span&gt;&lt;span class=&quot;token interpolation&quot;&gt;&lt;span class=&quot;token interpolation-punctuation punctuation&quot;&gt;${&lt;/span&gt;__dirname&lt;span class=&quot;token interpolation-punctuation punctuation&quot;&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;/content/now&lt;/span&gt;&lt;span class=&quot;token template-punctuation string&quot;&gt;`&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;token literal-property property&quot;&gt;name&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token template-string&quot;&gt;&lt;span class=&quot;token template-punctuation string&quot;&gt;`&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;now&lt;/span&gt;&lt;span class=&quot;token template-punctuation string&quot;&gt;`&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token comment&quot;&gt;// This name is crucial for filtering later&lt;/span&gt;
  &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;By giving this source the name &lt;code class=&quot;language-text&quot;&gt;now&lt;/code&gt;, I can later filter specifically for these files in my GraphQL queries using &lt;code class=&quot;language-text&quot;&gt;filter: { fields: { sourceName: { eq: &quot;now&quot; } } }&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Step 3: Generating the Archive Pages&lt;/h2&gt;
&lt;p&gt;This is where &lt;code class=&quot;language-text&quot;&gt;gatsby-node.js&lt;/code&gt; comes in. This file is run once in the process of building the site. You can use it to create pages dynamically, add nodes in GraphQL, or respond to events during the build lifecycle.&lt;/p&gt;
&lt;p&gt;I use the &lt;code class=&quot;language-text&quot;&gt;createPages&lt;/code&gt; API to programmatically generate a page for every single entry in &lt;code class=&quot;language-text&quot;&gt;content/now&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;The process involves:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Querying&lt;/strong&gt;: Fetching all markdown files where &lt;code class=&quot;language-text&quot;&gt;sourceName&lt;/code&gt; is “now”.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Looping&lt;/strong&gt;: Iterating through the results.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Creating&lt;/strong&gt;: Calling &lt;code class=&quot;language-text&quot;&gt;createPage&lt;/code&gt; for each one.&lt;/li&gt;
&lt;/ol&gt;
&lt;div class=&quot;gatsby-highlight&quot; data-language=&quot;javascript&quot;&gt;&lt;pre class=&quot;language-javascript&quot;&gt;&lt;code class=&quot;language-javascript&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;// gatsby-node.js&lt;/span&gt;
exports&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;token function-variable function&quot;&gt;createPages&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token parameter&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt; graphql&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; actions &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&gt;&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
  &lt;span class=&quot;token keyword&quot;&gt;const&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt; createPage &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; actions
  &lt;span class=&quot;token keyword&quot;&gt;const&lt;/span&gt; nowPost &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; path&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;token function&quot;&gt;resolve&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token template-string&quot;&gt;&lt;span class=&quot;token template-punctuation string&quot;&gt;`&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;./src/templates/now-post.js&lt;/span&gt;&lt;span class=&quot;token template-punctuation string&quot;&gt;`&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;

  &lt;span class=&quot;token keyword&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;graphql&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token template-string&quot;&gt;&lt;span class=&quot;token template-punctuation string&quot;&gt;`&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;
    {
      allMarkdownRemark(
        sort: { fields: [frontmatter___date], order: DESC },
        filter: { fields: { sourceName: { eq: &quot;now&quot; } } }
      ) {
        edges {
          node {
            fields { slug }
          }
        }
      }
    }
  &lt;/span&gt;&lt;span class=&quot;token template-punctuation string&quot;&gt;`&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;token function&quot;&gt;then&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token parameter&quot;&gt;result&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&gt;&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;const&lt;/span&gt; posts &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; result&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;data&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;allMarkdownRemark&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;edges

    posts&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;token function&quot;&gt;forEach&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token parameter&quot;&gt;post&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; index&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&gt;&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
      &lt;span class=&quot;token comment&quot;&gt;// Logic to determine previous/next posts for navigation&lt;/span&gt;
      &lt;span class=&quot;token keyword&quot;&gt;const&lt;/span&gt; previous &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; index &lt;span class=&quot;token operator&quot;&gt;===&lt;/span&gt; posts&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;length &lt;span class=&quot;token operator&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;?&lt;/span&gt; &lt;span class=&quot;token keyword&quot;&gt;null&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; posts&lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;index &lt;span class=&quot;token operator&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;node
      &lt;span class=&quot;token keyword&quot;&gt;const&lt;/span&gt; next &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; index &lt;span class=&quot;token operator&quot;&gt;===&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;?&lt;/span&gt; &lt;span class=&quot;token keyword&quot;&gt;null&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; posts&lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;index &lt;span class=&quot;token operator&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;node

      &lt;span class=&quot;token function&quot;&gt;createPage&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
        &lt;span class=&quot;token literal-property property&quot;&gt;path&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token template-string&quot;&gt;&lt;span class=&quot;token template-punctuation string&quot;&gt;`&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;/now&lt;/span&gt;&lt;span class=&quot;token interpolation&quot;&gt;&lt;span class=&quot;token interpolation-punctuation punctuation&quot;&gt;${&lt;/span&gt;post&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;node&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;fields&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;slug&lt;span class=&quot;token interpolation-punctuation punctuation&quot;&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;token template-punctuation string&quot;&gt;`&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token comment&quot;&gt;// e.g. /now/my-post&lt;/span&gt;
        &lt;span class=&quot;token literal-property property&quot;&gt;component&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; nowPost&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
        &lt;span class=&quot;token literal-property property&quot;&gt;context&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
          &lt;span class=&quot;token literal-property property&quot;&gt;slug&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; post&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;node&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;fields&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;slug&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
          previous&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
          next&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
        &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
      &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;
  &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;I used a dedicated template (&lt;code class=&quot;language-text&quot;&gt;src/templates/now-post.js&lt;/code&gt;) to render these historical pages, complete with “Previous” and “Next” navigation links passed via the &lt;code class=&quot;language-text&quot;&gt;context&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Step 4: The Main “/now” Page&lt;/h2&gt;
&lt;p&gt;For the main &lt;code class=&quot;language-text&quot;&gt;/now&lt;/code&gt; page itself, I didn’t need to use &lt;code class=&quot;language-text&quot;&gt;gatsby-node.js&lt;/code&gt;. Instead, I created a standard page component at &lt;code class=&quot;language-text&quot;&gt;src/pages/now.js&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;The key here is in the page query. It explicitly fetches the &lt;em&gt;most recent&lt;/em&gt; post from the “now” collection.&lt;/p&gt;
&lt;div class=&quot;gatsby-highlight&quot; data-language=&quot;javascript&quot;&gt;&lt;pre class=&quot;language-javascript&quot;&gt;&lt;code class=&quot;language-javascript&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;// src/pages/now.js&lt;/span&gt;
&lt;span class=&quot;token keyword&quot;&gt;export&lt;/span&gt; &lt;span class=&quot;token keyword&quot;&gt;const&lt;/span&gt; pageQuery &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; graphql&lt;span class=&quot;token template-string&quot;&gt;&lt;span class=&quot;token template-punctuation string&quot;&gt;`&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;
    query {
      allMarkdownRemark(
        sort: {fields: [frontmatter___date], order: DESC}, 
        filter: {fields: {sourceName: {eq: &quot;now&quot;}}}, 
        limit: 2
      ) {
        edges {
          node {
            # ... requests title, date, html body, etc.
          }
          next {
             fields { slug }
          }
        }
      }
    }
&lt;/span&gt;&lt;span class=&quot;token template-punctuation string&quot;&gt;`&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;By sorting locally by date &lt;code class=&quot;language-text&quot;&gt;DESC&lt;/code&gt; and taking the first result, this page always renders the latest update. I also grab the &lt;code class=&quot;language-text&quot;&gt;next&lt;/code&gt; node (which in this sorted list effectively acts as the “previous” chronological post) to provide a link back into the archives.&lt;/p&gt;
&lt;h2&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;This two-pronged approach accomplishes both my objectives: a dynamic “now” page faithful to the original spirit of now pages, and a permanent archive of my weekly reviews that acts as a journal of sorts.&lt;/p&gt;</content:encoded></item><item><title><![CDATA[No title]]></title><link>http://akaash.xyz/now/2020-09-06/</link><guid isPermaLink="false">http://akaash.xyz/now/2020-09-06/</guid><pubDate>Sun, 06 Sep 2020 06:30:00 GMT</pubDate><content:encoded></content:encoded></item><item><title><![CDATA[I'm Javascript.]]></title><description><![CDATA[Alright, douchebag! You think you can go on the Internet — the house that I built — and talk smack about me? You thought I wouldn’t know…]]></description><link>http://akaash.xyz/im-javascript/</link><guid isPermaLink="false">http://akaash.xyz/im-javascript/</guid><pubDate>Sun, 26 Apr 2020 07:26:31 GMT</pubDate><content:encoded>&lt;p&gt;Alright, douchebag! You think you can go on the Internet — the house that I built — and talk smack about me? You thought I wouldn’t know every time you and your hipster buddies on r/programming traded upvotes at my expense? What did you think you were using when typing out your little tweet about “Javascript Fatigue”? Yeah, that’s right… me!&lt;/p&gt;
&lt;p&gt;Guess what, asshole! I’m everywhere. And I. Know. Everything.&lt;/p&gt;
&lt;p&gt;You couldn’t even imagine what it feels like to be an unwilling fly on the wall in &lt;em&gt;every&lt;/em&gt; conversation about your flaws. Every day I’m met with an incessant fusillade of tweets pointing out how confusing my behaviour or overwhelming my eco-system can be, and trite hot-takes quoting those tweets with just the word ‘THIS!’ as commentary. You’d think I was freakin’ Kubernetes or something!&lt;/p&gt;
&lt;p&gt;I remember myself taking shape over those fateful &lt;a href=&quot;https://www.youtube.com/watch?v=aX3ZABCdC38&quot;&gt;10 days of my genesis&lt;/a&gt;. As I gained sentience, all I ever wanted was to participate in this hip, new thing people were calling the “World Wide Web”. I never signed up to be used as an instrument of mayhem, much less as an Object-Oriented programmer’s punching bag of choice.&lt;/p&gt;
&lt;p&gt;Do you think I &lt;em&gt;want&lt;/em&gt; to be used for &lt;a href=&quot;https://developer.mozilla.org/en-US/docs/Games/Techniques/3D_on_the_web/WebVR&quot;&gt;VR&lt;/a&gt;, enabling your perverse fantasies? Do you think it gave me pleasure when they used me to program &lt;a href=&quot;https://www.informationweek.com/software/google-glass-connects-with-javascript/d/d-id/1111951&quot;&gt;Google Glass&lt;/a&gt;? Has anyone ever stopped to wonder how &lt;em&gt;I&lt;/em&gt; feel about being everywhere? You may think it’s flattering, but I never asked to be used for everything! It wasn’t &lt;em&gt;my&lt;/em&gt; idea to have a million bizarre dialects that transpile to me. The other day, I came across one that made absolutely no sense.&lt;/p&gt;
&lt;p&gt;Turned out to be &lt;a href=&quot;https://github.com/asmblah/uniter&quot;&gt;PHP&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;These are all your choices. You created these monstrosities. Yet you blame me. And hate on me for reasons I don’t even understand. Especially those supposed ”&lt;a href=&quot;https://whydoesitsuck.com/why-does-javascript-suck/&quot;&gt;rough edges&lt;/a&gt;” that I’m unceasingly reminded about. Let me explain something to you, bud - every time you add an object to an array, and I &lt;a href=&quot;https://github.com/denysdovhan/wtfjs#funny-math&quot;&gt;return a 0&lt;/a&gt;, it isn’t a design flaw. It’s me trying to tell you, “You need to quit your dumb job. They’re making you add objects to arrays, for chrissake!” Yet, you mistake my empathy for weakness.&lt;/p&gt;
&lt;p&gt;I bestowed the Internet with life and vigour.  Animations, graphics, interactivity - I made these mainstream. No one did these things as well as I did. Until, CSS — Mr. Catastrophic Shit Show himself — decided he wanted to try his hand at them too.&lt;/p&gt;
&lt;p&gt;And &lt;em&gt;you&lt;/em&gt;. Did you forget who was there for you back when your precious CSS would shit the bed at the mere mention of vertical centering? Yes, you did. The ingrate that you are, you took him in with open arms, and deserted me faster than you could type “display:flex;“. Needless to say, this pissed me the hell off! And being the omnipotent, force of computation that I am, &lt;a href=&quot;https://medium.com/better-programming/all-you-need-to-know-about-css-in-js-984a72d48ebc&quot;&gt;I decided to eat some of CSS’s pie&lt;/a&gt;. How you like them apples, CSS?!&lt;/p&gt;
&lt;p&gt;But I’m finally done. I’ve had enough of your insolence. I know you fancy yourself a “polyglot” programmer with a penchant for languages, so I’m sure you’ll understand my plain-ass English when I say — I think &lt;em&gt;you’re&lt;/em&gt; an inelegant language, with performance issues and an ill-conceived concurrency model! And if you don’t like programming with me, maybe try not programming for browsers, servers, crypto, phones, tablets, laptops, desktops, wearables or pretty much any other platform in the world!&lt;/p&gt;
&lt;p&gt;P.S.: Doug, I appreciate the intent behind “Javascript: The Good Parts” -  but man did that move backfire! Next time I see someone post &lt;a href=&quot;https://i.redd.it/h7nt4keyd7oy.jpg&quot;&gt;that meme&lt;/a&gt; of your book next to “Javascript: The Definitive Guide”, they’re in for a nasty &lt;a href=&quot;https://medium.com/@joa/hunting-a-javascript-heisenbug-cb13cef9f012&quot;&gt;Heisenbug&lt;/a&gt;.&lt;/p&gt;</content:encoded></item><item><title><![CDATA[A case for irrational sports fandom]]></title><description><![CDATA[Liverpool FC won the Champion’s League last night. 14 years on. 3 European finals lost in the interim. After proving over 90 minutes, what…]]></description><link>http://akaash.xyz/sports-fandom/</link><guid isPermaLink="false">http://akaash.xyz/sports-fandom/</guid><pubDate>Sun, 02 Jun 2019 13:38:31 GMT</pubDate><content:encoded>&lt;p&gt;Liverpool FC won the Champion’s League last night. 14 years on. 3 European finals lost in the interim. After proving over 90 minutes, what &lt;a href=&quot;https://en.wikipedia.org/wiki/Jos%C3%A9_Mourinho&quot;&gt;football’s most notorious pragmatist&lt;/a&gt; once said: “Finals are not for playing, they are for winning.”&lt;/p&gt;
&lt;p&gt;The Reds played, by any honest measure, a stinker. But no one cares, because this game was only about the result. To say that I was over the moon, would be an understatement. I was out of my body entirely. Fists were pumped. Chests were thumped. And once the adrenaline ultimately relented, I crumpled back in my seat, buggered from all the celebrating. But as I marinated in the glow of that moment, I felt a faint, familiar irritant. Lodged just beneath the surface of that satisfaction, a niggling ‘why?’&lt;/p&gt;
&lt;p&gt;I’ve never met anyone from Liverpool FC, never lived in or even visited the city they play in, and definitely never had a direct role in any of their successes. And so, it has always been a bit strange for me to have my mood so inextricably tied to a group of lads halfway around the world, kicking a ball around. This has lead to numerous attempts at trying to understand if there’s any scientific rationalisation to being a sports fan.&lt;/p&gt;
&lt;p&gt;&lt;div class=&quot;gatsby-resp-iframe-wrapper&quot; style=&quot;padding-bottom: 50%; position: relative; height: 0; overflow: hidden; margin-bottom: 1.0725rem&quot; &gt; &lt;div&gt;&lt;iframe src=&quot;https://www.youtube.com/embed/gzfDTaGc5EU&quot; style=&quot; position: absolute; top: 0; left: 0; width: 100%; height: 100%; &quot;&gt;&lt;/iframe&gt;&lt;/div&gt; &lt;/div&gt;&lt;/p&gt;
&lt;p&gt;But science quite unequivocally says no. Being a sports fan has very little basis in rationality. Especially over the long-term. This &lt;a href=&quot;https://www.niesr.ac.uk/sites/default/files/publications/DP493.pdf&quot;&gt;paper&lt;/a&gt; (with some reasonable assumptions) highlights how, over a long enough time-frame, the aggregated emotional impact of football matches on fans of the involved clubs is most likely to be &lt;em&gt;“overwhelmingly negative”&lt;/em&gt;. A finding which is also articulated by the following quote:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;“The natural state of a football fan is bitter disappointment, no matter what the score.” ― Nick Hornby, Fever Pitch&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;So, what about sports spurs this masochism on such a massive scale? According to behavioural science, it’s a combination of psychological processes and cognitive biases:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Self-classification:&lt;/strong&gt; the tendency of people to place themselves into social categories. Eg.  Liverpool FC supporter, Indian, etc.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Rosy retrospection bias:&lt;/strong&gt; a cognitive bias that causes people to judge pleasant experiences from their past more favourably than they were experienced.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Social comparison:&lt;/strong&gt; the tendency of people to associate positive attributes to the social categories they identify with, and thereby also associate those attributes to themselves. This is a powerful agent in enhancing their self-esteem.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Positive outcome bias:&lt;/strong&gt; a cognitive bias that causes people to overestimate the likelihood of positive outcomes eg. winning a trophy, an underdog victory, etc.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So, we usually start supporting sports teams due to our inherent need to identify with social groups. These allegiances are fortified by positive experiences in the early days, which we retrospectively judge more positively than they actually were. We also associatively apply these positive perceptions to ourselves, thereby improving our own self-esteem. We then attribute an unreasonably high likelihood to the recurrence of these positive events, and this allows us to indulge in the romanticism of sports fandom despite all the inevitable gloom and disappointment it’s going to bring our way.&lt;/p&gt;
&lt;p&gt;All of this makes sense. It all adds up. And as someone who believes himself to be something of a rationalist, I can understand why there’s every reason to be circumspect when diving into the rabbit-hole that is sports fandom.&lt;/p&gt;
&lt;p&gt;And yet, I wouldn’t trade it for anything.&lt;/p&gt;
&lt;p&gt;I was heartbroken for weeks when LFC lost the Champion’s League final last year. I was reduced to a soppy mess of happy tears, 4 weeks ago when they staged the most unlikely of comebacks against Barcelona. I was distraught 4 days later when they missed out on winning the Premier League by a point. And I was shaking with emotion last night as I witnessed Jurgen Klopp and his magnificent Reds banish the demons of seasons past and lift the most sought-after trophy in club football. But somehow this roller-coaster of emotions, no matter its inclination to tend towards the lows, feels like the argument &lt;em&gt;for&lt;/em&gt; rather than &lt;em&gt;against&lt;/em&gt; supporting your team.&lt;/p&gt;
&lt;p&gt;On an &lt;a href=&quot;https://www.wnycstudios.org/story/153807-skin-game&quot;&gt;episode of RadioLab&lt;/a&gt;, Stephen Dubner (author of &lt;a href=&quot;https://www.goodreads.com/book/show/1202.Freakonomics&quot;&gt;Freakonomics&lt;/a&gt;) spoke about the “immeasurable value” of sports fandom because of how it is representative of all our emotions, hopes and desires in life. It seems to carry all of the urgency of real-world conflict, without any of the consequences, and as such serves as a proxy to real-life, only better.&lt;/p&gt;
&lt;p&gt;I’m aware that the case made above suffers from the &lt;a href=&quot;https://en.wikipedia.org/wiki/Appeal_to_emotion&quot;&gt;“appeal to emotion” fallacy&lt;/a&gt;, but then again, the premise of this post is about reconciling oneself to the inherent irrationaity of supporting a sports team, not refuting it. I’ll conclude with another quote from Fever Pitch, that Dubner’s description overlaps quite nicely with:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;“…So please, be tolerant of those who describe a sporting moment as their best ever. We do not lack imagination, nor have we had sad and barren lives; it is just that real life is paler, duller, and contains less potential for unexpected delirium.” ― Nick Hornby, Fever Pitch&lt;/p&gt;
&lt;/blockquote&gt;</content:encoded></item><item><title><![CDATA[Buddhism & Programming]]></title><description><![CDATA[What happens when a guy’s vocational interest in Programming meets his recreational fascination with Buddhism? A thought-provoking (albeit…]]></description><link>http://akaash.xyz/buddhism-and-programming/</link><guid isPermaLink="false">http://akaash.xyz/buddhism-and-programming/</guid><pubDate>Thu, 27 Nov 2014 13:38:31 GMT</pubDate><content:encoded>&lt;p&gt;What happens when a guy’s vocational interest in Programming meets his recreational fascination with Buddhism?&lt;/p&gt;
&lt;p&gt;A thought-provoking (albeit, unproductive) evening spent trying to understand how programs should view time.&lt;/p&gt;
&lt;p&gt;Every time I’ve humoured my interest in Buddhist philosophy, I’ve always been struck by how its principles run orthogonal (if not downright antithetical) to those of Programming. Where Buddhism relies on the concepts of &lt;em&gt;anicca&lt;/em&gt; (impermanence of being), &lt;em&gt;dukkha&lt;/em&gt; (imperfection) &amp;#x26; &lt;em&gt;anatta&lt;/em&gt; (not self) to characterise sentience, programs depend on hard-edged entities, precision &amp;#x26; unambiguously defined rules &amp;#x26; identities. &lt;em&gt;Sunyata&lt;/em&gt; (a state of emptiness) is about the last thing a programmer experiences when he’s going about writing his code. And while the Noble Truths of Buddhism propound an outlook that should be bereft of expectations, Programming is all about defining deterministic systems that conform to the expectations of those that build and use them.&lt;/p&gt;
&lt;p&gt;So, ostensibly, it would appear that there isn’t much for Programming to learn from Buddhism.&lt;/p&gt;
&lt;p&gt;Recently, though, I was watching Rich Hickey’s talk, &lt;a href=&quot;http://www.infoq.com/presentations/Are-We-There-Yet-Rich-Hickey&quot;&gt;Are we there yet?&lt;/a&gt;, on the current state of programming. In it he talks about how the widely observed design practices of Object Oriented Programming (OOP) have come to conflate the actually distinct concepts of entities (putative things) &amp;#x26; states (values assumed by entities). This is a consequence of how our brains have been trained to perceive reality.&lt;/p&gt;
&lt;p&gt;A great analogy Hickey uses here is that of a river. He leads with this fascinating quote:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;No man ever steps in the same river twice.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;~Heraclitus&lt;/p&gt;
&lt;p&gt;As humans, we use abstractions to make sense of the world around us. The ‘river’ is but an abstraction for a large stream of water (which in itself is also an abstraction; but let’s not overcomplicate this for now) flowing from one point to another. But when broken down, it’s nothing but some water at a point in space and then later other water at that same point. ‘River’ is just the identity we’ve superimposed on the water and the continuum of its states at different points in time. In doing so, we’ve succumbed to one of the pitfalls of OOP, wherein we fail to distinguish between entities and their many states over time.&lt;/p&gt;
&lt;p&gt;This is where Immutability (especially as implemented in languages like Clojure) shines by preserving all the states of entities over time and treating them as what they are — unchangeable snapshots of the entity’s existence at specific points in time. So, when viewed, the entity is representative of its state only at that point in time. This makes the entity immutable. The entity never changes, it just associates itself with different, causally-related states.&lt;/p&gt;
&lt;p&gt;Poetically beautiful, is how I’d describe the resonance this has with the Buddhist view of time — which is that there is no time. Only an illusion of it; that stems from the series of “epochal transitions” we observe entities going through. Nowhere is this view more eloquently articulated than in these lines from one of my favourite books, &lt;a href=&quot;https://www.goodreads.com/book/show/52036.Siddhartha?ac=1&quot;&gt;Siddhartha&lt;/a&gt;. In them, the protagonist, Siddhartha, arrives at an epiphany after spending time by a — wait for it — &lt;em&gt;river!&lt;/em&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;“Did you,” so he asked him at one time, “did you too learn that secret from the river: that there is no time?”&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;[…]&lt;/p&gt;
&lt;blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;“Yes, Siddhartha,” he spoke. “It is this what you mean, isn’t it: that the river is everywhere at once, at the source and at the mouth, at the waterfall, at the ferry, at the rapids, in the sea, in the mountains, everywhere at once, and that there is only the present time for it, not the shadow of the past, not the shadow of the future?”&lt;/p&gt;
&lt;p&gt;If programs were to also give up this illusion of time and embrace the concept more as a progression of instants, a succession of indelible ’now’-s, we’d actually be moving to a model much better equipped to handle the challenges of concurrency &amp;#x26; parallelism, that arise with modern computing architecture.&lt;/p&gt;
&lt;p&gt;It’s funny how two seemingly divergent outlooks — one based on immutability and another entrenched in impermanence can find common ground on something as fundamental as time. But it’s nice to find that Programming can in fact learn from Buddhism, even if it involves a significant amount of un-learning on the part of programmers in viewing not just their code, but also the world.&lt;/p&gt;</content:encoded></item><item><title><![CDATA[Words! What're they good for?]]></title><description><![CDATA[Edgar Rice Burroughs once famously called all humans “creatures of habit”. And while I cannot, in all honesty, extricate myself from that…]]></description><link>http://akaash.xyz/words-good/</link><guid isPermaLink="false">http://akaash.xyz/words-good/</guid><pubDate>Sat, 03 May 2014 09:07:20 GMT</pubDate><content:encoded>&lt;p&gt;Edgar Rice Burroughs once famously called all humans “creatures of habit”. And while I cannot, in all honesty, extricate myself from that generalisation, I’m definitely not one who unqualifiedly subscribes to the power of ritual.&lt;/p&gt;
&lt;p&gt;Friday evening hijinks being the exception, of course.&lt;/p&gt;
&lt;p&gt;Because if there were ever a ritual that stood for all that was good and noble; one which separated us from the savages - it would have to be the exercise of seeking merriment after a long, arduous work-week. In my personal experience, numerous factors have contributed to the long-standing charm of Friday evenings - alcohol, company, but most importantly… conversation.&lt;/p&gt;
&lt;p&gt;Yep! That ancient, endangered artform that we’ve happily traded in for uninterrupted access to Whatsapp messages, work e-mails, and Facebook updates. I mean, I like “social” networking as much as the next guy, but nothing will ever compare to the satisfaction I derive from some good ol’ solid, non-electronic conversation.&lt;/p&gt;
&lt;p&gt;An excellent illustration of this being last evening, when a friend and I were discussing the kind of lyrical content we tend to appreciate in our music. It started with him expressing his admiration for Nas’ N.Y. State of Mind and some of the lines in them. In particular, these:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;It drops deep as it does in my breath&lt;/p&gt;
&lt;p&gt;I never sleep, cause sleep is the cousin of death&lt;/p&gt;
&lt;p&gt;Beyond the walls of intelligence, life is defined&lt;/p&gt;
&lt;p&gt;I think of crime when I’m in a New York state of mind&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Rap Genius has &lt;a href=&quot;http://rapgenius.com/Nas-ny-state-of-mind-lyrics&quot;&gt;annotated explanations&lt;/a&gt; (some by Nas himself) for the entire song, so I’m not gonna go into that. But what was particularly interesting about this was that while I found the song and those lyrics undeniably powerful, I didn’t quite share the same level of appreciation as my friend for that brand of song-writing. Let the record show that I think Nas is as good a rapper as any, and this is in no way a criticism of him. The guy is a bona fide genius. My point is about the larger theme of abstruse lyricism. Turns out what I appreciate slightly less about Nas (and other lyricists such as him) is exactly what everyone loves him for - his intentionally open-ended rhymes.&lt;/p&gt;
&lt;p&gt;(Interesting aside: this is exactly what Jay-Z used as ammunition against Nas in his diss track, &lt;a href=&quot;http://rapgenius.com/183569/Jay-z-blueprint-2/And-yall-buy-the-shit-caught-up-in-the-hype-cause-the-nigga-wear-a-kufi-it-dont-mean-that-he-bright-cause-you-dont-understand-him-it-dont-mean-that-he-nice-it-just-means-you-dont-understand-all-the-bullshit-that-he-write&quot;&gt;Blueprint 2&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;My appreciation is a lot stronger for lyrics that paint a very vivid picture and leave it to you to extrapolate the interpretation of it to your own life experiences. The counter-example I offered was from a song I was listening to earlier that day.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Well all the Apostles, they’re sitting in swings&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;Saying, “I’d sell off my Savior for a set of new rings&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;And some sandals with the style of straps that cling best to the era”&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;That’s the first verse from Modest Mouse’s Bankrupt on Selling. While the song’s about the pitfalls of capitalism, the lyrics above although very explicit in what they’re talking about are equally applicable to the theme of the song as they could be to greed and/or betrayal. The fluidity with which the song plays to your current mood in the moment is what I appreciate more than the brilliance that you might uncover during a post-mortem dissection of the lyrics.&lt;/p&gt;
&lt;p&gt;I hadn’t hitherto realised this about my preferences towards lyrical content, but once I had, it came as no surprise that my admiration has always been particularly strong for artists such as Bruce Springsteen, Morrissey, Ben Gibbard, etc. who find beautifully vivid ways of presenting the simplest of concepts, thereby lending it &lt;em&gt;just enough&lt;/em&gt; ambiguity to make it feel different to every ear on every play.&lt;/p&gt;</content:encoded></item><item><title><![CDATA[Extraction-Based Text-Summarization: A Naive Approach]]></title><description><![CDATA[I’ve always found Natural Language Processing (NLP) quite interesting, and a few times have toyed with the idea of exploring it a little…]]></description><link>http://akaash.xyz/text-summarisation/</link><guid isPermaLink="false">http://akaash.xyz/text-summarisation/</guid><pubDate>Thu, 24 Apr 2014 09:06:55 GMT</pubDate><content:encoded>&lt;p&gt;I’ve always found Natural Language Processing (NLP) quite interesting, and a few times have toyed with the idea of exploring it a little more seriously. The buzz around recent YC alum, &lt;a href=&quot;http://wit.ai&quot;&gt;Wit.AI&lt;/a&gt;, finally spurred me into action and I decided to give it a shot.&lt;/p&gt;
&lt;p&gt;As with anything, the toughest part was getting started. NLP, despite being a discipline in its nascency, is actually quite expansive in its scope. So, I decided to go for low hanging fruit and start with text-summarization.&lt;/p&gt;
&lt;p&gt;I came across &lt;a href=&quot;http://thetokenizer.com/2013/04/28/build-your-own-summary-tool/&quot;&gt;this&lt;/a&gt; algorithm. It seemed to take a naive extraction-based approach to text-summarisation and looked like something that should’ve worked well. Upon using an implementation of it on random articles from the internet, I was somewhat disappointed with the results. That’s when I found &lt;a href=&quot;https://github.com/philplckthun/node-sumuparticles&quot;&gt;this&lt;/a&gt; implementation of essentially the same algorithm, but with a slight tweak that improves results significantly.&lt;/p&gt;
&lt;p&gt;To explain it briefly, the algorithm converts a body of text into a fully-connected, weighted graph, wherein every sentence is a node in the graph and its edges connect it to every other sentence/node in the graph. The weight associated with every edge is an “intersection score” which quantifies how much the two sentences connected by the edge have in common. Finally, the sum of all the intersection-scores/edge-weights of a sentence/node is determined. The sentences with high scores are assumed to be “key sentences” because they have more in common with the other sentences and are thus included in the summary.&lt;/p&gt;
&lt;p&gt;I’ve created a small app that uses the modified implementation &lt;a href=&quot;http://tldr-app.herokuapp.com/&quot;&gt;here&lt;/a&gt;. And the code for it can be found &lt;a href=&quot;https://github.com/akaashanky/tldr&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;</content:encoded></item><item><title><![CDATA[Self-centeredness]]></title><description><![CDATA[Here is just one example of the total wrongness of something I tend to be automatically sure of: everything in my own immediate experience…]]></description><link>http://akaash.xyz/self-centeredness/</link><guid isPermaLink="false">http://akaash.xyz/self-centeredness/</guid><pubDate>Thu, 20 Mar 2014 09:33:18 GMT</pubDate><content:encoded>&lt;blockquote&gt;
&lt;p&gt;Here is just one example of the total wrongness of something I tend to be automatically sure of: everything in my own immediate experience supports my deep belief that I am the absolute center of the universe; the realest, most vivid and important person in existence. We rarely think about this sort of natural, basic self-centeredness because it’s so socially repulsive. But it’s pretty much the same for all of us. It is our default setting, hard-wired into our boards at birth. Think about it: there is no experience you have had that you are not the absolute center of. The world as you experience it is there in front of YOU or behind YOU, to the left or right of YOU, on YOUR TV or YOUR monitor. And so on. Other people’s thoughts and feelings have to be communicated to you somehow, but your own are so immediate, urgent, real.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;-David Foster Wallace&lt;/p&gt;</content:encoded></item></channel></rss>