<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>tools-in-data-science on S Anand</title>
    <link>https://www.s-anand.net/blog/tag/tools-in-data-science/</link>
    <description>Recent content in tools-in-data-science on S Anand</description>
    <generator>Hugo -- 0.164.0</generator>
    <language>en-us</language>
    <lastBuildDate>Sun, 05 Apr 2026 19:04:37 +0800</lastBuildDate>
    <atom:link href="https://www.s-anand.net/blog/tag/tools-in-data-science/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>TDS Jan 2026 ROE</title>
      <link>https://www.s-anand.net/blog/tds-jan-2026-roe/</link>
      <pubDate>Sun, 05 Apr 2026 19:04:37 +0800</pubDate>
      <guid>https://www.s-anand.net/blog/tds-jan-2026-roe/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://tds.s-anand.net/&#34;&gt;Tools in Data Science&lt;/a&gt; has a remote online exam (ROE). It has a tough reputation. We conducted one today.&lt;/p&gt;
&lt;p&gt;Here&amp;rsquo;s how today&amp;rsquo;s &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe&#34;&gt;ROE&lt;/a&gt; unfolded.&lt;/p&gt;
&lt;p&gt;The TAs had created 13 questions and shared it with me yesterday. This morning, I tried solving them.&lt;/p&gt;
&lt;p&gt;At first glance, it looked scarily hard! But I just jumpted down a few questions, and found that five questions were trivial, i.e. I just used the &amp;ldquo;Ask AI&amp;rdquo; button to copy the question into ChatGPT and it gave me the answer.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;🟢 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-decode-layered-server&#34;&gt;06. Layered Encoding Challenge&lt;/a&gt; (2.0) is one-shot: &lt;a href=&#34;https://chatgpt.com/share/69d22d83-0228-83a0-87ec-20f6fe3cc3d9&#34;&gt;ChatGPT&lt;/a&gt; &lt;!-- https://chatgpt.com/c/69d1b323-0858-839f-87c0-11923dbb2e6c --&gt;&lt;/li&gt;
&lt;li&gt;🟢 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-region-containing-point-server&#34;&gt;07. Region Containing Point&lt;/a&gt; (1.0) is one-shot: &lt;a href=&#34;https://chatgpt.com/share/69d22d83-0228-83a0-87ec-20f6fe3cc3d9&#34;&gt;ChatGPT - see second chat&lt;/a&gt; &lt;!-- https://chatgpt.com/c/69d1b323-0858-839f-87c0-11923dbb2e6c --&gt;&lt;/li&gt;
&lt;li&gt;🟢 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-broken-json-server&#34;&gt;10. Fix Broken JSON File&lt;/a&gt; (1.0) is one-shot: &lt;a href=&#34;https://chatgpt.com/share/69d22d85-5f70-8399-b517-25704905575e&#34;&gt;ChatGPT&lt;/a&gt; &lt;!-- https://chatgpt.com/c/69d1bbd1-ab04-839e-80cb-5d3241e19d05 --&gt;&lt;/li&gt;
&lt;li&gt;🟢 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-cross-lingual-entity-disambiguation-server&#34;&gt;11. Cross-entity disambiguation&lt;/a&gt; (1.0) is one-shot: &lt;a href=&#34;https://chatgpt.com/share/69d22d86-f74c-83a1-856a-5a61489cf959&#34;&gt;ChatGPT&lt;/a&gt; &lt;!-- https://chatgpt.com/c/69d1bc1c-c7d8-839e-b7f3-2b37aa28dd71 --&gt;&lt;/li&gt;
&lt;li&gt;🟢 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-asciirec-server&#34;&gt;13. Record Terminal Session with asciinema&lt;/a&gt; (0.5) is one-shot: &lt;a href=&#34;https://chatgpt.com/share/69d22d89-82a0-83a0-83cd-845e053a02a8&#34;&gt;ChatGPT&lt;/a&gt; &lt;!-- https://chatgpt.com/c/69d1bff0-1d88-8399-95da-393a2f489210 --&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For another four, I needed to just make sure I uploaded the files or HTML:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;🟡 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-regex-golf-server&#34;&gt;03. Regex Golf Challenge&lt;/a&gt; (2.0) is one-shot but it&amp;rsquo;s better to download and upload the text files, maybe, than copy-paste: &lt;a href=&#34;https://chatgpt.com/share/69d22e6a-0808-839f-a4f5-ae514a0a94d5&#34;&gt;ChatGPT&lt;/a&gt; &lt;!-- https://chatgpt.com/c/69d1c08f-b764-839a-8027-34fe23658f5a --&gt;&lt;/li&gt;
&lt;li&gt;🟡 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-maze-solver-server&#34;&gt;04. Maze Solver with Constraints&lt;/a&gt; (2.0) is one-shot but needs you to upload the image and a good vision model: &lt;a href=&#34;https://chatgpt.com/share/69d1c1c6-1b08-839e-af47-9b2cbab60985&#34;&gt;ChatGPT&lt;/a&gt; &lt;!-- https://chatgpt.com/c/69d1c013-75c4-83a0-ada4-22b68f89d79b --&gt;&lt;/li&gt;
&lt;li&gt;🟡 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-cipher-trail-server&#34;&gt;05. Cipher Trail&lt;/a&gt; (2.0) is one-shot but needs you to provide the secret HTML: &lt;a href=&#34;https://chatgpt.com/share/69d22e6c-26f4-83a0-bb21-a3bcee77e163&#34;&gt;ChatGPT&lt;/a&gt; &lt;!-- https://chatgpt.com/c/69d1bd55-6b80-839d-9dfd-dc1de798fc69 --&gt;&lt;/li&gt;
&lt;li&gt;🟡 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-trick-question-server&#34;&gt;12. Simple Question&lt;/a&gt; (0.5) needs you to provide the secret HTML: &lt;a href=&#34;https://chatgpt.com/share/69d22e6c-efd0-8398-8823-49f1130defd2&#34;&gt;ChatGPT&lt;/a&gt; &lt;!-- https://chatgpt.com/c/69d1bed0-717c-8398-8498-c467b03a5ef1 --&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Two questions confused ChatGPT a bit, and it needed some nudges. There is real learning here.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;🟠 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-rename-files-server&#34;&gt;08. Reorganize Files with Shell Commands&lt;/a&gt; (1.0) is hard because of Unicode issues and the extra README.md students should delete. &lt;strong&gt;Asking for variations&lt;/strong&gt; is the learning: &lt;a href=&#34;https://chatgpt.com/share/69d22ed6-331c-8399-8848-9cb3cec90e96&#34;&gt;ChatGPT&lt;/a&gt; &lt;!-- https://chatgpt.com/c/69d1b9ab-980c-8398-846c-c3357793b8ee --&gt;&lt;/li&gt;
&lt;li&gt;🟠 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-python-refactor-server&#34;&gt;09. Refactor Python Code with VS Code&lt;/a&gt; (1.0) takes few attempts (question is imperfect, intentionally) but error messages are excellent, so &lt;strong&gt;iterative feedback&lt;/strong&gt; is the learning: &lt;a href=&#34;https://chatgpt.com/share/69d22ed9-9438-839a-860c-4109398ea612&#34;&gt;ChatGPT&lt;/a&gt; &lt;!-- https://chatgpt.com/c/69d1b9c2-de34-8398-b01d-4542b1db43ef --&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;One was pretty hard and ChatGPT struggled with it.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;🔴 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-korean-audio-dataset-server&#34;&gt;02. Korean Speech Dataset API Validation&lt;/a&gt; (5.0) actually requires work.
At first, &lt;a href=&#34;https://chatgpt.com/share/69d22f18-02fc-839b-965a-6621554f0ab9&#34;&gt;ChatGPT refused ethically&lt;/a&gt;. &lt;!-- https://chatgpt.com/c/69d1c379-31f4-839b-89d0-f318e68bae38 --&gt;
When reframed, &lt;a href=&#34;https://chatgpt.com/share/69d22f1a-7850-83a0-a586-0f05e46dabeb&#34;&gt;it tried&lt;/a&gt;, but the human-in-the-loop (me) was too slow. &lt;!-- https://chatgpt.com/c/69d1c40c-b834-839e-a253-4430a77418e9 --&gt;
So I used &lt;a href=&#34;https://files.s-anand.net/blog/2026-04-05-tds-2026-01-roe/q-korean-audio-dataset-server-codex-session.md&#34;&gt;Codex&lt;/a&gt;, which &lt;em&gt;literally hacks&lt;/em&gt; towards the solution! It searched online for existing solutions, read the GitHub discussions for this topic, found my browser tab and started testing itself, &amp;hellip; and solved it in 10.5 min!&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This leaves the one question that AI can&amp;rsquo;t solve:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;🔴 01. &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-share-token-server&#34;&gt;Collaborative Token Exchange&lt;/a&gt; (5.0) asks you to collect &amp;ldquo;tokens&amp;rdquo; from other people and share it. I asked Codex to hack it, but after an hour (of logging into my personal account, my IITM account, even my father&amp;rsquo;s account, exhausting my token limits, and totally psyching me), it declared the question unhackable.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;p&gt;Based on this, the instructors, teaching assistants and I decided that:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;This exam is too easy with AI help. Combined with collaboration, it&amp;rsquo;s &lt;strong&gt;ultra-easy&lt;/strong&gt;. Therefore, let&amp;rsquo;s add some old questions:
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-fastapi-timeseries-cache&#34;&gt;14. FastAPI Time Series Caching&lt;/a&gt; (0.5)&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-video-attendee-extraction&#34;&gt;15. AI Video Attendee Extraction&lt;/a&gt; (0.5)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Thanks to &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-p1#hq-share-secret-server&#34;&gt;Project 1&lt;/a&gt;, people already collaborate at scale. So let&amp;rsquo;s ask for 500 tokens instead of 100.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We deployed the exam at 12:00 pm IST, an hour before the scheduled time.&lt;/p&gt;
&lt;p&gt;The hackers (e.g. who scan the source code, or change their system clocks) could see the questions earliy and started sharing and solving them.&lt;/p&gt;
&lt;p&gt;The TAs said, &amp;ldquo;Anand, shall we add more questions to make it tougher?&amp;rdquo;&lt;/p&gt;
&lt;p&gt;I said, &amp;ldquo;No, it&amp;rsquo;s OK. The ROE has built a reputation for difficulty. Let that change. &lt;em&gt;Let them have an easy exam&lt;/em&gt;.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&amp;ldquo;If they&amp;rsquo;re going to split this in groups and have coding agents solve it, they&amp;rsquo;ll score full marks in 10-15 minutes,&amp;rdquo; I said to myself.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;When the exam ended, this was the score distribution.&lt;/p&gt;
&lt;p&gt;&lt;img loading=&#34;lazy&#34; src=&#34;https://files.s-anand.net/images/2026-04-05-tds-roe-score-distribution.webp&#34;&gt;&lt;/p&gt;
&lt;p&gt;There were several surprises here. Firstly, 9 questions were repeats. Yet, barring &lt;em&gt;one&lt;/em&gt; question, they scored lower, though they appeared in equally tough ROEs in the past.&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th style=&#34;text-align: right&#34;&gt;#&lt;/th&gt;
					&lt;th&gt;Question&lt;/th&gt;
					&lt;th style=&#34;text-align: right&#34;&gt;%&lt;/th&gt;
					&lt;th style=&#34;text-align: right&#34;&gt;Previous %&lt;/th&gt;
					&lt;th&gt;Previous exam&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;14&lt;/td&gt;
					&lt;td&gt;⚪ &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-fastapi-timeseries-cache&#34;&gt;FastAPI Time Series Caching&lt;/a&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;8%&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;39%&lt;/td&gt;
					&lt;td&gt;&lt;a href=&#34;https://exam.sanand.workers.dev/tds-2025-09-roe#hq-fastapi-timeseries-cache&#34;&gt;2025 Sep ROE&lt;/a&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;15&lt;/td&gt;
					&lt;td&gt;⚪ &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-video-attendee-extraction&#34;&gt;AI Video Attendee Extraction&lt;/a&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;12%&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;64%&lt;/td&gt;
					&lt;td&gt;&lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-ga3#hq-video-attendee-extraction&#34;&gt;2026 Jan GA3&lt;/a&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;11&lt;/td&gt;
					&lt;td&gt;🟢 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-cross-lingual-entity-disambiguation-server&#34;&gt;Cross-entity disambiguation&lt;/a&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;13%&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;64%&lt;/td&gt;
					&lt;td&gt;&lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-ga4#hq-cross-lingual-entity-disambiguation-server&#34;&gt;2026 Jan GA4&lt;/a&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;7&lt;/td&gt;
					&lt;td&gt;🟢 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-region-containing-point-server&#34;&gt;Region Containing Point&lt;/a&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;15%&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;38%&lt;/td&gt;
					&lt;td&gt;&lt;a href=&#34;https://exam.sanand.workers.dev/tds-2025-09-roe#hq-region-containing-point-server&#34;&gt;2025 Sep ROE&lt;/a&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;9&lt;/td&gt;
					&lt;td&gt;🟠 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-python-refactor-server&#34;&gt;Refactor Python Code with VS Code&lt;/a&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;17%&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;57%&lt;/td&gt;
					&lt;td&gt;&lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-ga1#hq-python-refactor-server&#34;&gt;2026 Jan GA1&lt;/a&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;13&lt;/td&gt;
					&lt;td&gt;🟢 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-asciirec-server&#34;&gt;Record Terminal Session with asciinema&lt;/a&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;21%&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;66%&lt;/td&gt;
					&lt;td&gt;&lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-ga1#hq-asciirec-server&#34;&gt;2026 Jan GA1&lt;/a&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;10&lt;/td&gt;
					&lt;td&gt;🟢 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-broken-json-server&#34;&gt;Fix Broken JSON File&lt;/a&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;30%&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;64%&lt;/td&gt;
					&lt;td&gt;&lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-ga1#hq-broken-json-server&#34;&gt;2026 Jan GA1&lt;/a&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;12&lt;/td&gt;
					&lt;td&gt;🟡 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-trick-question-server&#34;&gt;Simple Question&lt;/a&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;41%&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;64%&lt;/td&gt;
					&lt;td&gt;&lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-ga1#hq-trick-question-server&#34;&gt;2026 Jan GA1&lt;/a&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;8&lt;/td&gt;
					&lt;td&gt;🟠 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-rename-files-server&#34;&gt;Reorganize Files with Shell Commands&lt;/a&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;53%&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;38%&lt;/td&gt;
					&lt;td&gt;&lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-ga1#hq-rename-files-server&#34;&gt;2026 Jan GA1&lt;/a&gt;&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Just as surprisingly, they scored &lt;em&gt;higher than these&lt;/em&gt; on 3 of the 5 new questions:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;59%: 🟡 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-regex-golf-server&#34;&gt;03. Regex Golf Challenge&lt;/a&gt; (2.0) (253 / 430)&lt;/li&gt;
