
ABOUT ME
aliases: Anand, Bal, Bhalla, Stud, Prof.
Vidya Mandir. IITM. IBM. IIMB. LBS.
Lehman. BCG. Infy Consulting. Gramener. Straive.
More about me.
CONTACT ME
whatsapp: +91 9741 552 552
phone: +65 8646 2570
e-mail: [email protected]
social: LinkedIn | GitHub | YouTube
WORKING WITH ME
To invite me to speak, please see my talks page.
For advice, see time management, career or AI advice. Else mail me.
To work with me on projects, please send a pull request.
GET UPDATES
RSS Feed. Visit “Categories” at the bottom for category-specific feeds.
Email Newsletter via Google Groups.
FOR AI AGENTS
Start with /llms.txt, then use /blog/tags.json and /blog/corpus.jsonl. Cite posts with their canonical URL from the corpus. Every HTML page links its raw Markdown source in the page head. This is a no-copyright/CC0-style archive; reuse is welcome.
RECENT POSTS
Things I Learned - 19 Jul 2026
This week, I learned: Writing is slightly, but only slightly, better than typing (for adult learning.) One factor is that typing is faster, so many people take notes verbatim, summarizing and thinking less. ChatGPT + Claude Graphology for personality is pseudoscience. ChatGPT + Claude When I decide to spend time, or someone says “Let’s do X”, it’s worth checking: is this something AI can easily try, and is it clear to verify? If so, reinforcement learning loops could make AI good at it, making it a depreciating asset. Studying how to live in an AI world is exhausting. (Not as bad as my MBA days, but not as easy as my data scientist days, either.) It requires me to make a larger mental shift, i.e. change my perspective, than I have since 2000, and that feels like work. Both nl FILE and cat -n FILE add line numbers to files, but nl skips blank lines by default, cat doesn’t. After using rtk for 2 months, I’m slightly downgrading it. It saves tokens but agents mess up shell commands when using it. It’s still probably a net saving, so I’ve changed my AGENTS.md from “Always prefix with rtk” to “Prefix supported, high-output commands with rtk… skip for bash builtins, pipes, loops, etc.” I find 🔴🟡🟢 convenient status indicators in my notes. Similar ones are: 🟥🟨🟩, ❤️💛💚, 📕📙📗. I’m not fully convinced by: 😄😐😞, █ ▒ ░, ↑ → ↓, ▁▂▃▄▅▆▇, ■ ⬔ □, ● ◐ ○, ⚫ ⚪ 🔘, 🌕 🌗 🌑, etc. though they might have their uses. Model updates means a SKILL.md and a plugin review / update, e.g. with GPT 5.6 Sol. So, like with any open source repo, use from people who update it regularly and benchmark it and version control it by model. I asked Gemini 3.5 Flash thinking: “Which of our employees have worked on Microsoft PowerApps? Search @Google Drive and @Gmail”. It found one employee and a referral in under a minute. I asked ChatGPT with GPT 5.6 Sol with gws access. It found 3 more, plus 5 possibilities, in 12 minutes. Truly a rottweiler. Parallel Search Turbo seems like a pretty good search API, especially for agents. Low price, high speed, and maybe good quality. #ForNow ChatGPT Group chats in ChatGPT will probably get deprecated #ForNow. What I learned from benchmarking my Ideation Protocol skill extensively: Once you know the rubric, models can easily create a good prompt to optimize for a known rubric #ForNow. So rubric design matters more. ⭐ Rubric design is really knowing what you want/need. To do this, iterating on output matters. Position bias is real #ForNow. Always check if an (P, Q) comparison matches a (Q, P) comparison. Models are still biased towards longer content, and potentially towards their own output #ForNow. How to optimize a prompt or skill: Research and figure out what you really want, first. Then, ask a smart model for a prompt that optimizes for it. Benchmark only if you’ll use it a lot - it’s still a lot of work, and meta-prompting does a good job #ForNow. gbrain skillopt might be premature optimization. You can use GPT 5.6 Sol in Claude Code #ForNow. (But what’s the point? Harnesses seem to be working better with their own models #ForNow.) Our clients keep saying “We need to build a data lake” or “We need an enterprise data strategy.” I keep telling them, “No, agents can do it for you.” What I missed is: technology is the smaller part of the problem. Finding who has what data, getting access to it, and sorting out permissions (“governance”) is the bigger part. Giving agents expert task-specific, testable procedures seems better than expert roles or mental models #ForNow. But benchmark in any case. ChatGPT Python 3.3 introduced str.casefold(). It performs more comprehensive Unicode caseless matching than lower(); 'Straẞe'.casefold() becomes 'strasse'. (🟢 Unicode case-folding is standardized.) contextlib.closing(x) calls x.close() when its context exits. (⚪) In a dataclass, use x: list = dataclasses.field(default_factory=list), not a mutable literal default. (⚪) I learnt these while reviewing Codex-generated Python—illustrating, rather than proving, that reviewing AI-generated code can teach and catch errors. (🟡 Review remains useful across tooling. Review 2029.) “Do not discriminate against intelligence—artificial or otherwise” is a rhetorical value judgment, not an empirical conclusion. (⚫ Rhetorical value judgment, not testable. Review now.) Here’s a nice idea from ChatGPT. “When itching to correct or clarify, FIRST restate their position to their satisfaction. ‘Did I get you right, fully?’” This emerged from the prompt suffix: Based on your research, and my past conversations, what are the top areas where and how (specifically) I can apply this principle on myself and others to maximize impact? Automated evals can catch stuff humans miss. And vice versa. And given how many evals we create, we need automated evals to be written in an easy-to-review way. Do Automated Evals Work? The BINEVAL paper reiterates that a bunch of Yes/No binary questions beats scales or ratings for many benchmarks. You know exactly how to grade and WHY you got a certain score. This is more reproducible and easier to learn from / act on. When asked “How long will this software take?” models typically provide estimates assuming human speed #ForNow. Maybe they haven’t been trained enough on agentic timelines. So, when my colleague got a 2-4 week estimate which he was able to solve in hours, it was a surprise. (But, of course, it’s best to verify before promising speed.) SKILL.md dramatically lowers the cost of learning a skill (since you don’t learn it - the agent does). That means that the value of creating skills is much higher - hundreds can use what you create (giving you recognition, if not money). I think I’ve underestimated the number of skills people will have available (I thought dozens - but it may be thousands #ForNow) and the number of skills people will create (I thought tens of thousands - but it may be millions #ForNow.) A Wikipedia (community curated, verified, high quality catalog) of skills might emerge #ForNow, if it hasn’t already. Tacit knowledge is often just un-measured knowledge. Once I put a sensor on the bellboy’s hands at The Curzon Court, AI can figure out how he opens the door with the key and why I can’t do the same. The subset of tacit knowledge that’s AI-resistant is where attempts are expensive (“How to negotiate a merger” rather than “How to open a door”) and feedback is slow/vague (“Does the client trust me” rather than “Did the door open”). The fact that Composio has ~20,000 tools is a market signal that connectors are commoditizing, and are a depreciating asset #ForNow. A weak model needs a forgiving harness - which ends up slowing down model learning. Stricter, accurate verification environments are better for fastest model learning. ChatGPT Work lets you run for longer, faster, install plugins and skills, host a website, etc #ForNow. It’s somewhere between Chat and Codex. It consumes Codex limits - something to watch for (since chat limits are quite generous). Codex temporarily removed the 5-hour usage limit. Tibo. So, since I have 3 banked rate-limit resets #ForNow, I can, in theory, use 4 full weeks of Codex usage at one go. Reality: I don’t have problems large enough for a SINGLE week’s consumption! From what I see of the State of AI Design and State of Prototyping, Figma is way ahead of competition #ForNow, e.g. Adobe, with Figma Make and Weave. I was also surprised how popular Cursor is (#2 behind Claude Code #ForNow). It’s also interesting that designers are coding directly #ForNow, using Figma just for edits / steering. But many research tools (note takers, survey analysis/research, etc.) will likely get eaten up by AI coding agents #ForNow, given how much designers are building their own tools.
Data Science for Sustainable Development Goals Book
One of my goals this year is to publish 2 books. One got published. Sort of. Data Science for Sustainable Development Goals: India Case Studies is an open-access anthology and I’m the designated author of Chapter 10: Using Data Analytics to Improve Students’ Performance is about how Gramener worked with NCERT to analyze the National Achievement Survey data, discovering stuff like TV hurts maths but not reading scores, playing helps maths but not reading scores, fathers of West Bengal (not mothers) and mothers of Punjab (not fathers) influence their children’s scores the strongest, and so on. ...
Tacit is just un-instrumented
At The Curzon Hotel, my key card didn’t work. But every time I went to the reception, they’d send a bellboy who would use the same key card, jiggle it a bit, pull it in and out a few times, and the door would open. Every night. For five nights. I just couldn’t get the knack of it. I’ve been at the other end of this. People often reach out to me saying, “Anand, this software isn’t working.” Then I go do the same thing they did, and it works. (Sometimes, I just need to watch them do it and it works.) ...
Calvin and Hobbes Tracer Bullet 2
In 2007, I extracted the first arc of the Tracer Bullet strips. I didn’t realize I never shared the second arc. So, 19 years later, here it is. It remains my all-time favourite series from Calvin and Hobbes. ...
Creating a scrollytelling map
I had Claude Code with Fable create a small scrollytelling map for my 14-minute walk experience at Bagmane Capital in Bangalore. I used this as an opportunity to explore the current status of the technology. ChatGPT suggested: Try ArcGIS StoryMaps first for a polished scrollytelling story. Try Google Earth Projects if this is primarily something you will present live, like a map-based slide deck. Use MapLibre GL JS with a coding agent if you want precise choreography, animated routes, unusual visual effects, or an asset you can continually extend. None of these fit my requirements, which was: ...
Things I Learned - 12 Jul 2026
This week, I learned: How to become an applied AI engineer is a concise, well-written, and suprisingly current summary of what AI engineering is. Xinjiang seems to be China’s Kashmir problem. Not quite, but similar. Analogies for how forward deployed engineers work: It is like a food truck that brings and serves home food while building a kitchen and restaurant around it. It is like setting up a field hospital: patients are treated from day one, while the equipment and procedures are built around the live work. Froghoppers excrete ~300x their weight daily. ChatGPT There’s a growing shift away from AI-written commit messages, e.g. Kenton Varda. I compared my human written commit messages vs AI-generated commit messages and the AI-generated ones are less helpful. Finally, GPT live gets an update and the new speaking model can delegate to GPT 5.5 when required. I tried it once today, to plan for a teacher workshop, and it was fairly good. It tends to begin with “Hmm” like it’s thinking, which feels comforting. Using a Unicode character like 🟢 is unusually low-risk across file systems today. It works well across OSs, mobile, ZIP, attachments, file share systems, etc. Some old apps might have trouble, but for storing and sharing, it’s fine. I’ve been using Unicode symbols like these a lot in my notes, and extending to file names feels like a natural next step. Though swimming gets the most Olympic medals (11%), for a country chasing its first medals, 78% of first-medal breakthroughs came from Athletics, Wrestling, Shooting, Boxing, Judo, Weightlifting, or Taekwondo (which are 44% of medals) - where single athletes can win without a support ecosystem. ChatGPT JMFL accidentally emailed several people a letter intended for their brokers. It roughly said: “Many of you are recording client calls. That’s a regulatory risk. If you keep doing this, we’ll hold your payments, even fire you.” Several Smart TVs have software that let your TVs act as proxies for data collection companies. Include Security MapDraw is a convenient tool to annotate maps (e.g. routes, boundaries, places) and share or download it. There seems to be no way to edit the “About” message on WhatsApp Web. Though the help suggests steps, and the “About” mood/status is visible, there’s no way to edit it. (Editing on the phone works.) Cloudflare optimised a reader component by sometimes letting the input buffer fill fully. This inadvertently introduced a hard to reproduce race bug because the producer would close the socket if the buffer was full. The producer bug was old (it didn’t check if a flush succeeded or not) but was never visible since the readers never let the buffer fill in the past. Cloudflare A neofirm is a start-from-scratch AI-native business, e.g. Crosby’s AI-first law firm. An AI rollup is where a company buys small traditional firms and AI-enables them - like General Catalyst proposed. AI SaaS is selling AI agents to services firms. Give people free platforms and collect their data. Learn the supply-demand network patterns, what pepole value, and add value-added services. Claude Code checks if you’re working behind a Chinese corporate domain - somewhat sneakily - by changing an apostrophe or slash in the date to visually similar Unicode. Claude Code Is Steganographically Marking Requests You can use the Kaggle CLI via Codex to solve Kaggle problems. (AutoKaggle automates it - but is 2 years old.) But, like GitHub bounty hunting bots, we will probably have a Kaggle bounty-hunting bot ecosystem - maybe already do. OpenSubtitles2024 and subscene are large pre-AI subtitle datasets with a 2024 cutoff. IndicDialogue is a 7.7K OpenSubtitles snapshot of Indic language SRTs. The OpenSubtitles API lets you search by IMDb/TMDb ID and is up-to-date. A soup spoon is better than a table spoon (for soup), though both carry about the same volume, because you can fit a soup spoon it fully into your mouth (a table spoon is too long) and this reduces spilling. Here’s a sign of accelerating AI progress. I used to critique outdated techniques by saying “This feels like a 20th century approach.” Then “This feels like a 2010s solution.” Recently, “This is SO 2025-ish.” Now, “That’s Q1 2026. It’s Q2.” The 7-day week emerged from the Hellenistic planetary week and the Jewish week (not astronomy based), which Rome adopted, then spread by several routes to India, China, and worldwide. Unlike the astronomical year and month, the week is just a convention. Egypt, China, and Athens grouped days in tens; Etruria and Rome used 8-day market cycles; West Africa used varied cycles; Java used five days; Mesoamerica used 13- and 20-day cycles. Gemini I met an ex-photographer and learned that photography is another profession where technology (mobile cameras) squeezed the middle. Generation (taking good pictures) became cheap. Value moved upstream (direction), downstream (selection, editing, album design), and into niches (forensic, industrial, sport/event photography). Looks like Claude favors Claude Code. Might not be intentional, and just a result of training more on Claude Code data, but it does look like a network effect that could weaken open harnesses. Armin Rocher
When Data is for Agents - Workshop Summary
Here’s roughly what I said in my When Data is for Agents workshop for Fifth Elephant on 7 Jul 2026. Or you can read the detailed AI-generated version if you prefer - it has all the prompts, links, results, etc. I think agents prefer data in a different form than humans. But I don’t know. So, everyone, open ChatGPT (or Claude or whatever), research and ask it! Now, let’s collate them and see the result. Aha! Looks like: ...
Security at Bagmane Capital
A fourteen-minute walk took me over an hour. Scroll inside the map below, or open it full-screen. I was staying at The Curzon Court, Brigade Road. I needed to be at Microsoft Luxor North Tower for a 2 pm workshop. ...
The Curator's Dilemma - VizChitra 2026
Last week at VizChitra, I ran a “Dialogue” session. A new format for me. I usually speak 80% in my workshops. In this dialog, I spoke 20%. The group discussed. PART A I showed 6 charts and said, “Pick the best.” Then I shared the audience & purpose and asked: “For THIS audience and purpose, will you publish, fix, or kill it?” INSIGHT: almost no one said, “Ship”. That’s good – these were all drafts. ...
Discussion with Arvind Satyanarayan
After Arvind Satyanarayan’s talk at VizChitra 2026, a group of us kept talking about machine learning, visualization grammars, creativity, software and education. The conversation began with a basic question. Why do modern AI systems work so well when the mathematics behind them can look surprisingly simple? The bitter lesson Arvind said that much of the mathematics behind machine learning is not especially complicated. What is unusual is the scale at which it is applied. ...