My Year in 2021

In 2021, I made 3 resolutions. Lose 10 kgs. I lost 5 kg in 3 months. But gained it back by the year-end. Fail big. I practiced confronting people – and failed. I still run from fights. Even when important. Calendar integrity. I stuck to my calendar 90% of the time. But personal commitments slipped. On learning, I discovered network clusters. My PyCon talk on movie networks is the start of a fascinating exploration of actors that I’ll write more about. ...

Books in 2021

On my Goodreads 2021 reading challenge, I read 52/50 books in 2021. I managed 47/50 in 2020 (see 2020 reviews) and 26/24 in 2019. Here’s what I read (best books first). Mind-blowing The Almanack of Naval Ravikant. It’s the best non-fiction I’ve read in 5 years. It focuses Wealth and Happiness. It’s short. I finished it in a day. But it’s deep. I can spend a decade practicing just a single sentence. It’s available at navalmanack.com as a free e-book and audio book. Rhythm of War. The 4th book of the Stormlight Archives is an action-packed fantasy. A great gift for teenagers. In an extra-ordinary magic system, Brandon Sanderson builds up to the greatest climax I’ve read. What an ending! Death Note #1-#12. Light Yagami gets hold of a “death note”. If he writes a name on it, they die. “L” is out to catch him. In a cat-and-mouse psychological thriller, Light and L work next to each other, share their plans, and still try to outwit the other. It’s like chess. The pieces are visible. But it’s the strategy that counts. A brilliant comic series. Life-changing ...

Picking gifts is hard

What do you pick for someone you don’t know well enough? I generally pick books. I know books well enough to match them to people’s personalities. Even if they’re not a book reader. (The risk is that they might have already read the book.) As for the kids, toys like the tiny tower diy playhouses for sale would bring them so much joy. The other safe item is food. Chocolates, dry fruits, etc. Everyone likes them. (Even if they’re dieting, dry fruits and dark chocolates are fine.) ...

Cyborg scraping

LinkedIn has a page that shows the people who most recently followed you. At first, it shows just 20 people. But as you scroll, it keeps fetching the rest. I’d love to get the full list on a spreadsheet. I’m curious about: What kind of people follow me? Which of them has the most followers? Who are my earliest followers? But first, I need to scrape this list. Normally, I’d spend a day writing a program. But I tried a different approach yesterday. ...

Designing Complex Shapes in PowerPoint

I use PowerPoint instead of Adobe Illustrator or Sketch. I’m familiar with it, and it does everything I need. One of the features I’m really excited by in PowerPoint is the ability to manipulate shapes. Let’s say you have a rectangle and a circle. You can select both of these shapes and in the Shape Format > Merge Shapes dropdown, you can: merge them with a union combine them (like an XOR operation in Boolean algebra) fragment them, which breaks them up into pieces intersect them subtract them This is so powerful that you can create any kind of shape. Let’s take an icon from Font Awesome at random – say an address card – and create it. ...

Jolie No. 1