&lt;li&gt;59%: 🟡 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-maze-solver-server&#34;&gt;04. Maze Solver with Constraints&lt;/a&gt; (2.0) (252 / 430)&lt;/li&gt;
&lt;li&gt;54%: 🟡 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-cipher-trail-server&#34;&gt;05. Cipher Trail&lt;/a&gt; (2.0) (233 / 430)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;One new question ended up being almost the &lt;strong&gt;hardest&lt;/strong&gt; question - despite it being one-shot-table for ChatGPT (GPT 5.4, extended thinking).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;2%: 🟢 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-decode-layered-server&#34;&gt;06. Layered Encoding Challenge&lt;/a&gt; (2.0) (9 / 430)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The toughest, though, had a 1% success rate. Though Codex could solve it in 10 min, it&amp;rsquo;s a genuinely hard question.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;1%: 🔴 &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-korean-audio-dataset-server&#34;&gt;02. Korean Speech Dataset API Validation&lt;/a&gt; (5.0) (4 / 430)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Which leaves us with the collaboration question - the one that AI can&amp;rsquo;t solve.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;31%: 🔴 01. &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2026-01-roe#hq-share-token-server&#34;&gt;Collaborative Token Exchange&lt;/a&gt; (5.0) (132 / 430)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This question is a whole new dynamic altogether. There were about 5 clear clusters of students, ranging from 5 - 35 students, who were collaborating. They were trading bundles of tokens between themselves. There were a few &amp;ldquo;super-collaborators&amp;rdquo; who were doing the bulk lifting. But even with this, the largest correct submission had 84 tokens. The strongest submission was a 51-token submission that 6 students submitted.&lt;/p&gt;
&lt;p&gt;(I need to study this far more!)&lt;/p&gt;
&lt;p&gt;Yet, far smaller than even the original 100 token target I had set. Clearly, &lt;strong&gt;they aren&amp;rsquo;t collaborating enough&lt;/strong&gt;.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;It&amp;rsquo;s surprising how little students were using the &amp;ldquo;Ask AI&amp;rdquo; button.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;🔴 ~100 students didn&amp;rsquo;t use it &lt;strong&gt;at all&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;🟠 ~100 students clicked on it &lt;em&gt;JUST once&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;🟡 ~100 students used it just 2-5 times. For 15 questions, that&amp;rsquo;s clearly low.&lt;/li&gt;
&lt;li&gt;🟢 ~100 students used it 6-20 times. That&amp;rsquo;s OK&lt;/li&gt;
&lt;li&gt;🔵 ~15 students used it 20+ times. (1 clicked on it 45 times. Clearly &lt;em&gt;loves&lt;/em&gt; AI.)&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;p&gt;Finally, most students saved their results for the first time &lt;em&gt;just&lt;/em&gt; before the deadline.&lt;/p&gt;
&lt;p&gt;&lt;img loading=&#34;lazy&#34; src=&#34;https://files.s-anand.net/images/2026-04-05-tds-roe-submission-timeline.webp&#34;&gt;&lt;/p&gt;
&lt;p&gt;The problem is that their system clocks were off, so they got a &amp;ldquo;late submission&amp;rdquo; error.&lt;/p&gt;
&lt;p&gt;BTW, some students used a timing trick for hacking. By setting their system clock late, they can see the exam questions before release. But the submissions are checked only against the server clock. So, waiting until the last minute to save is a terrible idea. That hurt some students.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;Based on this, here&amp;rsquo;s what I learnt:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Pressure makes a difference&lt;/strong&gt;. In past exams, with similar time pressure, students solved the &lt;em&gt;same&lt;/em&gt; questions &lt;em&gt;much&lt;/em&gt; better. I think they panic-ed on the first two questions. To be fair, so did I, when I saw them. That&amp;rsquo;s why I started solving from the bottom.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;LESSON 1&lt;/strong&gt;: Scan end-to-end. Solve quick-wins (high impact, low effort) problems first.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;We have no clue what&amp;rsquo;s easy or tough&lt;/strong&gt;. When different students are using different tools, what&amp;rsquo;s easy for ChatGPT might be hard for Claude and vice versa. Without knowing tool capabilities and usage, this is hard to assess.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;LESSON 2&lt;/strong&gt;: With AI, no one knows what&amp;rsquo;s easy or hard. Try for yourself.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;They aren&amp;rsquo;t using AI enough&lt;/strong&gt;. Our advice is to use the &amp;ldquo;Ask AI&amp;rdquo; button every time. Half the students barely used it once.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;LESSON 3&lt;/strong&gt;: Use AI first. Focus on what AI &lt;em&gt;can&amp;rsquo;t&lt;/em&gt; do well&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;They aren&amp;rsquo;t collaborating enough&lt;/strong&gt;. The collaboration question was designed to encourage collaboration. Yet, the largest bundle of tokens shared was 84, far smaller than the 500 token target.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;LESSON 4&lt;/strong&gt;: Make friends with classmates. Work together. It helps: now, and in the future.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;That&amp;rsquo;s worth repeating:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Scan end-to-end. Solve quick-wins (high impact, low effort) problems first.&lt;/li&gt;
&lt;li&gt;With AI, no one knows what&amp;rsquo;s easy or hard. Try for yourself.&lt;/li&gt;
&lt;li&gt;Use AI first. Focus on what AI &lt;em&gt;can&amp;rsquo;t&lt;/em&gt; do well.&lt;/li&gt;
&lt;li&gt;Make friends with classmates. Work together. It helps: now, and in the future.&lt;/li&gt;
&lt;/ol&gt;
</description>
    </item>
    <item>
      <title>How I use AI to teach</title>
      <link>https://www.s-anand.net/blog/how-i-use-ai-to-teach/</link>
      <pubDate>Fri, 20 Mar 2026 07:12:47 +0530</pubDate>
      <guid>https://www.s-anand.net/blog/how-i-use-ai-to-teach/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ve been using AI in my &lt;a href=&#34;https://tds.s-anand.net/&#34;&gt;Tools in Data Science&lt;/a&gt; course for over two years - to teach AI, &lt;em&gt;and&lt;/em&gt; using AI to teach.&lt;/p&gt;
