Move to Substack?

Ever since I acquired this domain name (back in 2008), this blog has been hosted on WordPress. However, now I’m starting to wonder if I should port it to Substack (the URL will remain the same). Let me explain why.

Recently, the admins at Substack wrote an article that “blogging boom is back“. Quoting,

What we’re seeing now feels a lot like that early blogging boom. There was an intimacy we felt reading our favorite blogs, a personal connection to the writers and the communities that grew around them. We stacked our Google Reader with their RSS feeds and turned to them for restaurant recommendations, recipes, home decor trends, crafting inspiration, gossip, political analysis, and life advice. Writers on Substack are providing that same intimacy and connection with the communities they create. No media conglomerates edit their words and ideas. We have access to our favorite writers, just as we did in those fast blogging days. We see ourselves in the personal stories they share; we trust them.

Having started (and not really continued) some five or six substacks in the last five years, I broadly agree to this sentiment. And the reason why I feel like Substack might be “the old blogging in a new form” is due to comments. People actually comment on Substack, unlike on WordPress.

I was reading a friend’s substack yesterday, and noticed a possibly Freudian slip. I quickly hit the comment button and shot off a comment. As of this morning, he has already seen it and replied. This was a regular feature on the blogosphere in the late 2000s. In the 2010s, this kind of behaviour simply died.

And coming to think of it, it possibly has to do with user experience. The user experience for commenting on WordPress absolutely sucks. There is no concept of login across sites (I don’t know when this “openID” was last maintained). So every time you need to write a comment, you need to enter your name, email, website, and maybe even fill a captcha before your comment gets accepted. And that is IF your comment gets accepted (the number of times I’ve written an elaborate comment and seen it NOT go through is insane).

Two decades ago, when blogging was big and growing rapidly, people used to leave comments on one another’s blogs. A LOT. In fact, I discovered a lot of blogs I followed back in the day by following comment trails from blogs that I already liked. It could occasionally be riotous, like on this legendary post by Ravikiran Rao.

And then sometime in 2010 or 11, it all stopped. Almost all of a sudden. I have statistics on number of comments per post on this blog over the years, but right now NED to pull it up (and also, the commenting was heavier when this site was on LJ). Suddenly people stopped commenting. And I think this had an impact on blogging as well. With little or no feedback, people didn’t feel like writing.

People started talking about the death of blogs. Sometimes, writing this would feel like shouting into an empty room. Then again, I’ve considered this as a documentation of my life and my thoughts (and your benefits, if any, being strictly collateral), and carried on.

What Substack seems to have shown is that the appetite for blogging didn’t go away. The appetite for commenting also didn’t go away. It’s only the user experience. Over the years, maybe coinciding with WordPress being the dominant blogging platform (and WordPress being more popular for making websites than for blogs), the user experience of commenting deteriorated. And as people commented less, they blogged less.

Now, looking at the comment density on Substack, I’m seriously considering if I should make a shift there. Still need to see how easily I can port all of this stuff without breaking. But if I can, I might just. What do you think? Do leave a comment (and if you think this blogpost is too hard to comment on, maybe comment on this “note” instead).

The Second Great Wall (of programming)

Back in 2000, I entered the Computer Science undergrad program at IIT Madras thinking I was a fairly competent coder. In my high school, I had a pretty good reputation in terms of my programming skills and had built a whole bunch of games.

By the time half the course was done I had completely fallen out of love with programming, deciding a career in Computer Science was not for me. I even ignored Kama (current diro)’s advice and went on to do an MBA.

What had happened? Basically it was a sudden increase in the steepness of the learning curve. Or that I’m a massive sucker for user experience, which the Computer Science program didn’t care for.

Back in school, my IDE of choice (rather the only one available) was TurboC, a DOS-based program. You would write your code, and then hit Ctrl+F9 to run the program. And it would just run. I didn’t have to deal with any technical issues. Looking back, we had built some fairly complex programs just using TurboC.

And then I went to IIT and found that there was no TurboC, no DOS. Most computers there had an ancient version of Unix (or worse, Solaris). These didn’t come with nice IDEs such as TurboC. Instead, you had to use vi (some of the computers were so old they didn’t even have vim) to write the code, and then compile it from outside.

Difficulties in coming to terms with vi meant that my speed of typing dropped. I couldn’t “code at the speed of thought” any more. This was the first give up moment.

Then, I discovered that C++ had now got this new set of “standard template libraries” (STL) with vectors and stuff. This was very alien to the way I had learnt C++ in school. Also I found that some of my classmates were very proficient with this, and I just couldn’t keep up with this. The effort seemed too much (and the general workload of the program was so high that I couldn’t get much time for “learning by myself”), so I gave up once  again.

Next, I figured that a lot of my professors were suckers for graphic UIs (though they denied us good UX by denying us good computers). This, circa 2001-2, meant programming in Java and writing applets. It was a massive degree of complexity (and “boringness”) compared to the crisp C/C++ code I was used to writing. I gave up yet again.

I wasn’t done with giving up yet. Beyond all of this, there was “systems programming”. You had to write some network layers and stuff. You had to go deep into the workings of the computer system to get your code to run. This came rather intuitively to most of my engineering-minded classmates. It didn’t to me (programming in C was the “deepest” I could grok). And I gave up even more.

