Book Review: Kafka on the Shore

This book was… weird, but in a good way. Normally, I’m not a fan of magical realism. I generally prefer dead people to stay dead and cats to meow instead of delivering lengthy expositions about other worldly creatures. But, I absolutely love the way Murakami writes, and I couldn’t keep delaying this book any longer. As always, Murakami does not disappoint when it comes to prose and flow. The plot progresses pretty fluidly for 3/4 of the book, and despite the supernatural elements, I was genuinely curious to know how the various plot threads would untangle and reconcile. The last 1/4th of the book was slightly heavy on metaphors, and I felt there was a bit too much going on at the same time. ...

2021-08-29 · Athul Suresh

Faster Multitasking with Hammerspoon

When I’m working, I usually have at-least 4 windows open including Slack, Chrome, iTerm and a few other stuff. Lately, I’ve noticed that switching between them via cmd+tab is turning out to be a waste of time, since the order of the apps keep changing based on how recently they were used. I wanted a smoother transition between my umpteen apps without getting stuck in cmd+tab hell. I needed static key-bindings! ...

2021-07-11 · Athul Suresh

Sneaky Defers In Go

What do you think the output of the following code would be? package main import "fmt" func main() { input := "hello" TestDefer(&input) } func TestDefer(input *string) { defer fmt.Println(*input) *input = "world" fmt.Println(*input) } Given how defer-ed functions are executed just before the parent function exits, I expected the output to be world world But, on execution it actually prints world hello This is because the arguments are evaluated when the defer is encountered, and not when the deferred function is actually called. Effective Go even has a line specifically about this behavior (which I discovered later). ...

2021-07-06 · Athul Suresh

Writer's Block

A while back, I came across this article by Josh Branchaud where he talked about TIL posts and learning in public (among many other things). This really appealed to me. Over the years, I had accumulated immense amount of information from posts and articles that people had put out and the whole idea of paying it forward by putting out things that I’d learned along the way sounded interesting. The primary impediment I faced here was the amount of time it took to create a well-crafted post. Most of the longer pieces here were summaries of months of effort squeezed into a single page post with pictures. Those were few and far apart. ...

2021-07-04 · Athul Suresh

Book Review: Normal People

Do I hate this book? Yes. Why do I hate this book? Like the confused protagonists, I don’t have a clear answer for that. Let me get the good part out of the way, so that I can thoroughly whine about just how much this book irritated me. I’m a sucker for books that focus on and obsess over the inner workings of the protagonists. There is no grand adventure or suspense here. It is the inner monologue and emotional turmoil of two characters that drive the plot, which I absolutely love. There is a certain degree of introspection that took place whenever I saw a part of myself streaked across early Connell’s mannerisms or in how he viewed the motivations or repercussions of his actions. ...

2021-07-02 · Athul Suresh