Writing articles from my blog posts

You can use AI to submit not just talk proposals but entire articles from your past work. Ranjeeta said Built In wants an article and had written one on my behalf. If someone’s going to write for me, I’d rather pick an AI! So here’s what I did: Research the audience So I asked Gemini to research and suggest topics: I received a request to write an article for Built In (https://builtin.com/), an online community and publication for startups and tech companies. ...

How to develop taste

Developing taste & judgement are an essential skill in the AI era. # # But taste is different from knowledge and takes more time. Gaining knowledge is a software upgrade. It strengthens existing synapses. It’s fast, reversible, no new “cables” required. Taste is a hardware upgrade. It destroys inefficient pathways, grows neurons for new pathways, and wraps axons with myelin speeding up signals 100x. (London cab drivers literally have a larger hippocampus.) Taste takes time. How we acquire taste depends on the environment. ...

Submitting an AI-ded VizChitra Proposal

10:20 am. After submitting my VizChitra 2026 talk proposal, did a quick analysis of the submissions. Copy the HTML from the submissions page and paste into Gemini. Ask it: “Given this HTML, share a JS snippet I can copy and paste into DevTools that will return an array of objects containing all the useful information about each submission.” Paste the JS snippet into DevTools and get the structured result. Here’s the breakdown of submissions (excluding exchibitions): ...

Things I Learned - 15 Feb 2026

This week, I learned: ffmpeg lets you concatenate files without needing a separate input file. ffmpeg -i "concat:input1.ext|input2.ext|input3.ext" -c copy output.ext works as long as the files use the same codecs and parameters. There is a psychological phenomenon where we “overlay” old images of people we haven’t seen in decades onto their current selves, making it hard to distinguish between someone who is 30 and someone who is 70. Gemini Most modern ls tools like eza --icons or lsd support icons if the terminal font supports icons, like Nerd Fonts. For example, this:  shows up as a GitHub icon and 󰌻 as a LinkedIn icon. The Nerd Fonts Cheat Sheet is a good place to search for these. You may need to download a supporting font. I just replaced Fira Code with Maple Mono as my default font on VS Code. Like Fira Code, the ligatures are great, but there are extra ligatures like [TODO] or [ERROR], connected italics, nerd font support, variable font weights, and more. Via lobste.rs. (Update: Maple Mono is much harder to read than Fira Code, so I switched back. But it’s a nice idea.)

Using browser tabs as slides

My last two presentations used browser tabs as slides. For my talk last week titled Your Chotu Is Smarter Than You Think, I planned to show a series of examples. I loaded them all in a browser window as tabs like this: How I use AI to navigate toilets How I use AI for food recommendation How I use AI for book suggestions What else I can use AI for … Once loaded, I can press Ctrl+PgDn to move to the next - just like I’d press the right arrow key in a slide deck. I can also use the mouse to click on the tab if I want to jump around. ...

Can AI discover new data visualizations?

Here’s my talk proposal for VizChitra 2026: Description There’s stuff I know AI can do. Create data visualizations. I just tell it to convert a dataset into a treemap, and it does. Hallucinate. That’s a fancy word for “make stuff up”. I prefer calling it “creativity”. Run forever. As long as I have token budget and can summarize the context, it can go on. What if we combine these? What if we asked it to do research? If infinite monkeys will almost surely produce Shakespeare, how long will it take for the greatest AI to discover a truly novel data visualization that is useful? ...

Using AI for work news

This week, Namit and I met a Straive team that operates from a client office. One team member asked: I believe that we are doing wonders out here, but we are closed from what is happening in the rest our organization. I want team members to interact with others to see what interesting things they have delivered and where we can implement that solution. Could we have sessions, maybe a monthly newsletter, showing what innovations we’re working on? This would really keep us engaged with the tech that is going outside of the work that we do. ...

Time bound recurring meetings

Whenever “let’s set up a recurring meeting” comes up (from me or others), I add: “We’ll set it up 4 sessions and then finalize the cadence.” Why? Most recurring meetings are about: I want to do something Not sure what But I really want it, like long-term And I my future self might not follow through So my present self is going to force my future self with a long-term commitment But during the recurring meetings, my future self is usually asking: ...

Organizing PDF receipts

One of my goals this year is to “Automate finance + tax”. Today, I took a baby step by organizing my expenses. This is my current process: STEP 1: Download PDF receipts (from OpenAI, Anthropic, Google, and other cloud/AI services) STEP 2: Organize them, so I know which receipt to upload against which expense STEP 3: Submit on SAP Concur. All steps are manual as of now. I automated STEP 2: Organize them. ...

Finding old friends with Gemini

I was taking a bus past Mandaveli in Chennai, which reminded me of where I learnt mrdangam from Mr Melakaveri K Krishnamurthi between 1993-1996. So, after a few futile Google searches trying to find his whereabouts, I asked Gemini: Tell me everything that you know about and the current status of Melakaveri K Krishnamurthi, Mandaveli, a mridangam artiste. His son Balaji is a mridangam artiste too … and I learnt that: ...

Extracting AI advice

This weekend, two people asked me, roughly “How do I use AI better?” This is a frequently asked questions. I document my FAQs, e.g. time management, career advice, etc. and it was time to add AI advice to this list. I often record online calls and transcribe them. I asked Gemini, Claude and ChatGPT for the best way to summarize 400 transcripts of ~40K each. Claude’s suggestion was the best: Use Gemini Flash (1M context, dirt cheap) to process calls in batches of 20-25 Each batch → extract advice themes Aggregate batch results with Claude Sonnet for final synthesis But I ignored it because it was too much work. (See my AI advice: “Ask for easier output”) ...

TDS Comic Generation

I use comics to make my course more engaging. Each question has a comic strip that explains what question is trying to teach. For example, here’s the comic for the question that teaches students about prompt injection attacks: For each question, I use this prompt on Nano Banano Pro via Gemini 3 Pro: Create a simple black and white line drawing comic strips with minimal shading, with 1-2 panels, and clear speech bubbles with capitalized text, to explain why my online student quizzes teach a specific concept in a specific way. Use the likeness of the characters and style in the attached image from https://files.s-anand.net/images/gb-shuv-genie.avif. 1. GB: an enthusiastic socially oblivious geek chatterbox 2. Shuv: a cynic whose humor is at the expense of others 3. Genie: a naive, over-helpful AI that pops out of a lamp Their exaggerated facial expressions to convey their emotions effectively. --- Panel 1/2 (left): GB (excited): I taught Genie to follow orders. Shuv (deadpan): Genie, beat yourself to death. Panel 2/2 (right): Genie is a bloody mess, having beaten itself to death. GB (sheepish): Maybe obedient isn't always best... … along with this reference image for character consistency: ...

TDS Jan 2026 GA1 released

Graded Assignment 1 (GA1) for the Tools in Data Science course is released and is due Sun 15 Feb 2026. See https://exam.sanand.workers.dev/tds-2026-01-ga1 If you already started, you might notice some questions have changed. Why is GA1 changing? Because some questions don’t work. For example: We replaced Claude Artifacts with a Vercel question because Claude won’t allow a proxy anymore. A question had unintentionally wrong instructions. (Some questions have intentionally wrong instructions, but those are, …um… intentional). Someone changed an API key. … etc. When will GA1 stabilize? Probably by end of day, Sun 9 Feb 2026? ...

Things I Learned - 08 Feb 2026

This week, I learned: The Disconnected Git Workflow explains how to use the git send-email workflow. That’s like using email instead of GitHub as the collaboration mechanism - decentralizing and reducing dependencies. Grok throws a HTTP 431 when you pass it a query over 6,890 characters in the URL. Here’s an example with 6,900 characters. As of now, there’s no way to tell uv to use the cache and install only missing repos (#15454). But this is Deno’s default behavior, making Deno a slightly better choice in this regard. Shelling Out Sucks shares common pitfalls when calling the shell from programs. Suggestion: Shell-escape ALL inputs. Use set -o pipefail to detect failures in the middle of a pipe chain. Explicitly check the error code, not just stderr. dax, which is based on zx, is a simpler Deno-based alternative to shell scripts. See examples. ChatGPT. However, scripting language matters more when humans maintain shell scripts. Since I’m using AI, it’s easier to use bash scripts and let it handle any complexities. git push --force-with-lease is like git push --force but won’t overwrite if others have pushed in the meantime. Default to this instead of --force – it’s safer. Microsoft’s docfind generates a WASM search index for documents, building a dependency free browser based compact and fast search. diffs seems a promising library for rendering diffs in the browser. Genie 3 seems pretty good. We should expect to see World Models becoming usable in a few months.

Migrating TDS from Docsify to Hugo

This morning, I migrated my Tools in Data Science course page from Docsify to Hugo using Codex. Why? Because Docsify was great for a single term. For multiple terms, archives became complex. I still could have made it work, but it felt like time to move towards a static site generator. I don’t know how Hugo or Go work. I didn’t look at the code. I just gave Codex instructions and it did the rest. This gives me a bit more confidence that educators can start creating their own course sites without needing coding or platforms. Soon, they might not be stuck to LMSs either - they can build their own. ...

RIP, Data Engineers

As AI marches along, another role at risk is the data engineer / database administrator. (Data scientists are already feeling the heat.) A common task for data engineers is to analyze SQL queries - to optimize and standardize. Pavan used Antigravity to analyze 1,500 SQL queries and found: 30% of queries are purely headcount / volume related. Much more than revenue (25%) or engagement (15%). That’s sign of a tactical culture. 70% of the queries are about What happened yesterday? rather than What will happen tomorrow? - again, tactical culture. Here’s the analysis. ...

Rise of the Indian TV Series

If you look at the IMDb titles with a 9+ rating and 50K votes this decade, there are only 4 entries. Every single one of them is an Indian TV series. Title Votes Rating Aspirants 316,390 9.1 Scam 1992: The Harshad Mehta Story 166,400 9.2 Sandeep Bhaiya 76,586 9.1 Sapne Vs Everyone 74,342 9.3 This is a new phenomenon. Last decade, there was only one Indian TV series in the same list: TVF Pitchers. ...

Gemini 3 Flash OCRs Dilbert accurately

Scott Adams, the author of Dilbert, passed away last month. While his work will live on, I was curious about the best way to build a Dilbert search engine. The first step is to extract the text. Pavan tested over half a dozen LLMs on ~30 Dilbert strips to see which one transcribed them best. Here are the results. Summary: Gemini 3 Flash does the best, and would cost ~$20 to process the entire Dilbert archive. But if you want a local solution, Qwen 3 VL 32b is the best. ...

When to use which Gemini mode

I continue to be impressed by Gemini 3 and it’s become my default agent. It writes in simpler language than ChatGPT (almost as eloquent as Claude), has much larger limits, and, of course, is unbeaten at generating images. The Gemini app has 3 modes: Fast, Thinking, and Pro. Here’s when to use each: Simple task, e.g., grammar check, translate, summarize, or basic question? Use Fast. Pro overthinks. Multi-step logic, e.g., planning a trip with constraints, checking 15 emails, or identifying a subtle error in code? Use Thinking. Flash-based thinking beats Pro. Large input, e.g. 300-page PDF, 2 hours of video, etc.? Use Pro. It uses the 1M+ token window well. Complex problem, e.g. PhD-level science or a legal contract review, with high stakes? Use Pro. If you hit your Pro limit (which is pretty high!), just switch to Thinking, which is smart enough for most jobs anyway. ...

Breaking Rules in the Age of AI

Several educators have AI-enabled their courses, like: David Malan at Harvard CS50 provides an AI-powered “rubber duck debugger” trained on course-specific materials. Mohan Paturi at UC San Diego has deployed AI-tutors to his students. Ethan Mollick at Wharton uses AI as tutor, coach, teammate, simulator, even student, and runs simulations. Jeremy Howard’s Fast.ai encourages students to use LLMs to write code, with a strict verification loop. Andrew Ng DeepLearning.AI integrates a chatbot into the platform, next to code cells, to handle syntax errors and beginner questions. But no one seems to have eliminated reading material, nor added an “Ask AI” button to solve each question, nor run it at my scale (~3,000 students annually). ...