A decade after I graduated from IIT Madras, I visited IIM Calcutta to deliver a lecture. And got educated.

I did my B.Tech. project in “theoretical computer science”, managed to graduate and went on to do an MBA. Just before my MBA, I was helping my father with some work, and he figured I sucked at Excel. “What is the use of completing a B.Tech. in computer science if you can’t even do simple Excel stuff?”, he thundered.

In IIMB, all of us bought computers with pirated Windows and Office. I started using Excel. It was an absolute joy. It was a decade before I started using Apple products, but the UX of Windows was such a massive upgrade compared to what I’d seen in my more technical life.

In my first job (where I didn’t last long) I learnt the absolute joy of Visual Basic macros for Excel. This was another level of unlock. I did some insane gymnastics in that. I pissed off a lot of people in my second job by replicating what they thought was a complex model on an Excel sheet. In my third job, I replaced a guy on my team with an Excel macro. My programming mojo was back.

Goldman Sachs’s SLANG was even better. By the time I left from there, I had learnt R as well. And then I became a “data scientist”. People asked me to use Python. I struggled with it. After the user experience of R, this was too complex. This brought back bad memories of all the systems programming and dealing with bad UX I had encountered in my undergrad. This time I was in control (I was a freelancer) so I didn’t need to give up – I was able to get all my work done in R.

The second giving up

I’ve happily used R for most of my data work in the last decade. Recently at work I started using Databricks (still write my code in R there, using sparklyr), and I’m quite liking that as well. However, in the last 3-4 months there has been a lot of developments in “AI”, which I’ve wanted to explore.

The unfortunate thing is that most of this is available only in Python. And the bad UX problem is back again.

Initially I got excited, and managed to install Stable Diffusion on my personal Mac. I started writing some OpenAI code as well (largely using R). I started tracking developments in artificial intelligence, and trying some of them out.

And now, in the last 2-3 weeks, I’ve been struggling with “virtual environments”. Each newfangled open-source AI that is released comes with its own codebase and package requirements. They are all mutually incompatible. You install one package, and you break another package.

The “solution” to this, from what I could gather, is to use virtual environments – basically a sandbox for each of these things that I’ve downloaded. That, I find, is grossly inadequate. One of the points of using open source software is to experiment with connecting up two or more of them. And if each needs to be in its own sandbox, how is one supposed to do this? And how are all other data scientists and software engineers okay with this?

This whole virtual environment mess means that I’m giving up on programming once again. I won’t fully give up – I’ll continue to use R for most of my data work (including my job), but I’m on the verge of giving up in terms of these “complex AI”.

It’s the UX thing all over again. I simply can’t handle bad UX. Maybe it’s my ADHD. But when something is hard to use, I simply don’t want to use it.

And so I’m giving up once again. Tagore was right.

Fancy stuff leads to more usage

A couple of months back, I decided to splurge a bit and treat myself to a pair of AirPods. Not the Pro version, which hadn’t yet been released, but this was the last generation. For someone who had hardly ever bought earphones in life (mostly using the ones that came bundled with phones), and for someone who would incessantly research before buying electronics, this counted as an impulse purchase.

A few months back a friend had told me that he had researched all the earphones in the market, and concluded that the best one for making calls is the AirPods. As it happens, he has an Android phone, and so decided it’s not worth it in the absence of an iPhone. And when he told me this, I figured that with an all-Apple lineup of devices, this is something I should seriously consider.

In the past I’d never been that much of a earphone user, mostly using them to listen to music when seated with my laptop outdoors. I hardly ever used them with my phone (a cable jutting out of the pocket was cumbersome). Based on that rationale, when I was in the market for a pair last year, I ended up buying a random cheap pair.

What my AirPods have shown me is that having a good device makes you use it so much more.

The UX on the AirPods is excellent and intuitive. Right now, for example, they’re connected to my laptop as I listen to music while writing this. If I were to get a call right now, I can very quickly switch them to pair with my phone, and talk on. And then after the call it’s two clicks to get them back to pair with the laptop.

This kind of experience is something that cannot be quantified, and because you cannot quantify and compare this across competing devices, in deep research you can miss out on this. This is one of those points that Rory Sutherland makes in Alchemy, which I read last month. And you fail to appreciate things like experience until you have really experienced it.

The amazing UX on the AirPods, not to talk about the great sound, means that I’ve, in a month, used them far more than I’d use other earphones in a year. Even when alone at home, I don’t blast music on my computer now – it’s always through the AirPods. I sometimes wear them while going on walks (though long walks are reserved for introspection with nothing streaming through my ears).

I was in Mumbai on Tuesday, and on the flight on both ways, I listened to podcasts using the AirPods. I’m surprised I had never thought of the idea before – it’s incredibly neat since you can close your eyes and listen, and sleep at your leisure. On commutes between meetings in Mumbai, I listened to podcasts in taxis. And so on.

So this is a learning for the next time – when I’m researching for a product that I think I may not use frequently, I need to keep in mind that if I like it I will use it far more than whatever it replaces. And if that is going to make my life better, the premium I would have paid for it will be really really worth it.

Oh, and coming back to AirPods, one question I keep getting is if they’re easy to lose. Based on the evidence so far, the biggest risk on that count is the daughter running off with one or both of them and misplacing them somewhere!