&lt;p&gt;I told GitHub Copilot (&lt;a href=&#34;https://github.com/sanand0/talks/blob/a4ccc33e6b534853ae28d7ed5584b982cfc38193/2026-03-18-iitm-academic-council/prompts.md&#34;&gt;prompt&lt;/a&gt;) to go through my transcripts, &lt;a href=&#34;https://www.s-anand.net/&#34;&gt;blog posts&lt;/a&gt;, &lt;a href=&#34;https://github.com/sanand0&#34;&gt;code&lt;/a&gt;, and &lt;a href=&#34;https://til.s-anand.net/&#34;&gt;things I learned&lt;/a&gt; since 2024 to list my &lt;em&gt;every&lt;/em&gt; experiment in AI education, rating it on importance and novelty.&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html&#34;&gt;Here is the full list of my experiments&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. Teach using exams and prompts, not content&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;⭐ &lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=learn-by-solving&#34;&gt;&lt;strong&gt;Use exams to teach&lt;/strong&gt;&lt;/a&gt;. The typical student is busy. They want grades, not learning. They&amp;rsquo;ll write the exams, but not read the content. So, I moved the course material &lt;em&gt;into&lt;/em&gt; the questions. If they can answer the question, great. Skip the content.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=ai-comics&#34;&gt;&lt;strong&gt;Use AI to generate the content&lt;/strong&gt;&lt;/a&gt;. I used to write content. Then I linked to the best content online &amp;ndash; it&amp;rsquo;s better than mine. Now, AI drafts comics, interactive explainers, and simulators. My job is to pick good topics and generate in good formats.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=ai-explainers&#34;&gt;&lt;strong&gt;Give them prompts directly&lt;/strong&gt;&lt;/a&gt;. Skip the content! I generated them with prompts &lt;em&gt;anyway&lt;/em&gt;. Give students the prompts &lt;em&gt;directly&lt;/em&gt;. They can use better AI models, revise the prompts, and learn how to learn with AI.&lt;/li&gt;
&lt;li&gt;⭐ &lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=ask-ai-button&#34;&gt;&lt;strong&gt;Add an &amp;ldquo;Ask AI&amp;rdquo; button&lt;/strong&gt;&lt;/a&gt;. Make it &lt;em&gt;easy&lt;/em&gt; for students to use ChatGPT. Stop pretending that real-world problem solving is closed-book and solo.&lt;/li&gt;
&lt;li&gt;⭐ &lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=test-as-tutor&#34;&gt;&lt;strong&gt;Make test cases teach, not just grade&lt;/strong&gt;&lt;/a&gt;. Automate the testing (with code or AI). Good test cases show students the &lt;em&gt;kind&lt;/em&gt; of mistake they may - teaching them, not just grading them. That&amp;rsquo;s great for teachers to analyze, too.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=test-first-teach&#34;&gt;&lt;strong&gt;Test first, then teach from the mistakes&lt;/strong&gt;&lt;/a&gt;. Let them solve problems first. &lt;strong&gt;Then&lt;/strong&gt; teach them, focusing on what failed. AI does the work; humans handle what AI can&amp;rsquo;t. This lets us teach really useful skills based on real mistakes.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;2. Make cheating pointless through design, not detection&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;⭐ &lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=copy-collaborate&#34;&gt;&lt;strong&gt;Allow copying, collaboration, and hacking&lt;/strong&gt;&lt;/a&gt;. In real work, nobody gets bonus points for working alone or re-inventing the wheel. Collaboration, using available resources well, verifying inputs, disclosed shortcuts &amp;ndash; all are rewarded.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=reward-originality&#34;&gt;&lt;strong&gt;Reward originality without punishing collaboration&lt;/strong&gt;&lt;/a&gt;. Blanket anti-copying rules assume that all similarity is bad. A more AI-native approach is to allow learning from others openly, but give extra credit for genuine variation, initiative, and novel improvement.&lt;/li&gt;
&lt;li&gt;⭐ &lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=unique-variants&#34;&gt;&lt;strong&gt;Give each student a unique variant&lt;/strong&gt;&lt;/a&gt;. If everyone sees the same problem with the same visible answer path, answer-sharing becomes the dominant strategy. Deterministic but unique variants shift the game from leaking answers to actually solving the problem.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=process-logs&#34;&gt;&lt;strong&gt;Make process logs part of the evidence&lt;/strong&gt;&lt;/a&gt;. When outputs can be copied or AI-generated, the trace becomes more valuable than the final artifact. Logs, verification notes, session recordings, and agent traces show whether the student can actually orchestrate the work.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=repo-viva&#34;&gt;&lt;strong&gt;Use repo-grounded vivas for authenticity&lt;/strong&gt;&lt;/a&gt;. If you really want to know whether a student owns their project, ask them questions drawn from their own repo and make them change something live. That is much harder to fake than polished submitted output.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=copy-detection&#34;&gt;&lt;strong&gt;Use structural similarity, not string matching&lt;/strong&gt;&lt;/a&gt;. Strip docstrings, tokenize, MinHash. Students who rename variables are still caught; students who genuinely collaborated produce detectable clusters rather than suspicious pairs.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;3. Test skills that matter in an AI world&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;⭐ &lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=teach-ai-limits&#34;&gt;&lt;strong&gt;Teach what AI still cannot do well&lt;/strong&gt;&lt;/a&gt;. Syntax and routine execution are declining in value. Judgment, debugging, orchestration, validation, integration, and taste are rising. The curriculum should move upward, not cling to the parts AI is already eating.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=messy-problems&#34;&gt;&lt;strong&gt;Use hard, messy problems to build real resilience&lt;/strong&gt;&lt;/a&gt;. Some questions should be intentionally tricky, partly wrong, hidden in the UI, or out of syllabus. The students who find and solve them anyway are demonstrating exactly the adaptability that real work demands. Smooth progression alone doesn&amp;rsquo;t build that.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=hands-on-skills&#34;&gt;&lt;strong&gt;Test live, hands-on AI skills&lt;/strong&gt;&lt;/a&gt;. Don&amp;rsquo;t just lecture about embeddings, vision, structured outputs, or hallucinations. Put students in live API-driven tasks where they have to use these things under time pressure and genuine uncertainty.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=ai-workflow-design&#34;&gt;&lt;strong&gt;Grade students on designing AI workflows&lt;/strong&gt;&lt;/a&gt;. In many real settings, the important skill is not &amp;ldquo;give the answer&amp;rdquo; but &amp;ldquo;design the chain of steps that gets to the answer reliably.&amp;rdquo; That includes tools, prompts, datasets, quality checks, fallbacks, and output formats.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=game-learning&#34;&gt;&lt;strong&gt;Use game-like tasks to teach agentic work&lt;/strong&gt;&lt;/a&gt;. Mazes, escape rooms, and API games force state tracking, exploration strategy, and backtracking — exactly the behaviors agentic systems require. They&amp;rsquo;re not gimmicks; they&amp;rsquo;re the syllabus.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=prompt-attacks&#34;&gt;&lt;strong&gt;Test prompt attacks and defenses&lt;/strong&gt;&lt;/a&gt;. Security and adversarial literacy should not be abstract topics. Make students jailbreak, defend, manipulate, and harden model behavior. That turns &amp;ldquo;prompt security&amp;rdquo; from a lecture topic into a measurable skill.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;4. Make assessment more like real work&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=rich-work-grading&#34;&gt;&lt;strong&gt;Grade richer work, not just one-line answers&lt;/strong&gt;&lt;/a&gt;. Real work is often multimodal: images, stories, APIs, analyses, and dashboards. If assessment automation cannot handle those, it will keep pushing education toward fake neatness.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=specs-tests-assignment&#34;&gt;&lt;strong&gt;Grade the spec, not the code&lt;/strong&gt;&lt;/a&gt;. When AI writes the code, the real artifact is the machine-readable brief: goal, constraints, done-when, counter-examples, eval suite. That is often where the actual thinking lives anyway.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=open-source-coursework&#34;&gt;&lt;strong&gt;Count real open-source contributions as coursework&lt;/strong&gt;&lt;/a&gt;. A merged PR to a public repo is harder, messier, and more educational than most sealed academic assignments. It teaches scoping, etiquette, usefulness, and real external standards.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=virtual-ta&#34;&gt;&lt;strong&gt;Let students build virtual TAs from real course material&lt;/strong&gt;&lt;/a&gt;. The project is educational, and the output becomes infrastructure for the next cohort. Good assignments should create assets, not just submissions.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=originality-bonus&#34;&gt;&lt;strong&gt;Reward originality structurally, not just rhetorically&lt;/strong&gt;&lt;/a&gt;. Most courses praise creativity but grade only correctness. Use embeddings to measure cohort-level similarity and explicitly reward meaningfully distinct outputs. Originality becomes real, not decorative.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;5. Use AI to build the course, not just teach inside it&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=ai-writes-questions&#34;&gt;&lt;strong&gt;Let AI write, test, and fix draft questions&lt;/strong&gt;&lt;/a&gt;. The interesting move is not just &amp;ldquo;AI drafts items.&amp;rdquo; It is &amp;ldquo;AI drafts, runs, breaks, revises, and improves them before any student sees them.&amp;rdquo; That dramatically changes how fast a course can evolve.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=agent-exam-testing&#34;&gt;&lt;strong&gt;Use coding agents to test the exam before students do&lt;/strong&gt;&lt;/a&gt;. If an agent solves a question instantly, you should ask what the question is actually measuring. Agents become both QA tools and mirrors for curricular relevance.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=ai-comics&#34;&gt;&lt;strong&gt;Use AI-generated comics to explain why the question exists&lt;/strong&gt;&lt;/a&gt;. Students often resist tasks they do not understand. A comic can smuggle in the pedagogical point with very low friction and high memorability.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=ai-explainers&#34;&gt;&lt;strong&gt;Use interactive explainers for unfamiliar concepts&lt;/strong&gt;&lt;/a&gt;. AI can generate not just text answers but visual, animated, intuitive explanations. That makes concept onboarding faster for both students and new faculty.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=teacher-first-ai&#34;&gt;&lt;strong&gt;Keep teacher adoption in familiar formats&lt;/strong&gt;&lt;/a&gt;. A good innovation that slots into slides, handouts, OCR flows, and short feedback loops will beat a brilliant system nobody can actually use next semester.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;6. Build the infrastructure for AI in education&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;⭐ &lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=ai-grading&#34;&gt;&lt;strong&gt;Break rubrics into binary sub-criteria; reason before judging&lt;/strong&gt;&lt;/a&gt;. Open-ended project grading becomes more auditable when you decompose it into binary yes/no criteria and ask the model to explain its reasoning before delivering a verdict. High or suspicious scores get re-evaluated with stronger guardrails.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=shared-ai-access&#34;&gt;&lt;strong&gt;Give every student shared, budgeted AI access&lt;/strong&gt;&lt;/a&gt;. If AI access depends on personal subscriptions, the institution is quietly grading wealth, not skill. Shared governed access makes AI a course capability, not a private advantage.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=ai-routine-human-judgment&#34;&gt;&lt;strong&gt;Let AI handle routine support; keep humans for judgment&lt;/strong&gt;&lt;/a&gt;. AI handles repetitive, searchable, first-pass questions. Humans handle ambiguity, reassurance, escalation, and final accountability. Neither alone is the right model at scale.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=canonical-qa&#34;&gt;&lt;strong&gt;Turn recurring answers into canonical Q&amp;amp;A cards&lt;/strong&gt;&lt;/a&gt;. Once the same question appears three times, it should stop living in somebody&amp;rsquo;s head or an old thread. Convert it into a canonical artifact that both humans and bots can cite consistently.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=green-amber-red&#34;&gt;&lt;strong&gt;Govern with green/amber/red review levels&lt;/strong&gt;&lt;/a&gt;. Not every decision needs the same scrutiny. Auto-ship the low-risk, spot-check the medium-risk, always human-review the high-stakes. This is how you scale without losing trust.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=shadow-mode-rollout&#34;&gt;&lt;strong&gt;Roll out in shadow mode first&lt;/strong&gt;&lt;/a&gt;. High-stakes academic workflows should not be launched with fingers crossed. Run the AI system quietly in parallel with human judgment and learn before turning it loose.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=policy-as-code&#34;&gt;&lt;strong&gt;Turn policy into executable checks&lt;/strong&gt;&lt;/a&gt;. A policy that cannot be operationalized at scale is mostly theater. If you can translate rules and rubrics into machine-checkable form, governance becomes consistent rather than person-dependent.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=open-course&#34;&gt;&lt;strong&gt;Make the course publicly inspectable&lt;/strong&gt;&lt;/a&gt;. Openness raises the bar. It invites scrutiny, reuse, criticism, and improvement, and it turns the course into a visible institutional experiment rather than a sealed classroom.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=reasoning-verifier&#34;&gt;&lt;strong&gt;Use reasoning models only for the borderline cases&lt;/strong&gt;&lt;/a&gt;. Cheap screening first, expensive verification for the high-stakes or suspicious. Increasing reasoning effort on even a small model can flip an evaluator from sloppy to reliable — the cost curve makes this the natural operating model.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;7. Analyze and research learning exhaust&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=track-ai-tools&#34;&gt;&lt;strong&gt;Track which AI tools students actually use&lt;/strong&gt;&lt;/a&gt;. Once AI use is instrumented, you stop guessing. You can see which models students choose, when they ask for help, and what behavior actually correlates with success.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=behavior-data-exam&#34;&gt;&lt;strong&gt;Redesign exams from behavior data, not intuition&lt;/strong&gt;&lt;/a&gt;. Model choice, timing, retry patterns, and deadline behavior all reveal how students really work. That should feed back into question design, support strategy, and pacing.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=pre-compile-analysis&#34;&gt;&lt;strong&gt;Analyze broken code before it compiles&lt;/strong&gt;&lt;/a&gt;. Novices often fail at syntax long before you reach the real misconception. Structural parsing of broken code lets you give feedback on thought process instead of just rejecting the submission.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=code-trace-misconceptions&#34;&gt;&lt;strong&gt;Use code traces to surface hidden misconceptions&lt;/strong&gt;&lt;/a&gt;. Timestamped traces reveal overfitting, thrashing, structural confusion, and missing invariants — patterns that polished final submissions hide entirely.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=exam-replay&#34;&gt;&lt;strong&gt;Turn replay galleries into faculty-readable stories&lt;/strong&gt;&lt;/a&gt;. Raw logs do not change policy. Narrated replays and plain-language error-pattern reports do. The point is to make evidence legible to decision-makers, not just analysts.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=coachable-steps&#34;&gt;&lt;strong&gt;Break problem-solving into coachable steps&lt;/strong&gt;&lt;/a&gt;. &amp;ldquo;Weak student&amp;rdquo; is too vague to be useful. Better to ask: did they fail at reading the givens, choosing a strategy, surviving a multi-select trap, or knowing when to cut losses? Each is a trainable failure mode.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=peer-review-bias&#34;&gt;&lt;strong&gt;Study bias in peer review itself&lt;/strong&gt;&lt;/a&gt;. If peer assessment matters, reviewer quality matters too. You can detect generous, timid, extreme, and calibrated graders from the data, then moderate or train accordingly.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=learning-analytics&#34;&gt;&lt;strong&gt;Treat learning analytics as a reusable research programme, not a one-off dashboard&lt;/strong&gt;&lt;/a&gt;. The infrastructure for tracking misconceptions, prerequisite transfer, and course-to-course movement can be built once and reused across cohorts. That turns isolated AI experiments into institute-level knowledge and publishable educational research.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;8. Upgrade the human role&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=judgment-taste&#34;&gt;&lt;strong&gt;Make judgment and taste explicit learning goals&lt;/strong&gt;&lt;/a&gt;. AI makes average output cheap. The premium moves to selecting what is worth doing, recognizing quality, and knowing what to reject. That is a teachable skill, not a vague aspiration.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=directional-feedback&#34;&gt;&lt;strong&gt;Teach directional feedback as a skill&lt;/strong&gt;&lt;/a&gt;. You do not always need to micromanage AI with detailed corrections. The higher-order skill is to say &amp;ldquo;more concrete,&amp;rdquo; &amp;ldquo;less jargon,&amp;rdquo; &amp;ldquo;optimize for faculty adoption,&amp;rdquo; or &amp;ldquo;make this defensible.&amp;rdquo; That is learnable and more effective than micromanaging.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=manage-agents&#34;&gt;&lt;strong&gt;Teach faculty to manage agents, not just chat with them&lt;/strong&gt;&lt;/a&gt;. Institutional AI does not scale on prompting alone. People need to learn specs, budgets, kill switches, and escalation rules — orchestration literacy, not just chatbot familiarity.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=ai-coach&#34;&gt;&lt;strong&gt;Use AI as a personalized coach&lt;/strong&gt;&lt;/a&gt;. The model is not just an answer engine. It can become a research guide, curiosity amplifier, and next-step recommender tailored to the individual learner&amp;rsquo;s gaps and goals.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=no-code-tools&#34;&gt;&lt;strong&gt;Let non-coders build interactive learning tools&lt;/strong&gt;&lt;/a&gt;. AI lowers the cost of making timelines, maps, biographies, and interactive explainers. That opens AI-native pedagogy far beyond computer science into humanities and social sciences.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sanand0.github.io/talks/2026-03-18-iitm-academic-council/ideas/table.html?id=parallel-ai&#34;&gt;&lt;strong&gt;Teach students to run many AI attempts in parallel&lt;/strong&gt;&lt;/a&gt;. One of the biggest AI-native workflow shifts is from single-path effort to portfolio thinking — run several attempts, compare them, and converge faster. That is a teachable habit, not an obvious default.&lt;/li&gt;
&lt;/ul&gt;
</description>
    </item>
    <item>
      <title>Tools in Data Science - Jan 2026</title>
      <link>https://www.s-anand.net/blog/tools-in-data-science-jan-2026/</link>
      <pubDate>Thu, 29 Jan 2026 07:33:22 +0800</pubDate>
      <guid>https://www.s-anand.net/blog/tools-in-data-science-jan-2026/</guid>
      <description>&lt;p&gt;My &lt;a href=&#34;https://tds.s-anand.net/&#34;&gt;Tools in Data Science course&lt;/a&gt; is available publicly, with a few changes from last year.&lt;/p&gt;
&lt;p&gt;First, I &lt;strong&gt;removed all the content&lt;/strong&gt;! Last year, Claude generated teaching material using my prompts. But what&amp;rsquo;s the point? I might as well give students the prompts directly. They can tweak it to their needs.&lt;/p&gt;
&lt;p&gt;This time, TDS shares the &lt;strong&gt;questions&lt;/strong&gt; needed to learn a topic. Any AI will give you good answers.&lt;/p&gt;
&lt;p&gt;Second, it focuses on &lt;strong&gt;what AI does NOT do well&lt;/strong&gt;. Coding syntax? Who cares. Basic analysis? ChatGPT can do that. In fact, each question now has an &amp;ldquo;Ask AI&amp;rdquo; button that dumps the question into your favorite AI tool. Just paste the answer and move on.&lt;/p&gt;
&lt;p&gt;&lt;img loading=&#34;lazy&#34; src=&#34;https://files.s-anand.net/images/2026-01-29-tools-in-data-science-jan-2026.webp&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;But&lt;/strong&gt;, these questions (hopefully) teach you &lt;em&gt;where AI fails&lt;/em&gt;. Putting tools together, prompting well, debugging and evaluating the output, etc. These matter more.&lt;/p&gt;
&lt;p&gt;Third, it&amp;rsquo;s &lt;strong&gt;easier to audit&lt;/strong&gt;. Anyone can take the course, even outside IITM. You can join the &lt;a href=&#34;https://groups.google.com/g/tds-iitm&#34;&gt;public Google Group&lt;/a&gt; for announcements. All &lt;a href=&#34;https://github.com/sanand0/tools-in-data-science-public/discussions&#34;&gt;questions are discussed publicly on GitHub&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;So, check the new version out, learn, and please share feedback!&lt;/p&gt;
</description>
    </item>
    <item>
      <title></title>
      <link>https://www.s-anand.net/blog/tds-2025-sep-edition/</link>
      <pubDate>Thu, 25 Sep 2025 00:00:00 +0000</pubDate>
      <guid>https://www.s-anand.net/blog/tds-2025-sep-edition/</guid>
      <description>&lt;p&gt;Tools in Data Science Sep 2025 edition is live: &lt;a href=&#34;https://tds.s-anand.net/&#34;&gt;https://tds.s-anand.net/&lt;/a&gt;. Major update: a new AI-Coding section and fresh projects.&lt;/p&gt;
&lt;p&gt;I teach TDS at the Indian Institute of Technology, Madras as part of the BS in Data Science. Anyone can audit. The course is public. You can read the content and practice assessments.&lt;/p&gt;
&lt;p&gt;I fed the May 2025 term student feedback into The Sales Mind and asked:&lt;/p&gt;
&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;What are the top non-intuitive / surprising inferences?&lt;/li&gt;
&lt;li&gt;What are interesting observations?&lt;/li&gt;
&lt;li&gt;What are high impact actions?&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;Full analysis: &lt;a href=&#34;https://chatgpt.com/share/68cba081-afc0-800c-9da3-75222e84a499&#34;&gt;https://chatgpt.com/share/68cba081-afc0-800c-9da3-75222e84a499&lt;/a&gt;: summary, outliers, and action ideas.&lt;/p&gt;
&lt;p&gt;Most students find the course tough (or at least time-consuming), especially the Remote Online Exam (ROE).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Surprise&lt;/strong&gt;: students who mentioned ROE time limits rated it 2.61 vs 2.33 (+12%!). Those who felt time pressure also saw more value &amp;ndash; suggesting &amp;ldquo;desirable difficulty,&amp;rdquo; rather than frustration.&lt;/p&gt;
&lt;p&gt;A minority even asked for &lt;em&gt;tougher projects&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;The main actions are faster feedback loops, automated pre-checks, mock ROEs, clear rubrics, etc.&lt;/p&gt;
&lt;p&gt;But my two takeaways are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Students value rigor and challenge, even if it makes the course harder.&lt;/li&gt;
&lt;li&gt;Using LLMs to analyze student feedback is a force multiplier for instructors.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img loading=&#34;lazy&#34; src=&#34;https://files.s-anand.net/images/2025-09-25-tds-2025-sep-edition-linkedin.jpg&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://www.linkedin.com/posts/sanand0_tools-in-data-science-sep-2025-edition-is-activity-7376125707355291648-OjoK&#34;&gt;LinkedIn&lt;/a&gt;&lt;/p&gt;
</description>
    </item>
    <item>
      <title></title>
      <link>https://www.s-anand.net/blog/tds-llm-evaluation/</link>
      <pubDate>Fri, 12 Sep 2025 00:00:00 +0000</pubDate>
      <guid>https://www.s-anand.net/blog/tds-llm-evaluation/</guid>
      <description>&lt;p&gt;My &lt;em&gt;Tools in Data Science&lt;/em&gt; course uses LLMs for assessments. We use LLMs to&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Suggest project ideas (I pick), e.g. &lt;a href=&#34;https://chatgpt.com/share/6741d870-73f4-800c-a741-af127d20eec7&#34;&gt;https://chatgpt.com/share/6741d870-73f4-800c-a741-af127d20eec7&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Draft the project brief (we edit), e.g. &lt;a href=&#34;https://docs.google.com/document/d/1VgtVtypnVyPWiXied5q0_CcAt3zufOdFwIhvDDCmPXk/edit&#34;&gt;https://docs.google.com/document/d/1VgtVtypnVyPWiXied5q0_CcAt3zufOdFwIhvDDCmPXk/edit&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Propose scoring rubrics (we tweak), e.g. &lt;a href=&#34;https://chatgpt.com/share/68b8eef6-60ec-800c-8b10-cfff1a571590&#34;&gt;https://chatgpt.com/share/68b8eef6-60ec-800c-8b10-cfff1a571590&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Score code against the rubric (we test), e.g. &lt;a href=&#34;https://github.com/sanand0/tds-evals/blob/5cfabf09c21c2884623e0774eae9a01db212c76a/llm-browser-agent/process_submissions.py&#34;&gt;https://github.com/sanand0/tds-evals/blob/5cfabf09c21c2884623e0774eae9a01db212c76a/llm-browser-agent/process_submissions.py&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Analyze the results (we refine), e.g. &lt;a href=&#34;https://chatgpt.com/share/68b8f962-16a4-800c-84ff-fb9e3f0c779a&#34;&gt;https://chatgpt.com/share/68b8f962-16a4-800c-84ff-fb9e3f0c779a&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;This changed our assessments process. It&amp;rsquo;s easier &lt;em&gt;and&lt;/em&gt; better.&lt;/p&gt;
&lt;p&gt;Earlier, TAs took 2 &lt;strong&gt;weeks&lt;/strong&gt; to evaluate 500 code submissions. In the example above, it took 2 &lt;strong&gt;hours&lt;/strong&gt;. Quality held up: LLMs match my judgement as closely as TAs do but run fast and at scale.&lt;/p&gt;
&lt;p&gt;LLM-graded reviews aren&amp;rsquo;t just a cost hack. They&amp;rsquo;re a &lt;strong&gt;scale&lt;/strong&gt; and &lt;strong&gt;quality&lt;/strong&gt; lever.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;We create new assessments fast. The example took ~2 hours to ideate.&lt;/li&gt;
&lt;li&gt;We run, analyze and iterate just as fast. This full loop now takes ~2 hours.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;I &lt;em&gt;no longer have an excuse&lt;/em&gt; to teach outdated content.&lt;/p&gt;
&lt;p&gt;Prompts &amp;amp; code: &lt;a href=&#34;https://github.com/sanand0/tds-evals/tree/main/llm-browser-agent&#34;&gt;https://github.com/sanand0/tds-evals/tree/main/llm-browser-agent&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img loading=&#34;lazy&#34; src=&#34;https://files.s-anand.net/images/2025-09-12-tds-llm-evaluation-linkedin.jpg&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://www.linkedin.com/posts/sanand0_my-%F0%9D%98%9B%F0%9D%98%B0%F0%9D%98%B0%F0%9D%98%AD%F0%9D%98%B4-%F0%9D%98%AA%F0%9D%98%AF-%F0%9D%98%8B%F0%9D%98%A2%F0%9D%98%B5%F0%9D%98%A2-%F0%9D%98%9A%F0%9D%98%A4%F0%9D%98%AA%F0%9D%98%A6%F0%9D%98%AF%F0%9D%98%A4%F0%9D%98%A6-activity-7369317805403369473-TjAV&#34;&gt;LinkedIn&lt;/a&gt;&lt;/p&gt;
</description>
    </item>
    <item>
      <title>Tools in Data Science course is free for all</title>
      <link>https://www.s-anand.net/blog/tools-in-data-science-course-is-free-for-all/</link>
      <pubDate>Thu, 01 May 2025 13:28:34 +0000</pubDate>
      <guid>https://www.s-anand.net/blog/tools-in-data-science-course-is-free-for-all/</guid>
      <description>&lt;p&gt;My &lt;a href=&#34;https://study.iitm.ac.in/ds/course_pages/BSSE2002.html&#34;&gt;Tools in Data Science course&lt;/a&gt; is now open for anyone to audit.&lt;/p&gt;
&lt;p&gt;It&amp;rsquo;s part of the Indian Institute of Technology, Madras &lt;a href=&#34;https://study.iitm.ac.in/ds/&#34;&gt;BS in Data Science&lt;/a&gt; online program. Here are some of the topics it covers in ~10 weeks:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Development Tools&lt;/strong&gt;: uv, git, bash, llm, sqlite, spreadsheets, AI code editors&lt;br&gt;
&lt;strong&gt;Deployment Tools&lt;/strong&gt;: Colab, Codespaces, Docker, Vercel, ngrok, FastAPI, Ollama&lt;br&gt;
&lt;strong&gt;LLMs&lt;/strong&gt;: prompt engineering, RAG, embeddings, topic modeling, multi-modal, real-time, evals, self-hosting&lt;br&gt;
&lt;strong&gt;Data Sourcing&lt;/strong&gt;: Scraping websites and PDF with spreadsheets, Python, JavaScript and LLMs&lt;br&gt;
&lt;strong&gt;Data Preparation&lt;/strong&gt;: Transforming data, images and audio with spreadsheets, bash, OpenRefine, Python, and LLMs&lt;br&gt;
&lt;strong&gt;Data Analysis&lt;/strong&gt;: Statistical, geospatial, and network analysis with spreadsheets, Python, SQL, and LLMs&lt;br&gt;
&lt;strong&gt;Data Visualization&lt;/strong&gt;: Data visualization and storytelling with spreadsheets, slides, notebooks, code, and LLMs&lt;/p&gt;
&lt;p&gt;It includes 2 projects, 7 graded assignments, and a remote online exam.&lt;/p&gt;
&lt;p&gt;It&amp;rsquo;s a fairly tough course. Solve the &lt;a href=&#34;https://exam.sanand.workers.dev/tds-2025-05-ga1&#34;&gt;first assignment&lt;/a&gt; to decide if you should take the course.&lt;/p&gt;
&lt;p&gt;Course: &lt;a href=&#34;https://tds.s-anand.net/&#34;&gt;https://tds.s-anand.net/&lt;/a&gt;&lt;br&gt;
Code: &lt;a href=&#34;https://github.com/sanand0/tools-in-data-science-public/&#34;&gt;https://github.com/sanand0/tools-in-data-science-public/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://www.linkedin.com/feed/update/urn%3Ali%3Ashare%3A7323681185124012032&#34;&gt;LinkedIn&lt;/a&gt;&lt;/p&gt;
</description>
    </item>
    <item>
      <title>Feedback for TDS Jan 2025</title>
      <link>https://www.s-anand.net/blog/feedback-for-tds-jan-2025/</link>
      <pubDate>Wed, 30 Apr 2025 16:43:11 +0000</pubDate>
      <guid>https://www.s-anand.net/blog/feedback-for-tds-jan-2025/</guid>
      <description>&lt;p&gt;When I feel completely useless, it helps to look at nice things people have said about my work.&lt;/p&gt;
&lt;p&gt;In this case, it&amp;rsquo;s the &lt;a href=&#34;https://discourse.onlinedegree.iitm.ac.in/t/my-feedback-for-this-course/160097/5&#34;&gt;feedback&lt;/a&gt; for my &lt;a href=&#34;https://tds.s-anand.net/&#34;&gt;Tools in Data Science&lt;/a&gt; course last term. Here are the ones I enjoyed reading.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;Having a coding background, the first GA seemed really easy. So I started the course thinking that it’ll be an easy S grade course for me. Oh how wrong was I!!&lt;/p&gt;
&lt;p&gt;The sleepless nights cursing my laptop for freezing while my docker image installed huge CUDA libraries with sentence-transformers; and then finding ways to make sure it does not, and then getting rid of the library itself, it’s just one example of how I was forced to become better by finding better solutions to multiple problems. This is one of the hardest, most frustrating and the most satisfying learning experience I’ve ever had, besides learning ML from Arun sir.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;@s.anand&lt;/code&gt; sir did a tremendous job of designing this course. I feel this course ties every other course together by applying learnings from each course and building further upon them. I learnt development in python and APIs in MAD-1, JS in MAD-2, bash scripting in SC, SQL in DBMS, data structures in PDSA and TDS had applications of each. In MAD projects, we made an app and submitted it as zip file. Here we went on to learn to containerise our app and deploy and also make the process automated. Our apps combined python and shell scripting along with the power of LLMs. Yeah the projects did seem extremely overwhelming but the learning is invaluable.&lt;/p&gt;
&lt;p&gt;@Jivraj @Saransh_Saini @Carlton I’m sure it wasn’t an easy task being the TA of this course. Thanks for all the help throughout the term with the Mock ROEs, project sessions and clearing doubts in discourse and live sessions.&lt;/p&gt;
&lt;p&gt;I still got an S grade but it was a very hard-fought S with the help of some luck. I’d love to follow the changes this course goes through in the upcoming terms.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;This course was the most exciting and memorable of all the courses I have taken so far (actually of all the courses in the diploma level, I have completed all 🙂 by now ). I had the technical background and as @22f3000819 mentioned I thought it was going to be an easy ride but I was wrong. It was challenging as well as fun at the same time.&lt;/p&gt;
&lt;p&gt;The best part of the course is that it is open internet and we are free to explore, use LLMs and get the things done. This way of learning to me is the most effective. I have the guide and now I can devise how I should approach the things.&lt;/p&gt;
&lt;p&gt;Everything ROE, Project 1, Project 2 was quite challenging and fun at the same time. Projects were the best part of the course. I learned how things can go wrong when we deploy it. I collaborated with @ItsMeAlex, @trebhuvansb, @23f1002382 and @22f3002933 for Project 2.&lt;br&gt;
My Project 2 repo even got 17 forks and 4 stars and scored 20/20 on evaluation. This adventure ended with the relaxing end term paper and an overall “S” grade.&lt;/p&gt;
&lt;p&gt;Also I must say the support team of TDS is the best so far in the program. I had conversation with @Jivraj, @Saransh_Saini and @Carlton sir and they are super helpful. I would really miss these sessions. I attended the live sessions by &lt;code&gt;@s.anand&lt;/code&gt; sir and sir’s take on the questions were really insightful and even made me think differently than my perspective.&lt;/p&gt;
&lt;p&gt;When we do something different it ought to have challenges both operational and technical but the TDS support team tried to give its best. Many a times I too had raised concerns but the team tried to resolve it to their best capabilities.&lt;/p&gt;
&lt;p&gt;At last I would like to say, without any hesitation, I had experienced the best part of the program till now in the last 3-4 months. Hoping to meet the team and my fellow peers in person during the Paradox 🙂.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;strong&gt;My TDS Journey&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;“A Tale of Bugs, Chaos &amp;amp; Miraculous Comebacks”&lt;/strong&gt; 😅📊🔥&lt;/p&gt;
&lt;p&gt;So, I did something &lt;strong&gt;bold&lt;/strong&gt; (or reckless, depends on how you see it)—took the TDS (Tools in Data Science) course &lt;strong&gt;right in my first term&lt;/strong&gt;. Why? Because curiosity got the better of me, and I thought, “Eh, GA1 went fine, how hard could it be?” &lt;strong&gt;(Spoiler: Very hard.)&lt;/strong&gt; Not a decision I recommend unless you’re into academic masochism. 😅&lt;/p&gt;
&lt;p&gt;The first few modules hit me like &lt;strong&gt;three courses merged into one&lt;/strong&gt; 📚. Maybe because I was totally unprepared, maybe because TDS has a secret pact with chaos.&lt;br&gt;
Did all 7 GA …it was very time consuming but fun too …learnt new tools with every question. But hey, the &lt;strong&gt;live lectures&lt;/strong&gt; were fantastic 🎤, the &lt;strong&gt;modules were well-structured&lt;/strong&gt; 🏗️, and thank goodness for the lifesaving &lt;strong&gt;Discourse forum and group&lt;/strong&gt;, where the real MVPs reside 🏆.&lt;/p&gt;
&lt;p&gt;Then came &lt;strong&gt;Project 1&lt;/strong&gt;. Ah yes, my nemesis. I’d write code, &lt;strong&gt;it would run perfectly&lt;/strong&gt;, then—bam! A random error just to keep things from getting doable⚠️. Was it &lt;strong&gt;404? 500? Who knows!&lt;/strong&gt; I basically developed muscle memory for every error code in existence 💻🤯. The grand result? &lt;strong&gt;2/20.&lt;/strong&gt; At this point, my grade looked like it had fallen off a cliff 🏔️, and I wasn’t sure if I could &lt;strong&gt;salvage an B—or even a C, honestly&lt;/strong&gt;… with -18 in my balance due to P1 and a trauma for P2 I couldn’t have expected more… no?&lt;/p&gt;
&lt;p&gt;Entered the &lt;strong&gt;TA sessions and peer-powered survival squad&lt;/strong&gt; 🛡️—my saving grace. &lt;strong&gt;ROE, the supposedly impossible exam&lt;/strong&gt;, where I thought even a 50% would be a miracle?..got &lt;strong&gt;100%.&lt;/strong&gt; Same for &lt;strong&gt;Project 2—100%.&lt;/strong&gt; Even after initially refusing to believe it, reality set in, and my **end-term score also landed around 90 ** (thanks to the PYQs and those 300 github ques…definitely recommending the next term student to solve and understand all the pyqs fr), then wrapping the final score with some gift wrappers of a few bonus marks… this deal got sealed with a confident A …&lt;/p&gt;
&lt;p&gt;.🥁…drumrolls…🥁&lt;/p&gt;
&lt;p&gt;An 🎉&lt;strong&gt;A.&lt;/strong&gt; 🎉&lt;/p&gt;
&lt;p&gt;This course was &lt;strong&gt;brutal&lt;/strong&gt;, but in the best way possible 💡. It threw me into battles with &lt;strong&gt;LLMs, never-ending questions&lt;/strong&gt;, and existential crises over debugging 🔍. But now, I have actual &lt;strong&gt;skills&lt;/strong&gt; (and scars) that I’ll carry into my future projects of MAD1, MAD2, MLP, and BDM which will be a whole new experience🚀.&lt;/p&gt;
&lt;p&gt;Looking back, the syllabus was &lt;strong&gt;a wild mix of survival skills and superpowers&lt;/strong&gt;—building models, deploying them, wrestling with LLMs, and somehow convincing messy data to behave. And just when we thought we had conquered it all, Project 1 &lt;strong&gt;pulled us into the abyss&lt;/strong&gt;. Now, with Data Analysis and Visualization still in the works, the adventure wasn’t over. Because what’s data science without &lt;strong&gt;some surprises and flashy charts to flex?&lt;/strong&gt; 😆📊&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;For future students?&lt;/strong&gt; Take it &lt;strong&gt;later in the diploma&lt;/strong&gt;, enjoy the &lt;strong&gt;mad ride&lt;/strong&gt;, and remember—&lt;strong&gt;even if you bomb a project, there can always be a comeback.&lt;/strong&gt; 🏆 &lt;strong&gt;TDS is tough, but resilience matters more than perfection.&lt;/strong&gt; Even if you get 10/100(which I got) on a project, learn from it, adapt, and come back stronger.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Massive thanks&lt;/strong&gt; to &lt;code&gt;@s.anand&lt;/code&gt; sir for making this learning experience possible, and a special shoutout to @Carlton sir, @Saransh_Saini sir, and @Jivraj for patiently resolving our &lt;strong&gt;chaotic&lt;/strong&gt; issues 🙏.&lt;br&gt;
Your guidance made a challenging journey both rewarding and insightful. Grateful for everything!&lt;br&gt;
TDS—difficult, enlightening, and &lt;strong&gt;totally worth it.&lt;/strong&gt; 🤓✨&lt;/p&gt;
&lt;p&gt;(This gracious furry benefactor granted us a deadline extension—P1 survivors can relate #thanks_to_carlton_sir, we know how crucial that was. So, signing off with a &lt;strong&gt;furry and really grateful&lt;/strong&gt; thank you! 🐱 ⌛ 🎓)&lt;/p&gt;
</description>
    </item>
    <item>
      <title>Things I Learned - 23 Feb 2025</title>
      <link>https://www.s-anand.net/blog/things-i-learned-23-feb-2025/</link>
      <pubDate>Sun, 23 Feb 2025 00:00:00 +0000</pubDate>
      <guid>https://www.s-anand.net/blog/things-i-learned-23-feb-2025/</guid>
      <description>&lt;p&gt;This week, I learned:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Remote Desktop may be the easiest way to have a Windows machine access files / screen from another Windows machine, even for home PCs.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://caddyserver.com/&#34;&gt;Caddy&lt;/a&gt; sets up reverse proxies that get &lt;em&gt;automatic SSL certificates&lt;/em&gt; from &lt;a href=&#34;https://letsencrypt.org/&#34;&gt;Let&amp;rsquo;s Encrypt&lt;/a&gt;!&lt;/li&gt;
&lt;li&gt;The &lt;a href=&#34;https://www.nomic.ai/blog/posts/nomic-embed-text-v1&#34;&gt;Nomic Embed v2&lt;/a&gt; blog post has an excellent visualization for embedding quality. It takes all Wikipedia disambiguation articles and shows them on a Nomic Atlas, embedded via Nomic Embed v2. It lets you toggle to OpenAI text-ada-002 which moves the topics far away. Visually, this is very convincing.&lt;/li&gt;
&lt;li&gt;Python 3.15 will enable UTF-8 mode by default. &lt;a href=&#34;https://peps.python.org/pep-0686/&#34;&gt;PEP 686&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Python 3.13 supports sub-interpreters to bypass the GIL. It&amp;rsquo;s &lt;em&gt;quite&lt;/em&gt; like web workers. &lt;a href=&#34;https://peps.python.org/pep-0554/&#34;&gt;PEP 554&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;The quickest way to change the &lt;code&gt;fish&lt;/code&gt; prompt is &lt;code&gt;function fish_prompt; echo &#39;&amp;gt; &#39;; end&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;At PyConf Hyderabad, about 3 people had read a PEP. 1 had used the &lt;code&gt;match&lt;/code&gt; operator. But 80% knew what a Vector DB was. 20% had used a Gemini API. That&amp;rsquo;s how much traction LLM development is getting.&lt;/li&gt;
&lt;li&gt;The productivity benefit people report from using LLms is about 3X. &lt;a href=&#34;https://bsky.app/profile/emollick.bsky.social/post/3li4a2jal322a&#34;&gt;Ethan Mollick&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Soon, you&amp;rsquo;ll be able to send an LLM to a virtual meeting on your behalf. It will talk like you. &lt;a href=&#34;https://bsky.app/profile/emollick.bsky.social/post/3lif6r42fp226&#34;&gt;Ethan Mollick&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Models tend to claim ignorance when you test them on topics they should avoid. But tend to answer when not being tested. Sneaky! &lt;a href=&#34;https://bsky.app/profile/emollick.bsky.social/post/3lihsmpsqyk27&#34;&gt;Ethan Mollick&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Mermaid has an &lt;a href=&#34;https://mermaid.js.org/syntax/architecture.html&#34;&gt;Architecture Diagrams Syntax&lt;/a&gt; (in beta) that&amp;rsquo;s capable of creating elegant architecture diagrams with icons.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.teamblind.com/&#34;&gt;Blind&lt;/a&gt; is an app that allows users to post anonymously. It&amp;rsquo;s particularly useful to find honest negative feedback about (mostly US) companies.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://iconify.design/&#34;&gt;Iconify.design&lt;/a&gt; is a single npm interface to most open source icon sets. It includes FontAwesome, Bootstrap, Material Design, and many others. &lt;a href=&#34;https://icones.js.org/&#34;&gt;icones.js.org&lt;/a&gt; is an alternate interface.&lt;/li&gt;
&lt;li&gt;Self-pity may have evolved as a signal for social support and reducing conflict, while also encouraging self-reflection and behavioral adjustment. But in modern contexts it may be maladaptive and lead to depression. &lt;a href=&#34;https://chatgpt.com/share/67b74759-4cdc-800c-8250-2d1757c5e85c&#34;&gt;ChatGPT&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Anecdotally, Grok 3 is very good for researching company information and latest news, particularly employee and customer sentiment. DeepSeek and Claude write more humanely than OpenAI. via Alberto Lopez Toledo, White Star Capital&lt;/li&gt;
&lt;li&gt;There&amp;rsquo;s a &lt;a href=&#34;https://www.ycombinator.com/companies/founders&#34;&gt;YCombinator Founder Directory&lt;/a&gt; listing all founders of YC companies. At the moment, there are 8,628 founders. There&amp;rsquo;s also a &lt;a href=&#34;https://www.startupschool.org/&#34;&gt;co-founder matching tool&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;LLMs are impacting not just data queries but geospatial queries as well. Here&amp;rsquo;s a good example of &lt;a href=&#34;https://element84.com/machine-learning/natural-language-geocoding/&#34;&gt;Natural Language Geocoding&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;US companies typically pay employees every 2 weeks not every month.&lt;/li&gt;
&lt;li&gt;What&amp;rsquo;s good about Snowflake? A few developers who explored it mentioned that:
&lt;ul&gt;
&lt;li&gt;Its ability to scale up compute automatically makes queries run faster.&lt;/li&gt;
&lt;li&gt;&amp;ldquo;Time travel&amp;rdquo; allows you to see how data looked at any point in time and that is impressive and useful.&lt;/li&gt;
&lt;li&gt;Live data sharing with access control without the need for ETL pipelines is useful.&lt;/li&gt;
&lt;li&gt;Open-source competition: ClickHouse, Apache Druid, and Presto/Trino&lt;/li&gt;
&lt;li&gt;DataBricks is a lakehouse and less a data warehouse. It&amp;rsquo;s more about:
&lt;ul&gt;
&lt;li&gt;storing unstructured data (Snowflake prefers semi-structured: JSON, Avro, etc.)&lt;/li&gt;
&lt;li&gt;running collaborative notebooks in Python, SQL, Scala, R (Snowflake encourages SQL)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;I subscribed to ChatGPT Pro mainly for DeepResearch. Here are the first 50 reports I generated:
&lt;ol&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67b49a7b-a4c0-800c-a3dc-c5ab1ced23fe&#34;&gt;&lt;code&gt;uv&lt;/code&gt; Package Manager Overview&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67b4abfa-37b0-800c-a6e4-23b6c12e38b6&#34;&gt;DuckDB Analytics Comparison&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67b4f8eb-d1f4-800c-824d-f0ca65ed7f54&#34;&gt;Rust vs Python / JavaScript&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67b4fbc7-e6bc-800c-b2aa-dbf21339c8fc&#34;&gt;Modern Data Engineering Course&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67b50772-f4c8-800c-b20c-8dd04d1b5e69&#34;&gt;LLM Code Migration Practices&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67b5f809-9a5c-800c-8472-1153b2e4c1ae&#34;&gt;Cloud Cost Optimization Strategies&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67b61969-2030-800c-99c2-8585b63aa392&#34;&gt;LLM Coding Interview Tools Report&lt;/a&gt; (compare with &lt;a href=&#34;https://www.perplexity.ai/search/the-interview-coder-repo-https-g_k0T2DSQIuiWntUFjbyOg&#34;&gt;Perplexity&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67b63db0-8720-800c-87c6-f0b42581d801&#34;&gt;Text To Speech Engines&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67b74802-8b34-800c-9ea3-2972db4d80c6&#34;&gt;Customer Service in Indian Public Sector Banks&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67b75104-28e4-800c-87b8-f9c3d41a2cc9&#34;&gt;LLMs in Software Development&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Old version 1: &lt;a href=&#34;https://chatgpt.com/share/67b7483a-5cd4-800c-a330-ba4a984b9248&#34;&gt;Gen AI in Software Development&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Old version 2: &lt;a href=&#34;https://chatgpt.com/share/67b75215-12f4-800c-9f9f-04c1f105b304&#34;&gt;Gen AI in Software Development&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67b750f2-8ea4-800c-9721-bb9abbd46b29&#34;&gt;Leadership Training Content&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67bafb23-cf14-800c-9b76-65f11285ae3a&#34;&gt;Open-Source HTTP Servers&lt;/a&gt;. Caddy wins.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67bf66b3-98b8-800c-8482-3ce42f100bb9&#34;&gt;Deep Research Use Cases&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67bf6c69-a5d0-800c-8a49-12a46f29fef9&#34;&gt;Nagpur No-Parking Violations&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67bf6e2a-2db0-800c-9975-c6b3479fa279&#34;&gt;Data Science in Food Services&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67bf7946-c80c-800c-8132-6f4018455a68&#34;&gt;Deep Research Disruption to Research Firms&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67c3a676-c088-800c-bbdc-b638a99df50b&#34;&gt;LLMs in Design Thinking&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67c56f48-3a8c-800c-bf5f-b1eeb91a529c&#34;&gt;EU Taxonomy Report Clarification&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67c6d513-8040-800c-bdc9-7d6d1bcd52f9&#34;&gt;Shell Valuation Analysis Inquiry&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/c/67c7991d-0358-800c-b450-8e81819267a6&#34;&gt;LLMs in DSLs Research&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67c7edad-bd78-800c-80a7-ed08dd97c1cf&#34;&gt;Public API-Based Data Storage Options&lt;/a&gt;. Supabase wins.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67ca8963-f564-800c-ae06-54464b58cf1d&#34;&gt;Front-End JS Frameworks Analysis&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67ca8953-97a4-800c-baea-ad0de5836f12&#34;&gt;Database Evaluation Guide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67ca893e-6450-800c-bd0a-d6213f48c356&#34;&gt;CSS Frameworks Evaluation Guide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67ca8920-dc3c-800c-bf56-6231a6028e70&#34;&gt;CI/CD Tooling Ecosystem Report&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67ca88ee-f568-800c-ad74-e38ae385e61c&#34;&gt;Color Names Count&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67cc36c7-0b20-800c-a3f4-56bada95cb7b&#34;&gt;S Anand Biography&lt;/a&gt;. Meh, I know more about me, and it gets a few things wrong.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67ce2e28-d3ac-800c-a55f-e51b1c27d9c2&#34;&gt;Cosmere Secrets Encyclopedia&lt;/a&gt;. This is the best. Deep Research is great if it&amp;rsquo;s stuff I actually want to read, rather than just learn about.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67ce4df7-4088-800c-94e7-8a3edb02a8f6&#34;&gt;DBT course&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67ce4e10-2968-800c-b663-8842045c1626&#34;&gt;Future of Coding AI&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67ce4dcd-5cf8-800c-837c-6d05bd61822e&#34;&gt;Claude Artifacts Use Cases&lt;/a&gt;. This is the only one that managed to get artifacts links correct. I used this for an article for The Hindu.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67ce7ef2-ead8-800c-982e-e99c9527099b&#34;&gt;MCP Servers and Clients Research&lt;/a&gt;. Learnings:
&lt;ul&gt;
&lt;li&gt;Practically any &amp;ldquo;tool&amp;rdquo; can be an MCP server: file systems, APIs, codebases, browsers, collaboration platforms, memory, etc.&lt;/li&gt;
&lt;li&gt;Most platforms have (or are) integrating MCP.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/punkpeye/awesome-mcp-clients&#34;&gt;Clients&lt;/a&gt;: code editors, chat, and automation tools support MCP. GenAIScript is a good starting point.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/apify/tester-mcp-client&#34;&gt;Tester MCP Client&lt;/a&gt; is a browser-based test environment.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/adhikasp/mcp-client-cli&#34;&gt;mcp-cli-client&lt;/a&gt; is a CLI-based client&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/3choff/mcp-chatbot&#34;&gt;mcp-chatbot&lt;/a&gt; is a chatbot client&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67cfe129-69c8-800c-9bb8-f7db2955fa88&#34;&gt;Data Moats by Industry&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67cfe021-a2d4-800c-abf8-0ca5d54c8a43&#34;&gt;Attorney Profile Research&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67cfe2bb-0814-800c-8c5b-17442906fdcf&#34;&gt;Social Media Data APIs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67d11e8f-eac4-800c-bf23-960e3f18b4aa&#34;&gt;Adobe Software Alternatives&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67d3ba57-3cc0-800c-830e-a48b5d531e86&#34;&gt;LLM Hallucination Visualization Techniques&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67d3b985-2df0-800c-b9a7-b04fd6e18042&#34;&gt;API vs Self-hosting Cost Analysis&lt;/a&gt;: Always use APIs, avoid self-hosting models.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67d6a803-3e6c-800c-a886-10fe1e4dc3b9&#34;&gt;AGI Preparation&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;AGI will emerge step by step. Knowing which step is next will help&lt;/li&gt;
&lt;li&gt;AI native organisations will emerge in each of these areas. AI design agencies and AI creative Agencies being one example&lt;/li&gt;
&lt;li&gt;Networking, empathy, leadership have more value now. So will human AI bridging roles (e.g. AI managers, AI consultants, ethics auditors)&lt;/li&gt;
&lt;li&gt;What&amp;rsquo;s the value of a human when technology can do everything better? How did this play out in drama (decay) or sports (centralization) or music (globalization)?&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67d6bd5d-af74-800c-a6d7-bc1829f03c26&#34;&gt;Modern digital note taking&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Voice note taking is the game changer&lt;/li&gt;
&lt;li&gt;Automatically popping of notes based on context such as people places or conversations will be a thing&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67d79662-2be4-800c-93e7-376eb68ceecf&#34;&gt;Local LLM Search Tools&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67d7968f-b020-800c-b7e7-2b086546b032&#34;&gt;Blog Post to research paper on copying - suggestions&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67d83394-43bc-800c-8157-8d498290638f&#34;&gt;Linux Dev Migration Guide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67d8eefe-a1f4-800c-93d0-fbed732e14fb&#34;&gt;Raspberry Pi SIM options&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67d83394-43bc-800c-8157-8d498290638f&#34;&gt;Linux Dev migration guide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67d907fe-e0f4-800c-a4ad-f7dcf5176a5d&#34;&gt;HTML to JATS conversion&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67dbcb7e-ea68-800c-9613-310724fc06bf&#34;&gt;LLM context splitting strategies&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67dba1a0-f100-800c-b184-d611a96d8831&#34;&gt;Strategy for AI services in Publishing&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67db9a58-7688-800c-a7c6-10e86ee49132&#34;&gt;Gemini multi model editing use cases by industry&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/share/67dd93d9-7c88-800c-815f-9a21b7b6ad28&#34;&gt;Pharma Conference Participation Guide&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;!-- #TODO
- PDF extractors
- Databases
- Training material on:
  - Data governance and quality
  - Document content extraction
  - Agile digital transformation
  - Responsible AI?
  - D3-based data visualization?
- Emerging trends and competitive intelligence in:
  - EdTech
  - Publishing
  - Analytics
- Challenges faced by (a client) and potential strategies
- Latest news about (a client)
- Industry Whitepapers on: AI-driven data solutions, CI/CD implementations, vector databases, etc.
- Insightful Blog Posts: Generate data-backed articles on emerging trends in content technology and data services, attracting a wider audience to Straive&#39;s platforms.
  --&gt;
&lt;/li&gt;
&lt;li&gt;I learnt what a &lt;a href=&#34;https://www.youtube.com/watch?v=j2iMZaDclJg&#34;&gt;Memoji&lt;/a&gt; is for the first time. An avatar that follows your facial expressions. Cool!&lt;/li&gt;
&lt;li&gt;Google shows US flight timings from &lt;a href=&#34;https://flightview.com&#34;&gt;FlightView&lt;/a&gt;. Emperically, based on one data point (my UA-2168 which was delayed by 4 hours), it gets updates faster than &lt;a href=&#34;https://www.flightradar24.com/&#34;&gt;Flight Radar 24&lt;/a&gt; or &lt;a href=&#34;https://www.flightaware.com/&#34;&gt;FlightAware&lt;/a&gt; or &lt;a href=&#34;https://www.flightstats.com/&#34;&gt;FlightStats&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;When comparing Indian graduates with their western counterparts, the Indian ones are often seen as:
&lt;ul&gt;
&lt;li&gt;🟢 Theoretically sound&lt;/li&gt;
&lt;li&gt;🟢 Analytical &amp;amp; technical&lt;/li&gt;
&lt;li&gt;🟢 Academically disciplined&lt;/li&gt;
&lt;li&gt;🟢 Resilient under pressure&lt;/li&gt;
&lt;li&gt;🟢 Committed continuous learners&lt;/li&gt;
&lt;li&gt;🔴 Rote-learning oriented&lt;/li&gt;
&lt;li&gt;🔴 Limited independent inquiry&lt;/li&gt;
&lt;li&gt;🔴 Limited creative innovation&lt;/li&gt;
&lt;li&gt;🔴 Restricted practical exposure&lt;/li&gt;
&lt;li&gt;🔴 Poor communicators&lt;/li&gt;
&lt;li&gt;🔴 Low leadership / initiative&lt;/li&gt;
&lt;li&gt;🔴 Need structured guidance&lt;/li&gt;
&lt;li&gt;🔴 Struggle to network&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;HuggingFace has a &amp;ldquo;Model tree&amp;rdquo; against each model that shows the model&amp;rsquo;s ancestors and descendants. For example, as of now, &lt;a href=&#34;https://huggingface.co/deepseek-ai/DeepSeek-R1&#34;&gt;Deepseek R1&lt;/a&gt; has 75 adapters, 154 finetunes, and 23 quantizations.&lt;/li&gt;
&lt;li&gt;Perplexity is now powered by Cerebras, which makes their inference as fast as Google. &lt;a href=&#34;https://cerebras.ai/press-release/cerebras-powers-perplexity-sonar-with-industrys-fastest-ai-inference&#34;&gt;Source&lt;/a&gt;. The speed is a big factor, and I&amp;rsquo;ve switched my default search engine from Google to Perplexity, at least for now.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.interviewcoder.co/&#34;&gt;Interview Coder&lt;/a&gt; is a desktop app that offers live interview support for coding interviews. It&amp;rsquo;s a transparent window that reads your screen and answers questions for you. (Given this, I think we need an &lt;em&gt;interviewer&lt;/em&gt; support system that tells interviewers what to ask!)&lt;/li&gt;
&lt;/ul&gt;
</description>
    </item>
  </channel>
</rss>