There are more Bollywood actors in Hollywood. Some are even turning down Hollywood roles. So we wondered: How easily can a Bollywood actor connect to a Hollywood actor? As part of the Oct 2019 Gramener data story hackathon, Anand, Kishore, and Niyas created a Jolie No 1 — a data video where [Govinda](https://en.wikipedia.org/wiki/Govinda_(actor) announces (in our imagination) that he will act with Angelina Jolie in Jolie No 1, but declines to comment on who introduced them. We picked a theme first The hackathon theme was “movies”. We explored 5 themes: ...

How to direct a data movie

Ganes and I created a data movie on speed-cubing records as part of a Gramener hackathon. Here’s a video of us talking about how we created it. Anand: We picked the Rubik’s cube story for this hackathon. Tell me more about how this excited you. Ganes: Since my son started solving the Rubik’s cube a few months back, I’ve been fascinated with these competitions. I still don’t know how to solve it, but I like watching it. ...

2 inches will change my life

I walked ~11 million steps in the last 3 years, at ~10K steps daily. Since 1 Jan 2018, I've steadily increased my walking average until Aug 2018. Then my legs started aching. So I cut it down until Jan 2019. In Feb, I resumed and was fairly steady until May 2020. To complement workouts like this, products that are aimed for men over 50 can be used. In May, my wife refused to let me walk for more than an hour a day. It took me a few months to convince her and level up. I ended 2020 averaging a little over 10K steps for the year. ...

My year in 2020

In 2020 I made 3 resolutions. Read 50 books. I almost made it. Here are my reviews. Walk 10,000 steps daily. I managed it, like the last two years. Lose 2 kgs. I failed – and instead, put on 6 kgs. On self-improvement, I completed a Landmark course and an Art of Living course. Both had a huge productivity impact. (Mail me for details.) On software, I starting playing Minecraft and moved from Gmail to Windows 10 Mail. More on this. ...

Walking 10,000 steps a day

Since 2018, I’ve been walking ~10,000 steps a day. Here’s my journey.

Books in 2020

My Goodreads 2020 Reading Challenge target is 50 books. I’m at 45/50, with little hope of getting to 50. (I managed 25/24 in 2019.) The 10 non-fiction books I read (most useful first) are below. The Lean Startup by Eric Reis. The principle of Build - Measure - Learn is useful everywhere in life too, not just in startups. Never Split The Difference by Chriss Voss. Shares principle-driven strategies to convince people. The 4 Disciplines of Execution by McChesney, Covey & Huling. Teaches how to build execution rigor in an organization. A bit long at the end, but the first section is excellent. Sprint by Jake Knapp. A detailed step-by-step guide to running product development sprints that you can follow blindly. How to Fail at Almost Everything and Still Win Big by Scott Adams. Dilbert’s author shares his strategies for life. Very readable, intelligent, and slightly provocative, but always interesting. The Five Dysfunctions of a Team by Patrick Lencioni. Written as a story (like The Goal). Talks about the 5 problems in teams and how to overcome them. The Culture Code by Daniel Coyle. Explains the elements of strong cultures - belongingness, shared vulnerability, and shared purpose. Data-Driven Storytelling by Nathalie Henry Riche et al. Shares the latest points of view on telling data stories. My team and I read these chapters as a group. Leaders Eat Last by Simon Sinek. Inspiring when I read it, but I don’t remember what it said. Deep Work by Cal Newport. Shares tactics to focus. Practical and useful. I also started, by haven’t finished these four: ...

Happiness generator

In my current thrust towards greater management responsibilities, I have discovered a mechanism for generating happiness. I set up meetings on important topics. That makes me happy – I’m driving something useful. Often, the meeting gets cancelled. That makes me happy – I’ve more free time. It’s the perfect perpetual motion machine. Comments Vasant 10 May 2016 11:58 pm: Ha ha! Love it. Madan 30 Mar 2019 9:00 pm: Often, the meeting gets cancelled. That makes me happy — I’ve more free time. What a positive thinking Sir Jee !! vikram 5 May 2016 6:04 pm: i am a non tamil .i have a piece of music and i want to know which song is it exactly.This was briefly played in the movie madras cafe starring john abraham.can u just help me wih that song . Kindly ping me to my mail i ll share that piece with you udayamoorthy v 23 May 2016 12:34 pm: That’s Great Idea. Kind of Win Win Situation. Happy to see you in the blog after a long time. I used to view your older posts regularly . All are great. Thanks Regards Uday Chirag 25 Sep 2017 9:03 pm: Haha ! Thats clever :)

Dissecting my Airtel bills

My monthly postpaid mobile bills have been in the Rs 2,000 – Rs 3,000 range for some time now, and I spent a few hours dissecting them yesterday. Page 3 had the good stuff. It’s a little hard to figure out, but what the last 2 columns say is that most of my spend is offset by discounts. What’s not getting offset are outgoing roaming calls. Followed by calls to local landlines. For all practical purposes, that’s the only thing that counts in this bill. Everything else is close enough to zero. ...

Why I’m blogging less

My blog’s been through a number of phases. Between 1996 – 1999, it was just a website with a few facts about my and some of my juvenile ramblings. Inspired by robotwisdom.com, I converted it into a blog – except that I didn’t know what blogging was and just called it “updating my site every day.” It was mostly a link blog. In 2006, around the time when I moved from Mumbai to London, I reduced my link-blogging and started writing longer articles talking about my experiences. This was a fairly productive phase, and I was churning a few dozen articles every year until 2012. ...

A utilitarian’s apology

A couple of years ago, my HTC Explorer’s screen died. I bought a Micromax A50. This triggered a series of reactions prompting this post. I have many defects. Like most men, I can’t tell colours apart – like the difference between pink and purple – and am constantly corrected by my six-year-old. I can’t hear two people at the same time – or even in-between each other. I can’t find things outside of my narrow field of vision. I can’t recognise faces, and need at least three one-on-one interactions before I place people. (If you ask me “Do you recognise me?” and I say “Yes, of course!”, I’m usually lying.) I can’t place voices on the phone. My memory is terrible – my wife’s learnt to make me write errands on my laptop. I cannot identify cars – in fact, I couldn’t drive until recently. ...

Weight lines, again

A few years ago, I ended up losting weight, mostly by dieting. That worked out rather well up to a point: I lost about 20kgs rapidly. But I ended up putting them back on almost as rapidly. What I learnt from this was that dieting made me more short-tempered. It also reduced my metabolic rate. My body would adjust to the hunger and enter a “starvation-mode”, using the limited food ridiculously efficiently. So I’d have to eat even less to continue losing weight. ...

Courtesy

We are often subject to body searches, baggage inspections, and identity verifications. At malls. At airports. At offices. These are to ensure that no one carries ammunition inside, or goods or secrets outside. In other words, to deter terrorists and thieves. It’s nothing personal, of course. When someone does not know me, I can choose to accept that (or not; the choice is mine). When I’m invited somewhere, however, I assume that I am not deemed a security threat. Therefore, I expect that: ...

Open source in corporates

[This is a post that I’d published internally in InfyBlogs in Dec 2009. Time to share it.] Last month, my first application went live. I’ve been writing code for 20 years. Not one line of my code has been officially deployed in a corporate. (Loser…) It’s a happy feeling. Someone defined happiness as the intersection of pleasure and meaning. Writing code is pleasurable. Others using it is meaningful. But this post isn’t quite about that. It’s about the hoops I’ve had to jump through to make this happen. ...

The scary Internet

I’m not that difficult to scare, and this log message certainly didn’t help: ip223.hichina.com [223.4.183.127] failed - POSSIBLE BREAK-IN ATTEMPT! That’s the message I saw – one thousand five hundred and seventy times yesterday in /var/log/auth.log on one of my Amazon EC2 instances. Someone, presumably from China, has been patiently trying out a variety of SSH keys to log into this system. These were grouped as batches. There were exactly 314 attempts at 8am yesterday, then 314 at 12noon, then 314 at 4pm, then 314 at 8pm, then 232 at 3am today. (All times are in UTC – that is, UK time without daylight saving). Every burst took 9 minutes to run through all 314 attempts. The worst part was, when I tried using SSH this morning, I wasn’t able to log in. (It turned out that I had made a configuration error, but this is the sort of thing that gets me quite worried.) Perhaps I shouldn’t be complaining. I’ve written enough scrapers to make most webmasters cringe at their logs. I remember a few years ago, when I was working on a project at Tesco, and was scraping bestsellers lists from most sites. (Here’s a blog post about it.) We were putting together a prototype to see how real-time competitive pricing could help. The scraper was a pretty mild one. It would visit a hundred links, roughly at the pace of one a second. No images were loaded, of course, just the HTML. One fine day, a few weeks after this had started, I got a call from Andy. “Hi Anand, are you running any scrapers on our books website?” “Yes, why?” “Oh! The site’s very slow. Could you shut it down immediately?” Turns out that not a single page on the site loaded, and it had almost crawled to a halt. Now, obviously, my little 100-page script could hardly cause damage, but it’s easy to understand their reactions. No unauthorised scraping! After a few days of trying to figure out what the problem was, they increased the memory and things went back to normal. Not a bad solution, actually – throw hardware at the problem, and if it vanishes, it’s probably the cheapest solution. But anyway, I’m sure it’s some nice chap who’s just curious to know what I’ve got on my servers. I’d be happy to share some of it. And even if it’s not so nice a chap, there’s little that I can do, is there? Update (1pm India, 3rd June): Actually, I now realise that this has been happening ever four hours since May 29th, as regular as a clockwork. Wish I knew enough UNIX programming to pull a prank… ...

Hosting options

I've been trying out a number of options for hosting recently, and have settled on Amazon spot instances. Here were my options: Application hosting, like Google AppEngine. I used this a lot until 2 years ago. Then they changed their pricing, and I realised what “lock-in” means. I can’t just take that code and move it to another server. Besides, I’m a bit wary of Google pulling the plug. Heroku? Same problem. I just want to take the code elsewhere and run it. Shared hosting, like Hostgator. This blog is run on Hostgator and I’m extremely happy with them. But the trouble is, with shared hosting, I don’t get to run long-running processes on any ports I like. Run you own servers. The problem here is quite simple: power cuts in India. Dedicated hosting, like Amazon EC2, Azure, GCE, etc. This remains as pretty much the main hosting option I’m a price optimisation freak. So I ran the numbers for a year’s worth of usage. I was looking at the CPU cost of a large machine with 7-8GB RAM. Bandwidth and storage are negligible. The cost per hour worked out to: ...