# Transcript

**Anand**: The bulk of today's session will be about coding, but just as much about how **we don't even need to code**. Let me share my screen. I’ll do that both on Teams as well as on the room display. So yeah, that's visible. On the room display, let me share my screen. It’s kind of okay, yeah, with my brain.

**Saurabh**: Why don't you talk to the [inaudible] desktop?

**Anand**: Where's it even calling me? Oh. Okay.

**Saurabh**: Let’s go.

**Anand**: This one doesn't work? No. Hold on. This seems right? Yes. Okay, we're working with this form. Okay, so let's do this. We'll quickly dive in a bit on the vibe coding side. Talk about some of the things that we're finding code useful for. For me, **building my own interface for something is helpful**. Excel is a great interface; sometimes it is not. And if that is the case, I want to be able to play around with stuff with sliders, with brushes, etc., my own way. And that's pretty useful. The instructions that we need to give the system are simply: build this kind of an interface. For example...

**Debi**: So like a dashboard for yourself.

**Anand**: Dashboards for ourselves.

**Saurabh**: Just give me one minute. Folks, sorry, we’re just pausing for a bit. Can you let the room in? Okay, so now you have two [inaudible]. So like Inception, right? Yeah, go back to it. Oh, this is cool, man! Okay.

**Anand**: Great. So everyone is able to hear, right?

**Saurabh**: Can everybody hear us?

**Participant**: Yeah, yeah, we can hear you.

**Anand**: Okay, my desktop was actually a thousand desktops out here, one inside each other. Okay, continuing from where we were. One of the things I use my own interfaces for is to pick what movie to watch. The IMDb is a great source from that perspective, but **this is how I look at the IMDb data**. Each of these boxes represents one popularity-quality movie. So, for instance, out here is _The Hunger Games_. The X-axis is how popular the movie is—movies on the right are more popular, so _Inception_ is way on the right. Y-axis is the rating—movies on top, like _Band of Brothers_, have a higher rating than, let's say, _Twilight_, which is almost at a five.

**Anand**: But I'm not sure if you're able to see clearly. There is one movie around where I'm pointing... I could actually sit here also. I could, but that's okay, I can see my screen. The contrast on the screen behind me is not clear enough, but maybe those on the Teams...

**Saurabh**: No, it’s fine. We can see it clearly in terms of contrast.

**Anand**: Oh, great. So there is one movie that is around where my mouse is, which is a bit of an outlier—"bit" is an understatement. A movie that is **ridiculously popular but rated really poorly**. Any guesses on what this might be?

**Participant**: Shawshank Redemption?

**Anand**: No, _Shawshank Redemption_ would actually be rated quite high, quite popular. Any guesses on the chat? I was asking the IITM students what this was.

**Saurabh**: _Despicable Me_? Already? It’s from this decade.

**Anand**: This decade? _Animal_?

**Saurabh**: Low rating and high popularity.

**Anand**: Low rating, high popularity. Some comedy spoof or something like that?

**Anand**: Let's take a look. _Sura_ [Sura?]? 2025. Yes. _2025_ movie, one year back. 2.2 rating and about as disastrous as it gets, but ridiculously popular. I love these outliers. Another one that's out there is _Radhe_, 2021, the Salman Khan one. _Radhe_ is the outlier. A few others—we saw _Twilight_, which was... no wonder there was so much controversy over them using a Latina and blah, blah. That brought the ratings down as well. You may want to come here because your back is visible—that is the one that is visible. Ah, okay, please move. That looks nice. Good.

**Anand**: Now, this helps me in a variety of ways. So, for instance, outliers are something, and therefore I just take a closer look at which are the outliers I want to pay attention to. _Sadak 2_, for instance, is also pretty badly rated but becoming popular. But you also see the other end. For instance, _Steel Ball Run_ or _Sapne_ versus everyone or _Cosmos_, _Planet Earth II_. **A good way to discover things that are very highly rated but we probably haven't heard of**. And also see how this moves across time. So, for instance, if I want to look at...

**Saurabh**: I can’t see the outliers on the screen out here.

**Debi**: But you can see if you're on your computer screen. You can see it.

**Anand**: Yeah, that's probably better. For high contrast, you can see the little boxes right here. The genres—let's take animation. So if I want to see the history of animation, in the 1930s there was pretty much only _Snow White and the Seven Dwarfs_. But then in the 1940s, there were two distinct clusters: the four Disney movies that were produced that decade, and the four non-Disney movies that were produced that decade. Animation is picking up, but there's one clear leader. 1950s, the same pattern is there. But next, 1960s, is when Studio Ghibli starts trying to catch up, with Disney still way ahead.

**Anand**: It takes until the 1970s for that distinction to vanish. And then in the 1980s is when we have a biggish explosion: _Simpsons_, _My Neighbor Totoro_, _Grave of the Fireflies_, _Little Mermaid_. And it's interesting that on this list, the top three are not Disney. 1980s was when Disney was pretty much wiped out, in the doldrums, whatever. There is a resurgence. Now we have _Lion King_, their last big original production, and _Toy Story_, which was Pixar's first. And then the story starts changing completely. And it goes on, but the thing is, you start seeing the evolution over time—something that you might not have thought of as well.

**Anand**: Personally, I find **this sort of a decisioning interface as one of the most powerful reasons for using code**. And let me explain why I'm saying that as opposed to "let's use code to write software." Why do we need to write software? We tell it something, it gets a job done. If it needs to write code to do it, it will write code. Often we need the code, or we need to explicitly get it to do things that may involve code, because we want to play around with the code in a certain way, and a chat interface doesn't do the job for us. Data visualization decisioning is a classic example.

**Anand**: So let's do this. We will... let's fill out a small form. I probably have the link. Zoom in a bit. Please take whatever screenshot or you can click on the link—it's forms.sanand.net. What we're going to do is run the rest of this session to build a decision interface from your responses. And effectively we are feeding the data for the system to get built. There are probably just under 20 of us, so that should be a good enough data set to begin with.

**Anand**: So, recap: you can scan this code. There are a few questions that are out there, reasonably simple, that you can start filling in. Like, where are you joining from, in the room versus...

**Participant**: Sorry, can I just see the URL?

**Anand**: Yeah, forms.sanand.net. Just the first part will take you there, sorry. So I'll also post it on the Teams chat separately so that's open.

**Saurabh**: Yes, can you do that? That would be convenient.

**Anand**: I’m pasting the link on Teams, so you're welcome to join in directly. So I'm joining in from the room, submitting that.

**Saurabh**: What should the URL be again, sorry?

**Anand**: It’s on Teams. You can click on it, but here it is. And the last bit you've got to fill out... Do fill in what coding agents you typically use. In my case, I use Codex, Claude Code mostly, those are the most. There were a few exercises that we had shared a bit earlier. If you were able to finish any of those, do put in a check. Yes, no, anything is fine.

**Anand**: But now the next set of questions is what we're going to build a decisioning intelligence around. So what we'll do is build a little networking app between ourselves. And **the aim is for this app to help us to reach out to the right person for the right reason**. So if you wanted to do that, let's fill in a bit about ourselves. What's something people who know us well tend to ask you for help with? For me, it's AI advice most of the time. And I'll submit that. What's one thing that you would genuinely value help, perspective, or an introduction on right now? In my case, that's AI in education. And I'll submit that. And if there's one question you could ask people in a group, what would you ask? Something where the distribution of answers would really help change your opinion. So for me, it would be how often do you use AI to code? That would be something I'm curious about.

**Anand**: We will be building this as a live app in this session. If you want your name to be displayed, please put in a "Yes." If not, put in a "No." We'll still do the matching, but it won't necessarily display the name, depending on whether you say "Yes" or "No." And that will form the basis. Where I'm going with this is: we have a survey. We're going to build an app, and we have a survey. How can we visualize survey results? How can we build an app on top of data? That's the kind of thing, that's one of the things that we're going to play around with. So we have about... let's see, 13 people who've answered question two, so that's the maximum. I’ll wait till we get to about 10 answers to all the questions. That should be enough data.

**Anand**: Interesting that some are using Hugging Face and Perplexity for coding. Let's see. And nine people were able to automate one annoying task. That is a majority. That is interesting. And "Make it fail" seems to have been either tougher or less attempted.

**Anand**: Is that because we don't try too hard, or it's too capable? Both are possible.

**Debi**: I think it's also a question of how people interpreted "make it fail," right? So that’s the reason. Because in my case, I think I could make it fail because I wasn't getting my required solution. So it was just failing, and then I said, "Okay, what is happening?" So I went back to it again. So maybe others didn't—interpreted it differently.

**Anand**: No, I think it's an important point, which is **what constitutes failure?** That’s the question. And any which way we interpret it, if there is something that it's not able to do, or we are not able to get it to do, it is noteworthy. Because these are improving so rapidly—of course, we're also learning so rapidly—that just knowing that "here's something that it cannot do as of date" which on a future day if we're able to do, literally represents the boundaries of it.

**Anand**: My... I have one "**AI bottlenecks list**" which I try and maintain every day for "here's what I tried to do today and it failed." Increasingly, the list comprises of things like: I have too much work to do because of AI. I’m supposed to sit and read this response and action it; that is a lot of work for me. But it is still a bottleneck. And sometimes it helps me clear it. In fact, today we'll be vibe coding one of those potentially, which is... I'll show you. But now the failure part, I think therefore is particularly useful, just being aware of the failures.

**Anand**: Now let's see. What's something people who... okay, we'll come to this part once we run the script. So, quick check, we have... okay, 16 results and 12, 13... yeah, all of them have more than 10 answers, which is great. So let's start doing the vibe coding thing. Now, there are many ways in which you can do this. The easiest would be to upload any data set into ChatGPT or into Codex or Claude Code or whatever. Now, I'm going to build this application and I'll start the process off, but I'm going to add one more question that I'd love for you to fill in: what kind of decision intelligence might you want to build? This will appear in the survey at the end. You don't even need to refresh it, you can just scroll down. But just think about this while we're in the process of building and fill it in when you can.

**Anand**: What's one decision that you make using too many tabs, sheets, notes, people, stuff all over the place? Something where you take a decision, but you would really like to automate. If possible, you may be able to build along today; if not, it's something to explore for later. And an example could be: I want to figure out which fund to add, and therefore I have to look at the mandate, the holdings, performance, fees, manager, sub-manager changes, etc. Anything where the information is scattered across a bunch of places, but ultimately you are having to make a decision out of it.

**Anand**: Now, while you're filling that, let's start with how one goes about using a coding agent. I'll show the simplest possibilities. The simplest would be: go to either ChatGPT or Claude and literally just tell it to solve the problem by writing the code. So if, for instance, I said: write a Python program to print the 50th Fibonacci number. This won't work because... oh, it does work, okay.

**Saurabh**: Do you need to go to Codex for that? You just do normal ChatGPT.

**Anand**: This is normal ChatGPT. And I'm going to copy the same thing and put it into Claude. And if I run it—and I will in a few minutes—it will work fine. I'll also say: "write and run," both. I want it to both write and run a Python program to print the 50th Fibonacci number. Now I'm going to put this in the chat—not that you need to try it, it's a trivial example—but the reason I'm putting it there is to show that **it has the ability to write and run programs**. I'm revising the models to use the simplest possible models, again to show that this doesn't take much by way of intelligence.

**Anand**: So it's written a Python program that we know these agents can do. It has also run the Python program, and that is an important thing. What that means is ChatGPT and Claude and possibly Perplexity and possibly Gemini (not 100% sure) have a little computer sitting inside. The computer is allowed to—and I mean actually a container, a virtual computer, whatever—but good enough. It has the ability to write and run code and do a whole bunch of other things like download packages and so on. So in a sense, there is no reason why we need to use a coding agent at all. And this is important to keep in mind—meaning, just get the job done. You don't necessarily need to think of it as code versus not code. That used to be a distinction pre-AI; it no longer is a relevant distinction.

**Anand**: But which then begs the question: why is there a separate Claude Code, why is there a Co-work, etc.? We are right now in the process of a certain kind of evolution. What people found was: these things can write code, but running code is not as safe as writing code. And they said: we will copy the code, paste it in our computers in a safe place and run it. That was how it was until mid last year. And then they said: let's take these computers and put them online inside ChatGPT and have it run. But at the same time, **we also want ChatGPT and Claude running on people's machines, sort of locally, so that it can write and run code on people's machines**. That was Codex and Claude Code.

**Anand**: This is powerful because a computer on the cloud does not have the data on your machine, does not have the compute on your machine, software on your machine. So you may say, "Look, I don't have much software on my machine or I don't care about it, it’s not like I'm a great compute." Fair enough, they may be lesser in terms of importance. But **the data on your machine is certainly important**. Even more important is the access your machine has. Your machine probably has access to your company's email and OneDrive or Google Drive or SharePoint or HubSpot or Salesforce or whatever ERP systems, etc.

**Anand**: So it's partly about access to data, partly about access to tools, but mostly about permissions. **Codex and Claude Code are effectively ways of getting the intelligence of these models into your permission systems**. When you run something on ChatGPT or Claude, the permissions it has are the permissions that it has. When you run Codex or Claude Code, the permissions you have are the permissions you can give it.

**Anand**: For example, let's take a similar program which I could not possibly run on the cloud—equally trivial task—and I will run it on my machine, which is asking the question: how much disk space do I have free? From there you can start thinking about: "Okay, now I can look at what files are useless, do I have any duplicate files, which of these photos can I compress?" And the kinds of things that it will not be able to answer. And then slowly moving on to: "Can you access my company's Google Drive? Is there something that I haven't caught up on last week? Is there something in SharePoint that is conflicting with what was there in Salesforce?" and so on. Those are the kinds of things that you would use Codex and Claude Code for.

**Anand**: This got muddier in the last few weeks. Because they introduced something called "Work." So if you add a new chat, there is something called "Work." On the desktop version also there is when you say "new chat"—whether it's Codex or Claude Code—there is a "Work" in there. For all practical purposes, there is no difference between Claude Work and Claude Code. They are the same thing. For all practical purposes, there is no difference between Codex and ChatGPT Work. So when somebody says "Work," think of it as "Code," but with a lighter name so that people are not put off by it. It is really more marketing than anything else, making things easier for us also—nothing wrong.

**Anand**: The real difference, however, is: are you running it on the web, on the browser, or are you running it on your local machine? Running it on your local machine, it has roughly your permissions. If you're running it on the cloud, it has its permissions.

**Saurabh**: So "Work" is running on your machine and the other way around, or what?

**Anand**: "Work" is the same as "Code." You can run it anywhere. If you run it on your machine—which is by running the ChatGPT app locally or the Claude app locally—then it has your permissions.

**Saurabh**: In what situation is it running on the cloud, basically?

**Anand**: If you go to the cloud and on the cloud, you have... you still have these same two icons. If you select "Work," then it will run on the cloud.

**Saurabh**: But where is the... but how do you understand if it’s on your... like if you're on here, what is the option to go on the cloud versus locally? Is it automatically on the machine?

**Anand**: This is on the browser. On the left side, I have the browser. On the right side, I have the native application. Unfortunately, it's hard to tell those two apart.

**Debi**: Yes, so it's basically the... using it on the browser versus your downloaded app.

**Anand**: Exactly. That's the difference then. Browser doesn’t have the connection to your local data. Ah, okay.

**Anand**: In a sense, therefore, this session is more on how do you run these things on your desktop locally. That is really the distinction. That too has been muddied a little bit, because there is something called remote control where you run it on the desktop locally, then you can go to the browser and control your laptop through Codex or Claude Code. Which is obviously very powerful, but the distinction between does it have... what permissions does this thing have is something we'll have... I haven't really gotten a good mental model around it. But so far, in all of the sessions, we haven't really worked on our system, on our laptops or desktops much. That's what we're going to do.

**Debi**: What Claude calls "Projects," which is like you're basically working off information on your desk.

**Anand**: **Projects can reside on the browser or locally; they are groups of chats**. That is probably a better distinction. And projects can access stuff locally if you're running it locally. Right, so what we're going to do now, as I said, is take this data and build a little application. And I'm going to do that with Codex... or actually no, sorry, before that I promised that I would show you how we could find out the size of my disk. So on the desktop version—so right now I'm on ChatGPT desktop—I could just here try and ask: "How large is my disk?" I don't know if this will work or not. Even though it's on my desktop, this is chat, and have they allowed chat to use my machine even when it is on my machine? Let's find out.

**Anand**: It says "I can't inspect your computer's disk from this chat." Great. Let's copy the same question but in a new chat under "Work." Remember I said "Work" is practically the same as code—and Codex in this case, actually. And I'm going to paste the same... okay, what happened there? Okay, paste that. Now, in terms of model, I'm going to keep it at the simplest, lightest model and give it full access and run. This has a decent chance of working because part of full access is on and partly because I'm running it on my computer with a code interface, which is the same as work. And it says I have 937 GB in total.

**Anand**: Let's put this on a little spreadsheet. What we are saying, if I can figure out how to create a new spreadsheet... Right. So zoom in, hopefully. So there is the tool which is ChatGPT versus Claude. And let's call this subtool. There's Chat, there's Work, and there is Codex. Okay.

**Anand**: So here, there's Chat, there's Work, and there's Claude Code.

**Saurabh**: But "Work" and "Codex" are the same, you said?

**Anand**: Exactly. These two are exactly the same. These two are exactly the same. This Chat is operating at the cloud level, depending on where we... yeah, Chat is always operating at the cloud level. Correct. Now, both of these can still also operate on the cloud, but on a cloud computer. **The stuff in green operates without... that's also not true... yeah, if you're running on the cloud, they have computers, but they have different computers.** Chat has a different computer from Work and Codex, which are different. They might be able to access each other, but they are different computers, I think, as of now. But also, Chat has much less memory than Work. So Work keeps the context and the association with various documents on your laptop or elsewhere, right?

**Anand**: Correct. Chat—they have restricted it so that you can't continue for too long as well.

**Participant**: I think Anand has raised a hand. He wants to ask...

**Participant (Anand)**: Yeah, no, I was just trying to understand, you know, when you're doing a very simple task, right? You're trying to check out how much memory you have, so you gave it access to the computer. Now, because of the nature of the task, it's going to check every folder and file. **What is the risk that you're now running of some unintended thing coming in? It could write a code, put it somewhere there, because a simple process like checking the space means it's going to check every folder and file—I mean, just to check, right?**

**Anand**: True. There are three kinds of risks. And one of them is we tell it to do something, it does exactly what we tell it to do, but it was a bad thing to ask. "Format my drive." Terrible thing to do. I mean, it may decline it, that's another story, but if it did it, it was a bad instruction. **Increasingly, the models and the harnesses—like Claude Code, for instance, has an auto mode—it will probably tell you, "This is not a good idea, you probably didn't mean this."** If you really want to, you probably have to tell it four or five times, and even after that, it may decline.

**Anand**: The second kind of risk is it does what you told it to do but not the way it should be done. Like you're saying, "Tell me how large my disk is," and it goes and sits and counts the size of each one of those. The good part is, again, the models are improving in this regard. Specifically, what they do is they monitor themselves; if a process is taking too long or seems to be having unintended side effects, they stop it and say, "This is not going in the direction I want to go in."

**Anand**: The third thing is you didn't tell it to do something wrong; some malicious script somewhere or its own mistake caused it to do something wrong. Again, the models have become good enough these days that they catch this. Before running any tool, they check. The most striking instance of this was an interview from the Claude Code team with Simon Willison last month, where they said internally within Anthropic, we are running Claude Code on auto mode.

**Participant**: Background chatter: "Okay, just a second, let me mute everyone apart from... but then Anand will get muted." "Anand, you can unmute yourself once we mute everybody." "Yeah, you can do that, right?" "Yeah, yeah."

**Anand**: Correct. That is what I was coming to. Yes, correct. Okay, so the Anthropic team has been working using the auto mode in Claude Code. The auto mode is basically when you select the permission here, there are different kinds of permissions. This auto mode is now the default, and it says Claude handles permission decisions.

**Anand**: **What they're saying is a team as sensitive as Anthropic is comfortable just running code without any sandboxes and any kind of checks using auto mode, because every instruction, every tool call that is being made is being checked by a model as smart as Sonnet 3.5 to see if it is okay in this context or not.** They're saying we have not found an issue, so much so that we have internally adopted it and for the public, we are comfortable releasing it. Codex did something very similar last month—not this month.

**Anand**: So, in short, **we are now at an inflection point where AI's ability to figure out if it's doing something right or wrong has been far superseded.** The earlier approach used to be manual or asking us to say, "Do you want to do this, yes or no?" People would invariably say yes, yes, yes, or run it with full access. Now, they're recommending that you run it with auto mode. My Codex also... I should just switch to... okay, it has not yet enabled it for this version, but I would switch it to the equivalent of the auto mode when it appears in Codex. Is there a risk today, therefore? The answer is negligible.

**Participant (Sandeep)**: Claude basically told me, "I have no way of checking your actual laptop disk." It gave me the size of the session sandbox.

**Anand**: Exactly. So please give this a shot. Download Claude Desktop or ChatGPT Desktop and run this safely.

**Participant (Sandeep)**: This is Claude Desktop. It still gave me the same answer, both on Chat and Work.

**Anand**: On Work as well? Oh, okay. Let's let me try that as well.

**Participant (Sandeep)**: It gives me an answer which says, "This is its session sandbox, not your laptop."

**Anand**: Which is possible. Right. And why is that the case?

**Participant (Sandeep)**: It's saying, "I don't have a way to check that directly yet. You would need to connect a folder from your laptop, and even then I can only see what's inside the folder, not overall system disk usage." Something to discover, let's try that as well.

**Participant**: I got your "Main" variable, this in the cloud setting was 252 GB, with 30 GB of current available space.

**Anand**: Yes, but there's an important caveat. Your session has 6 GB per session disk space. That's separate from the overall size.

**Participant**: We all got the same message. That was common for everyone... no, but you have more than me. I have like 10, you have 30.

**Anand**: Let me sign in as well and give this a shot.

**Participant**: Is this on Claude Code or where do you guys... both? No, no, Claude Work and Claude Chat, not Code.

**Anand**: Okay, I'm just signing into Claude and asking the same question. I'll take the same query. Yeah, I'll take the same query. Okay, and it gave me both set there also. You can probably hear from there? Okay, let me see. Yes, same response as what Sandeep mentioned. This shows the Claude workspace that I'm working in, and it doesn't have access to the local hard drive. Correct, correct.

**Anand**: So this let's also note, which is what access does it have? What container? Claude Chat has a web container, or let's call it web or cloud, and Claude Work also has that web or cloud as the container. Container is basically what I'm meaning here as computer. And does Claude Code manage to do it? On Claude Code, let's run the same question: "How large is my hard disk?" And I will run this on high-Q... okay, that's fine. And I'll run this.

**Anand**: It needs a folder while I'm running it. I will run this in my code or downloads folder and select... let's see if it's able to do it. Okay, this is now asking me for permission. Fine, I will always allow. And it gives me the correct answer. So **that has access to my local computer.** For ChatGPT, I'm fairly sure that Chat and Codex—the other ends—are the same.

**Participant**: I found out something, right? My hard disk would be made by SK Hynix. Ah, you can get more information about this.

**Anand**: Oh, this, incidentally, is one of the most common uses of code, which is: **"I have a problem with my computer, help me fix it."** I had a problem with the NVIDIA driver—fix it. My computer is running slowly—fix it.

**Participant**: "My computer is running slowly, fix it" might go and delete a whole lot of stuff which you don't want deleted.

**Anand**: Tell it "fix it safely," or you can say, "Please display all the steps you are going to follow," or whatever... "Ask me first before you take action." So I think you can do—you can give that instruction as well.

**Participant**: Increasingly, I'm feeling like someone of my father's generation who would ask me, "Look, do this," and before I do something, "Are you sure? Don't touch the bonnet!" I know, I know, I kind of know this stuff. I do this for a living. And these are far more patient than I am. Clearly.

**Participant**: I'll tell you something really blew me away, right? I take a lot of photos and I have this iPhone since 2009 or something. So I tried to connect it with the camera and I couldn't. Apparently, **there is a Bluetooth stack of devices from 2009 which has overflowed. So I had to remove it, and I don't think I could have figured that out through Google or anything like that. I was just blown away by this.** Wow.

**Anand**: Okay, so let's take that as a premise and start applying it. Now, I have a bunch of photos. I don't know how large they are. I also have a bunch of videos, not sure how large they are. I have been accumulating these for many years, and I'm sure the older file formats would have been big; now we can get better compression. I would like to preserve the quality and the metadata that is there from the original photos but try and get this down. I would like an estimate of this.

**Anand**: Let me pose this same task and I'm going to do this to... let me see which application I'm running on these days... I'm going to pose this as a question to Work on ChatGPT. Why? Because it seems to have access to this data. And let me choose a reasonably light model to run this on.

**Anand**: "I'd like you to go through my photos folder and tell me how large it is. It contains a bunch of photos and videos. I'm interested in reducing the file size without reducing the visual quality and also preserving the metadata. Research what are the best image formats that I should consider for this and test on a few folders to see how much compression I can get. Extrapolate this to the rest of the folders and give me a sense of, maybe on a folder-to-folder basis, how much I can expect in terms of compression and show this to me in a visual form." Let's have this run.

**Anand**: Here's the thing. This is one of those examples where we don't really care if it's running code—obviously it's going to be running code. **What we do care about is that it has access to our data or systems or whatever.** And this is the kind of thing that I would put under one of the other kinds of use cases that we usually have, which is **organizing data**.

**Anand**: Some of the stuff that I've done in terms of organizing is travel. So on the right side, I managed to create a spreadsheet of where I've been, when I've been, by going through emails, by going through my flight tickets, by going through my scanned passport images, etc., which helps a lot.

**Debi**: How many days are you in Singapore versus India? Exactly, and you need that all the time.

**Anand**: What's worse is that—you probably know this better than I do—there's apparently a Karnataka High Court judgment that says that the day you enter India does not count, the day you leave India counts. So depending on this, I'm either in India for 117 days or 123 days, and that obviously changes the tax treatment and all of that. How is this done? Just go to one of these and say, "Find all of my tickets, organize them," and also rename the files in a nice way. So for this set of travels, it organizes the tickets by date so that I have them on Dropbox. That's one kind of a use case. Again, the point is not that it's writing code; the point is that it has access to local systems.

**Participant**: Another example of organization is my music. Where does this code stay?

**Anand**: **This code is ephemeral.** The code is not saved anywhere. It writes the code, it runs the code, and gone. It doesn't even save it.

**Participant**: So every time then you have to... so then this you're doing periodically or it's automatically done or how are you doing this?

**Anand**: Very good point. This I just tell it every now and then to do it. So it writes the code—it writes the code fresh every time. But it's a fair point: **why are we wasting tokens to write the code again and again?** I run this once every two months, and for me once every two months, I don't mind wasting it. If I were to run it every two weeks or two days, I would worry about it in exactly the same way. It's slow, can't I automate this? Which is what's happening to my music list.

**Anand**: So my... where was it... and my music list. This is my current collection of about 1,400 MP3 files. The metadata is reasonably well organized thanks entirely to this. The process was: look, for each of these songs, I want you to figure out which year, which album, what was the title of the song...

**Participant**: Where is this data? Is this from your library?

**Anand**: This is... initially, I just had the file names. This is pretty much all I had. And all of this is in one MP3 folder.

**Participant**: This is all your... okay, this is in your folder. This is not like a Spotify or your playlist, that's not the case.

**Anand**: Correct. So in my folder, I have collected songs over the last 30 years and that is this collection. There isn't that much metadata; the only thing I know for sure is I name the files as movie full-stop song-name. That's it.

**Participant**: Did you do it or did you get it renamed?

**Anand**: Over the years, I've both... 90-95% I've renamed them for myself. That was my only identification. What I did not have, for instance, is which language they were, which year, what's the official title, who's the composer, etc. Whole bunch of things that I couldn't figure out. What I had it do was: for each of these songs, search on a bunch of sources—Wikipedia, for instance, has all of the songs; MusicBrainz has a catalog of the songs. There's also MusicBrainz album IDs and song IDs separate. It tries to do a match for all of these, gets it for as many of these as it can, and for the rest it managed to do a search online and filled this up.

**Anand**: Now, if I get a new song, all I have to do is run one particular Python script here, which don't let's not even bother going into. Now, the running of the script—because I'm comfortable writing and running scripts directly—I've set it up so that I run it manually. But the way you might do it is: you tell it, **"Save the script because I'm going to ask you again tomorrow to do the same thing."** Next day you come and say, "I've added a whole bunch of songs here, you run the script, make sure you know where you've saved it, or I'll tell you where you've saved it, and run."

**Anand**: Two possible ways of doing it. But the point is, **the code is not for us to run; the code is for the agents to run.** And that is increasingly becoming a trend on the organization side of things. Decision intelligence goes almost to see, and possibly run, the code for it to run. Let's go back and see...

**Sonal**: Sorry, Anand, I have a question. Sonal here. So it was an interesting example you gave of the photos. In fact, that was what, you know, the pre-work that you asked us to do, that's what I tried to get a code to organize my photos in my photo folder on my computer. So it gave like a big output in terms of a CSV file, it didn't really move stuff around. But my question was: if I just asked it to not just find the code but also just run it, **what is the risk in terms of let's say if it does it wrongly? Are we able to undo what the code—let me call it an agent—does?**

**Anand**: There are two parts to this: the technical answer and the practical answer. **The practical answer is: it doesn't matter what the technology says or what I say; what matters is, has it gained enough of your trust that you would allow it to do something?** Until it does, make backups. Copy that folder somewhere else and tell it to work on that copy or on the original. Worst case, you can undo it; you retain the control. Try it five times, ten times. Copying takes very little effort. And after every single one of those attempts, if you see not even a sniff of anything going wrong, then the next time you may tell it, "You make a copy, make sure I can undo."

**Anand**: And then after a month, a year, however long it takes for you to get comfortable, don't bother telling it to make a copy; it will fade away. The technical answer is: as of this month, it won't make a mistake. It may not be able to undo it unless you ask it to, but there's a 90% chance that it would do it in a way that it can undo itself as well. It's smart enough. Okay, thank you.

**Anand**: Do you want to come to this side so that your face is visible? Sure, I'm just going to shift to the other end of the table.

**Sonal**: Anand, I had one more question. I started using the Gmail plugin to sort of organize my emails. **Is that something that can run itself on a regular basis? Can agents be put on a scheduler, like prompts can be put on a scheduler?**

**Anand**: Absolutely. And the schedules which are available both in ChatGPT as well as in Claude—in Claude they're called routines—will allow you to do that. The only thing is your system needs to be active, the application needs to be running. Okay, all right, thank you.

**Anand**: Oh, what it's told me is... yeah...

**Participant**: Just a question on that, maybe you can address it later. Given what you've been explaining in terms of how the models themselves are kind of doing these checks and harnesses, **do you think it's better to be with open models rather than these closed models because in open at least people are checking and continuously changing?** Here, you still run the risk that OpenAI or Claude, they have to ensure that they have enough checks and balances.

**Anand**: It's a fair point. For the kinds of uses we have and the kind of ability we have, we don't have a way of figuring out whether the open models are doing anything weird or not anyway. They're all black boxes. Not only are they black boxes to us, they are black boxes to most of the experts as well. Anthropic kind of has something like "brain probes" that try and do some neurosurgery, neuro-analysis, whatever, of how these models are thinking; they're trying to figure it out. It's a very early field.

**Anand**: So unlike open source, where we can inspect it in a somewhat deterministic—or you can ask somebody to inspect it in a deterministic way—that provides some kind of evidence, in open weights models, that comfort does not exist. **The comfort, if at all, is the other way, which is: can I hold somebody liable?** And on the open weights models, the company may say, "Look, we did our best, if it messed up, it messed up, you're not paying me so what are you holding me against?" Whereas with an enterprise license, you may be able to go back to an Anthropic and sue them or an OpenAI and sue them. I don't know how much of a protection it is either way, but the cleanest thing is to protect the blast radius.

**Participant**: Yeah. No, because you know, on that point, I'm going through enterprise selling AI services, and they have their own security questionnaire as well, things like that. So where does the liability lie? Does it lie with the vendor, the model? So nobody's doing... it's too early.

**Anand**: Exactly, right? I feel the questions I'm answering they're not even the right questions they should be asking. Correct. It's too early.

**Saurabh**: How would they reframe the question, Sandeep?

**Participant (Sandeep)**: We'll talk later offline. Sounds good. It's those 78 questions once, then I answered those then I got another 65, so we can go over those.

**Anand**: So my answer is that it's too early to figure this out. It's too complicated because from a corporate data perspective, when does the data leave and when does it get exposed? It's complicated. Even if you host it on your tenant... okay.

**Anand**: So on this organization question, it said it would probably save me about 4 to 5 GB on my images. It didn't talk about the videos, but it's good to know—and I didn't know this—that the videos were actually occupying the bulk of my space. **Video compression, actually, is now shockingly advanced. AV1 is a phenomenal, phenomenally powerful format.** So let me do this; let me ask: "I see that AV1 is a really powerful compression and I'm okay with some amount of lossy compression. I do know that AVIF is a really powerful compressor. I'm not too worried about compute; it's okay if it takes a long time. But could you run this for a small sample and tell me how close we can get to really good compression and how much I will save as a result of that?"

**Anand**: I'm doing this simply because I'm not happy with the savings. Now, the next step beyond this is to tell it to create... it's only about 70-odd GB. Run overnight. Now, when the program is running overnight, the tokens are not getting consumed other than maybe to monitor it a little bit. I'm already running it on the lowest level of intelligence in the slider; I'm not going to exhaust this anywhere near it. **These are not complicated tasks. They have to write simple programs, they have to delegate the compression to a powerful compressor. That's about it.**

**Participant**: Usage of tokens is lower because they're simple tasks.

**Anand**: Usage... not because of the way it's working. The two things that determine it are time and model. Time we can choose... huh, model we can choose. Time also you can kind of choose based on the effort. So roughly less tokens, more tokens... left versus right. But do you run out of token limits very soon?

**Participant**: Quite a bit. $130 gone. I guess many of us are already close to it because we use it as much.

**Participant**: Yeah, but there is like, you know, if you're doing presentation work or something, you can run out of tokens in per-6 hours.

**Participant**: So I use minus 40,000 and then moved to the 40,000... okay, I run out of that window.

**Anand**: Got you. Interesting. $40,000 for what? 40,000... yeah, for $390 or $190 or whatever. Which may be then the next thing we should pick up, because document updates, there may be a cleverer way of doing it.

**Anand**: So we've covered two things so far: one, decision intelligence, and organization. Let's take...

**Debi**: I just have one question on organization. I think Sonal was talking about the Gmail plugin. Can you just spend one minute? I've never tried it.

**Participant**: It's fantastic, Debi. It's fantastic, please use it.

**Anand**: You just click on it and it connects to your Gmail. Okay. And then you can say things like, "Based on the conversations that I've had with this person, can you suggest some interesting things that I should share with that person?"

**Participant**: So is this different from... because I said, you know, ask it to look at my Gmail account and asked it to sort of check some things, etc., just on normal ChatGPT and it did it. But with the plugin approach, is it a different approach or what?

**Anand**: **If you're able to access your email in any way, don't worry about plugin versus non-plugin. It simply means that at some time you would have enabled it.** It used to be called connectors, now it's renamed to plugins or whatever.

**Saurabh**: Is this purely for ChatGPT? Claude also supports it?

**Anand**: Yes, there are connectors to it. Exactly. It was "Connect as Many Things."

**Participant**: And I've connected Teams, so I can do this summary. Often see the code get out of the chat. So I use the Claude connector to pull it out.

**Sonal**: The one thing, the one thing it could not do for me—I was trying to use it to clean up my... I have like hundreds of thousands of unread emails—it could not actually delete emails. So it was able to sort of work with me to move emails to trash, but the actual physical deletion of emails had to be done by me. So that's—that's still, I think, what it's not capable of doing.

**Anand**: That's probably good, actually. Exactly, it's out of your question. No, but you know, once you move to trash, your job is done.

**Sonal**: Yeah, I think organization is the key, which is what Sonal mentioned, which is what... yeah, which is what it helped me to do. Yeah, so I'm down to like 60,000 unread emails from 130, 140, so...

**Anand**: Because I think that's the biggest challenge. Yeah, correct. Got it. Okay, so now it's managed to get me 15.6 GB of savings on the organization side. And oh yeah, this is interesting. So it's showing me a comparison of different AVIF levels of compression... I can't tell the difference between any of these, frankly. Yeah, and that's usually the case. These are way too conservative and I'm quite happy to be more aggressive. But let's move on to document editing then. **One of the things that I find still hard is their ability to create presentations inline with a specific style in tools like PowerPoint**, and for quite some time I've taken a bypass route.

**Anand**: This is my CV as of two years ago. I had maintained this sort of a format; it was created in PowerPoint and I had not updated it much post-Gramener getting acquired by Straive. So somebody asked me last weekend at IITM, saying they want to have me as a professor of practice, so can I update my CV to include my Straive experience, blah blah blah? I know that if I edit this PPT, it will mess up the layouts and consume a lot of tokens in the process.

**Anand**: So, my process was the following—now I'll mention a few things that I'm doing here which are sneaky—but I began with: "I'd like to update my CV, which is on local MCP." **Think of local MCP as where I'm giving ChatGPT a connector or a plugin to my computer.** This is sort of what has become "Remote Control" in these tools where even on the online version you can actually connect.

**Anand**: The reason I do this is, for all practical purposes, ChatGPT's tokens are free—Claude's are not—but ChatGPT's sessions you can run for almost forever without consuming any tokens. So not only do I not hit session limits, I'm barely even consuming 20-30% of it as it is. The second thing is I said, "Here is the PDF and the PPT. Here are a bunch of changes that I want to make," etc. and it told me, "Based on everything that you've done so far, this is the content that you need to put in." But the other thing was, **"Help me convert this into HTML."**

**Anand**: And that was this session. What I'm showing you is... let's see, this is the Codex session, right? I probably will be able to locate it in Codex. No, let me not bother; this is just another view into the Codex chat. But the crux of it was: **"Take this and convert it to HTML, and I won't be happy until you've gotten to something really close to the original."** And eventually, it got to... not this one... "2024_semantic.html"—yeah, this is the one. So I looked at this one, I looked at this one, and I couldn't really tell much of a difference.

**Participant**: But is this back to the PowerPoint thing?

**Anand**: This is PowerPoint converted to PDF. This is a web page.

**Participant**: For the HTML, then you said convert it into... actually a CV basically?

**Anand**: Convert my CV, which is a PDF and a PowerPoint, into HTML. Let's zoom in a bit. This is the HTML. This is the PDF. Not much of a difference. This was entirely automated. Barring me saying, "No, no, I'm not happy with this portion, I'm not happy with that portion," blah blah blah.

**Participant**: But this is the earlier version, right, of your CV?

**Anand**: Both of these are the same version that I'm showing you right now. First I said, "Just convert it." So out here, for instance, on the right side, there isn't that much of a spacing in the HTML version that it created, whereas in mine, there was a little more spacing. You're not able to see it here on the TV, but if you were seeing it on Teams, you can see the difference. There is a little gray background behind this. And I said, "Okay, yeah, I like the HTML version now." So I told it to stop; in some cases I was nudging it towards a few minor changes.

**Anand**: **In short, if it had been allowed to do it by itself, it would have gotten there maybe 80%. If I had blindly—without looking at the output—said "do better" three times, it would have matched it close to pixel-perfect.** But now I have a far more amenable format. And if I can't visually tell the difference, and when I print this as a PDF it looks identical to the original one visually and being close enough, then I can say, "Now get me the 2026 version."

**Sonal**: Why did you give this specific instruction, from PDF to HTML and then to do it?

**Anand**: **Because I know it can edit HTML well, but not Word or PowerPoint.** So for the last year, my strategy has been: don't try and tell it to edit PowerPoint decks. Convert the PowerPoint to what it can edit, and stay in that space.

**Participant**: And then print as... then you convert to PDF or Word?

**Anand**: Then I convert to PDF. Now, the only problem then is somebody else who's trying to edit it will say, "Oh, I can't collaborate with you" and stuff like that. That's a different problem to be solved. But if I'm presenting, then I stick to just HTML from the original.

**Participant**: This is another very common use of tooling, and I'll show you the kinds of things that it did in order to create this. So behind the scenes, like I said I may have... yeah, I think I just have the wrong chat. But effectively, what it did was wrote the code that can automate the browser using a library called Playwright, and wrote the code that will do the equivalent of the printing of this page as a PDF from the browser without my ever having to open the browser. **Browser automation is a very powerful capability that the systems have.**

**Anand**: So when editing, the broad rule of thumb is: **we are able to convert between formats far more seamlessly than we thought before. Shift, edit, shift back.**

**Participant**: So for the presentations, we have been using Claude... it does lots of colors, whatever things like that... manages visuals very well.

**Participant**: You know with Claude, what we've seen—there's like in the corporate world, there's so much of AI slop, you can figure out which one is which—but the most sophisticated version of doing it is: if your corporate has a color schema, you kind of tell Claude, "This is the color schema." And then you kind of talk about what kind of things you want to see or not see in your presentation. After a few iterations, I've got to a point where my slides look like I've made them. But it has imperfections. I don't want perfect slides, right? It has imperfections; I don't want too many words, not very busy slides. And that's what I've got Claude to do.

**Anand**: Exactly. **That style transfer makes a big difference when we provide examples.** What I'm finding is that when we're giving it a style to copy from, sometimes telling it to create a test case—saying "here's a checklist that I want you to verify"—becomes powerful. Which leads me to the next theme of "Policy as Code."

**Participant**: Sorry, we stopped with that image setup/decisioning interface—are we done with that?

**Anand**: No, we're going to come back, right? I said to build the app, the networking app also.

**Sonal**: I'm sorry, I wanted to come back to the previous one also, the CV. When you said it got updated, do you have that updated... I just want to see?

**Anand**: This is the updated version, which says I'm Head of Innovation at Straive.

**Sonal**: And can I see the full format then? What have they done? They basically then... I'm curious to find out that at the end of it, is it that they managed to reduce words so that it could be refitted into the same...?

**Anand**: What they decided—and I agreed—was... I'm just thinking what was the definition that was behind it. It basically ChatGPT said, **"Look, this is a kid's CV. As an adult, you should be talking about adult stuff. The fact that you won a gold medal in school is charming, but please take that out. Talk about what you are currently doing and what you can do,"** etc. So it knocked off all of my early career stuff and instead said, "This is what I'm doing now, all the early stuff is here." And hyperlinked...

**Sonal**: So that overlay came out right there?

**Anand**: Yeah. Which is the important thing.

**Participant (Anand)**: Actually, you know, what I did—this was very early on—I took the CV... some of the CVs, it became so much like "Wow, I've done so much," it's clearly fake. But then I thought, why not make a website about myself? And so I started giving in—at that time the LinkedIn connect was not there—so I downloaded LinkedIn data and fed it in, and connected multiple things. And so it created a website for me, which I've not mounted anywhere. But it has a phenomenal amount of detail on what I've done in life, or what I have views on, that even I did not remember, which might be very relevant today if I wanted to position myself for something.

**Participant (Anand)**: And then I like—kind of, you know—I've lived in many cities and managed people in many cities, so I kind of got them all in a graph. So that became my favorite tool when I was talking with people, to scroll through. But that, you know, as you go through life and you've written lots of things in Substack or whatever, it can pull all of that and start telling you on which areas you're kind of an expert specialist and so on.

**Anand**: Exactly. **That corpus makes a big difference.** So in that case, let's do what we just spoke of, which is...

**Participant**: Anand, I have one question. I have used the chat function in GPT for my resume in the last 6-12 months. How does using Codex make the experience different? Because it was able to give me the output, it was even able to edit the file—but it was just a Word file. So what is different when we use Codex for this? Because I presume you're using Codex for this, right?

**Anand**: I used it to convert to HTML. And if I had given the Word file to ChatGPT and asked it to convert, it may not have had access to my browser to be able to take a screenshot or export it to a PDF in exactly the right format with exactly the right fonts. However, I am only about 30% sure of this. In fact, I am not even sure if I did this on Codex or ChatGPT. Like I said, I have a connector from ChatGPT to my local computer. So it may well have been ChatGPT that was driving my local computer to do it. And therefore, does it make a difference? Not really.

**Anand**: So, we're using code, we're giving it access to local data, and that access is what makes a difference.

**Participant**: Understood. If I'm uploading it, then I could just do it on chat. But like if there's a bunch of files and I want to give it access on my computer, then Codex is the better solution. Okay.

**Anand**: And therefore, what ChatGPT in this case would not have been able to do without access to the computer is revise my CV from 2024 to 2026. Because there I said, "Go through my entire disk. This is what I was two years ago, you figure out what I am now and put that in." And every single little thing like, "Okay, here are the kinds of things you've been playing around with at Adagram, here is the open research that you're doing specifically aligned with your title of behavioral psychologist, you're in the 40 experiments, out of these I think these three are the best that should be put on the CV"—that requires access.

**Participant (Anand)**: And Sonal, one thing that you should do with Codex, right... just put out your questions on the chat. No, no, I don't have a question. Okay. But Sonal, what with Codex what you should do is have a folder where any CV or anything about yourself you keep putting in. And over a period of time, then using Codex, it'll have all your history and give you a much more contextual thing of what you're looking for. Also with prompting—if you're looking let's say for a job, which I was doing for some time, it starts to know that you are looking for a job, okay, in this company, here are the things and here is how you should position when you're looking. So it'll give you that advice even unsolicited.

**Participant**: Okay. Thank you.

**Anand**: So you're saying this thing you did, you did it on Codex as against doing it on chat for work, this exercise that you did?

**Anand**: Two parts: one was the conversion from PowerPoint to HTML, which could be done anywhere as long as it has access to a computer, cloud or local. Second, updating it, which needs my computer. So that used either work or Codex. Exactly.

**Anand**: Okay, we're going to go to "Policy as Code." But no, let's do what you said, which is we have an application pending in any case. Now I have some data. What I'm going to do is tell—and let's just now blindly dictate on a new chat—I'm going to use a medium intelligence model with full access and I'm going to start to dictate. I'm going to give it a few directories... okay, I'm going to dictate first what it needs to do. I'll have to tell it where to find some of this information by typing, but otherwise dictation should solve 90% of the problem.

**Anand**: "I'd like to build a networking application of sorts based on the responses that we got on the survey. The aim is to connect people with each other. To be fair, I'm not really sure what kind of utility we could provide with an app where there is already pre-defined data—this is not going to be an app that asks for new data, it's not a transactional app. It's really more a decision intelligence app. And the idea is for you to show me this information in a variety of different ways that can help me, help the audience, and have the audience be able to log in and play around with it and get answers to their questions. I know this is vague, but you are supposed to be smart. Use your intelligence. Create something that is both useful, practical, and simple. Put it as a web interface. **I would like to be able to literally email this to people, so maybe just a plain HTML application with the data embedded in it would work fine.** And since people won't even know what this is if they open it blindly—that includes me—I'd like the application to be reasonably self-explanatory. Don't go rambling about what to do etc.; the whole point is for you to create this in a way that is both intuitive and useful."

**Anand**: Now, having said this, I know that this is something Claude is better at doing than ChatGPT. There is a benchmark—actually I'm going to paste this into Claude first. So we go to Claude Code, create a new... let's take Sonnet 3.5 with High as reasonable. The data is at... `~/dropbox/ai-unbox.csv` and the app should be in `~/downloads/ai-unbox.html`. Use relevant skills.

**Anand**: And we'll have it build. The reason I switched from the GPT to the Claude models is... let me show you this emotion bench thing. There was a recent study, "EQ Bench" as it's called, of the traits of different models. One of the things that the GPT models do really well is directive advice—that is, to specifically do something. One of the things that the Gemini models do really well is yielding—that is, you say, "No you are wrong, 2+2 is 1" and they say, "Okay, yes, I can see a way in which 2+2 can be made 1," or generally play along as a joke kind of a thing. Which also results in their ability to bamboozle or something, I forget. But **the model set of models that challenge you the most are the Anthropic models.** They say, "Look, you are saying X, I actually think Y is probably what you want, I'm going to nudge you towards Y or do Y." When I'm less clear, I go to the Anthropic models. When I'm more clear, I go to the GPT models. **When I want to feel good, I go to the Gemini models.**

**Anand**: So let that run, and at the end of it, it will have built an application. Now, what we're nudging towards is there's one part that I shared that is probably important: **plain HTML application.** Normally, if you have an application, there are probably three, four ways of running it. One, it could be an application where you download an executable and run it on somebody's computer. That is not an easy way to distribute things. The web is an easier way to distribute things. Then computer or mobile—even mobile apps are a little hard to distribute. So we usually leave those two out, especially if it has to go to anyone in the work context, it's near impossible.

**Anand**: Web applications are easier because you just have to put in a web link and they can get the application. The trouble is there are two kinds of web applications: one which does a back-and-forth with a server—they have memory, they can change based on what the user says. The form application that we just shared is one such example. But there are some applications where once you've loaded all the data and you're just going through it, you don't really need a backend. On Gmail, if you just wanted to read emails, you can do that offline even on a flight. You just can't send the email; you can queue it to send. Maybe news reading applications don't need the internet after you've downloaded it.

**Anand**: By and large, a big portion of what we do in Excel doesn't really need a backend; you can just do it on the browser. Only when we want to save it or persist it do we need to push it there. I'm increasingly distributing HTML files—it is very easy in a couple of ways. You can just mail it to somebody, they open the HTML file and now they have the application. It's not blocked like most others are. Or, I can upload this onto any server and have them host it. There are plenty of servers available—I'm not even going to suggest a name because you just have to tell it, "Find me some server where you can host it for free." It will probably host it—not probably, it will host it; there are several free hosts meant for agents and it'll just give you a link. Problem solved.

**Anand**: **So the magic word to use in many cases is HTML application. Single-page HTML application makes it even more precise.** I want one HTML file which is the entire application. Then you can mail it, you can share a link. That latter is in fact what we will do. At the end of this, I'm literally going to say, "Publish this somewhere, you figure out where, and give me the link."

**Anand**: Now this, there are a number of things that from a coding technique/process perspective, these have made handy. One of them is steering and the other is QA. While it's running in Claude Code or in Codex, you can type something midway. So I'm typing this, right? I'm just going to press enter. This is not something that you can do in the chat. Now, it gives me the option of interrupting, but I don't have to interrupt. What it did was it was doing a whole bunch of things—in the middle it read what I said and it's continuing from there. It will finish building the file locally and continue. **This is called steering. That is pretty powerful** because if it's in the middle of doing something that is taking two, three minutes, then you realize, "Oh wait, I forgot to say this." You don't need to stop it; you can just tell it whatever else, press enter, it will take it up.

**Participant**: While the other part is going on in the background?

**Anand**: Exactly. That is built-in. I missed that. In Codex and Claude Code, if you forgot something or want to add something, just type it and press enter. It won't interrupt itself, it will take your inputs. So let this go.

**Anand**: Now, while this is churning, let's go back to the other thing that I was going to talk about, which is "Policy as Code." One of the advantages of code is that it's deterministic and that is obviously pretty powerful. But a lot of things that we want to enforce are documents. "I have a mandate which has a certain set of clauses. I want to see if my insurance policy actually is valid against this set of claims," etc. The good part is we can use these to, for all practical purposes, convert something like a policy into code. One of the best examples of this is something called **InsureML**.

**Anand**: Let me just find... yeah, here we go. Let me just go right there. This is a Cambridge-authored programming language of sorts for insurance. The way it works is: if I took a contract like this—this is an auto-motor insurance contract—it can convert the contract into a programming language-like thing, and it's moderately readable. It says, "A valid claim is true if the driver is fully eligible, and the vehicle authorization is valid, and the incident circumstances are covered, and the claim procedure is followed." "The driver is fully eligible," which is the first clause, "if they are age-eligible, they are license-compliant, and the driving history is," etc. "They are age-eligible if the age is greater than 21 and the driving experience in months is greater than 12." Goes on almost like a tree.

**Anand**: Now, the language is a little bit more complex than that, but this is a reasonable example of how the contract is broken into this, and you can effectively treat this as a flowchart for the insurance claim. Which means that if we have, let's say, a claim that comes in... so let's say Marcia has filed a claim. This is what the claim form says: she's 28 years old, 84 months of driving experience, blah blah blah. This can be validated against the clause itself step-by-step. "Okay, age is valid, license valid," blah blah blah. Against each one of these, there is a problem with the sobriety verification. The blood alcohol count should be less than 0.08, and hers is 0.14, therefore denied.

**Anand**: Now, there is no arguing the logic part of it. One may argue that it did not convert it correctly to the program; the contract needs to be verified and matched against the program. That's a one-time effort, and you can do this very diligently with accuracy. The second is whether the claim is not converted. Okay, try cross-check, double-check, triple-check four times, whatever. But once those two are sorted, there is no arguing whether it's done the job right or not.

**Anand**: And this sort of a thing is becoming more in the realm of a program part of a process. **Upload any arbitrary document and say, "What part of this can be converted into programmatic verification?"** Upload a new document, extract whatever you need, run it against this program. That portion at least now starts getting automated; people only have to check the rest of it. This can be expanded to not just pure programmatic verification but LLM verification as well. For instance, let's take the European financial promotion guidelines... what I'm doing now is showing you the cleaned-up Claude-generated outputs of programs that these have written, not showing the process just to save time.

**Participant**: Sorry, what was the difference between programmatic verification and LLM verification?

**Anand**: **Programmatic verification is deterministic. An LLM verification may not be.** For example, if you asked Claude, "Here is a document, here is a claims document, insurance claim... does it meet the policy?" 99.999% of the time, it will likely be correct—yes or no, yes. And 99% of the time it will give you the same answer.

**Participant (Anand)**: So for example, in this particular case, the alcohol thing—it could be because of some medicines or something like that. In that case, right, so that is where the probabilistic... okay, got it.

**Anand**: It may simply miss the blood alcohol count once. But I thought it's more than that. I guess the question is, it's also the use case because in this particular case when you have the insurance claim, right, you want a very deterministic output. Correct. So what you're really looking for is if you look at all the specific clauses that you have, right, which is age, which is health, which is circumstances and others, right, you need to have the comfort that you have a, you know, you have a deterministic mode. I thought that is the reason why you tend to move towards that. I don't know, I'm just thinking through that.

**Anand**: I think **determinism is good wherever we can afford it.**

**Participant**: Because I think LLM where it also... so especially in cases like this, right, you're very correct that LLMs might give you the same output, but whether you'll have the comfort is the big question mark that I have.

**Anand**: Right.

**Participant**: Because here if you see the second page... yeah.

**Participant (Anand)**: From a yes and a no, it is adding a qualification there or something like that.

**Anand**: It's adding 25 questions, you know, and verified saying that these are the 28 at... 28 questions and a yes/no for each one of them. So that is the deterministic... you're converting it into... so I think that's the... I'm just thinking through.

**Anand**: Correct. **We know this is... anytime we run it, we get the same answer, and if the rules are right, the answer will always be the same and in line with the rules. With an LLM, it can take judgment calls.**

**Participant**: Which you want to avoid in situations like this.

**Participant (Anand)**: I don't know, I would put it the other way.

**Participant (Sandeep)**: No, no, no. Make sense. I think there may be situations where a direct... like, I mean, on compassionate grounds, what do we do kind of a thing, right? So rather than saying a digital yes or a no, what are the other circumstances that should be taken into account and assist the decision-making? I love that explanation the way it is put across.

**Anand**: Correct. **That can be brought as another overlay also onto the deterministic.** In some cases where we cannot avoid an LLM...

**Participant**: Because there... yeah, so that's... right.

**Participant (Anand)**: It's very use-case specific again. That's the point. Yeah.

**Anand**: Let's take this one, the European financial promotion guidelines. It's a bunch of PDFs. It says that if anyone is doing any kind of financial advertising in Europe, then you have to follow these guidelines. Here is how you are allowed to do financial promotion, blah, blah, blah. What we can do is step one, use an LLM to convert this into a checklist.

**Participant**: Beautiful.

**Anand**: Let's... and which is... I think I should just...

**Participant (Anand)**: Just a comment, when I was in IMD, one of our professors made a house and he said, "I was looking at the by-laws, they were 250 pages. I read it. I'll be surprised if anyone else did." So this would make it easier for him to do.

**Anand**: That is so true. So now it's doing the ingestion. **Let's hope that I'm connected and I have my configuration...**

**Participant**: This set-up that you have created specifically to do this, or is it readily available for anyone?

**Anand**: No, no, it's just Codex behind the scenes with a fancy interface. Nothing more than that. Yeah, actually this is probably going to take some time and therefore I'm not going to show you the whole thing. But effectively what it does is—and you would have seen this a short while ago—it created a long checklist of things that it should check. I have something else for contracts that I can show you the equivalent of. These were a series of rules that were...

**Anand**: So what we can do is, given a contract, validate whether, for instance, this contract carries a breach of contract clause. Does it carry a deadline or delay consequence, etc.? And with evidence. So if it says "Yes, copyright and ownership permissions are available," it says section 4.1 has this text: "the author shall retain the copyright." So yes, it is there. On the other hand, "Quality and standards," not able to find it. Now maybe it's making a mistake; a human can go validate and also verify, "Okay, it says this piece of text is there, is it actually there?" Very easy to narrow down. **But effectively, at one shot, we have the equivalent of taking a policy—in this particular case—does it align with the author-publisher contract structure against a whole bunch of contracts and get a yes/no whether this is working, why it's working, what is not working, etc.**

**Participant**: It's such a beautiful interface.

**Participant (Anand)**: Beautiful one.

**Participant (Debi)**: Which you just tell Claude to create. **But you've obviously... yeah, knowing what we want is the most important thing.**

**Anand**: Increasingly, yes.

**Participant (Debi)**: Yeah. So you knew what you wanted; that's why it's exactly... yeah. Correct.

**Anand**: To be fair, the prompt was, "Look, it should be like Excel, but fancy."

**Participant**: [laughs]

**Anand**: That goes a long way.

**Participant (Debi)**: But I guess there was some iteration and iterations around it as well.

**Anand**: Correct.

**Participant (Debi)**: **Which is... so knowing what you want is the most important, yeah.**

**Anand**: And being able to, yeah, get there with a few iterations. Absolutely.

**Anand**: So that brings us to the last section that I wanted to cover, which is—I mentioned that there are four broad ways of deploying applications: mobile, desktop app, web application without a backend, web application with a frontend. There is one really niche way of deploying applications that almost no one knows about or talks about, which is that **your browser itself is a pretty powerful coding environment, and JavaScript can run in the browser across any pages.** You can inject JavaScript into any web page, which means that you can get a web page to do almost anything that web pages can be deployed to do. Which makes it pretty powerful.

**Anand**: And we'll take a look at this. For that, I just want to see if this application is... okay, this application is available. It's shared in the room. In that way, there's the link. Wait, I'll have to run the command... let's tell it the same thing that I just did... "I want to publish this on the public internet. There are supposed to be lots of servers that allow agents to publish HTML files. Find and push."

**Participant**: Knowing what is possible is the other thing.

**Participant (Saurabh?)**: Yeah, it's your imagination.

**Participant (Debi?)**: Your imagination is what matters.

**Participant (Saurabh?)**: Yeah, but other people are creating the infrastructure for this sort of a thing, which... I mean, this is a niche. Why? How do they get paid? Why are they creating infrastructure for you for free?

**Anand**: **It costs nothing. You are putting your data into my server, which I can happily do whatever I want with it, at the very least read. If you have 2,000 of these, I will sell you as my asset and get acquired.**

**Participant**: [laughs]

**Anand**: So... but let's also see what this is saying... from a room map... wait, I'm supposed to... let me just open this on my... the public-private artifact link... "publish publicly as is," slow name and publish publicly... I'll delete it, so I'll just publish publicly as is. And... `ai-unbox.html`. Here's what it looks like. Open this in HTML... it's not opening in my browser. I want it to open in the browser. Most every one of these starts eating up the HTML. Okay, here we go.

**Anand**: Sixteen of us answered this, okay. And 62% of the decisions people repeat are about money, and three of us do that for a living. Okay, interesting. "Find your match." Okay, so it's put in the names, some of which are anonymous, etc. So how exactly do we use this? Supposing I have a need related to, I don't know, education for me. Okay... Oh, I think it's doing a semantic search behind the scenes for the closest match. "Future of... okay, needs: future of kids in our AI era." Okay, yeah, that's something that I can talk about. And this... okay, kids' exam practice papers, again, might click with me.

**Anand**: Okay, yeah, this is interesting. So what it does is it says, "Here is one response and this response or this person's offer and needs might click with Shoyeb and Sonal." Anand's might click with Anonymous 1 and Shoyeb. Anonymous 3 might click with me, that is true, and Anonymous 4. Yeah, okay, cool.

**Anand**: Now that it has the matching, let's see who would be interested in investing and markets. That's a bunch of people who are overlapping with this area. Okay, that is good. A bunch of people focused on let's say family, health, and education. Okay, here are the people, probably sorted in a descending order. **So effectively, at one shot, I'm getting two things out of this: a, if I wanted to filter by this group, that's fine, but what is more useful, I think, is the match part of it.** I can search for names... no, I'm not... I don't know how to search for who would be the best matches for me, but it's easy enough to go through this and read it.

**Participant (Debi)**: Use your language. It's created a decisioning interface, sort of a thing.

**Anand**: Exactly. Beautiful. **Now this is not what I need, but I didn't know what I needed before I asked it in the first place. Now I know and therefore prototyping becomes a very powerful way of need discovery.**

**Anand**: So I look at this and say, "Ah, what I need is—" and I'm going to dictate to that. "Modify the application so that it's easy for me to pick anyone's name and see who are the people who would best connect with that person." Did I do anything? Okay, I don't think that worked. Let's try it here. "Modify the application so that you show me a list of all the names, anonymous or actual, and when I click on each person, it should show me who are the people that person should connect with." And let's put that here. Also, push.

**Anand**: Okay. And this is where it will appear. But open this... so yeah, it's already published on my website in `ai-unbox-room-map` and the updates will appear. I'll put this in the chat; you can play around with this.

**Anand**: Let's go back to the "Bookmarklets," which I promised was the last thing. I know we are out of time.

**Participant (Debi?)**: No, no, please, please go ahead. It's up to you how much time you have.

**Anand**: I'll wrap up this quickly; this is the last piece.

**Participant (Debi?)**: This is a very interesting one, the Bookmarklets.

**Anand**: **So Bookmarklets are what you have in the bookmarks bar out here, and you can write and run little programs here.** Wow. What are programs that I have running? Oh, one of them is a "Teams Captions" program. You organize the Teams; I don't get the captions. But the captions are actually available if I just enable captions. So I can literally see it here.

**Participant**: Right.

**Anand**: **If I could just copy this, it would be so helpful, but I find that I'm not able to copy it.** You can't copy the selected text. But the browser is a programming environment. So my instruction to—it could be ChatGPT, actually, doesn't matter—was, "Create a Bookmarklet so that I can copy this stuff." Now, the Bookmarklet, which I will run here... notice what's happening here... I have to... I have to leave my Teams screen-sharing on. But yeah, I hope you can see the top left somewhat clearly. I have a "Teams Captions" Bookmarklet.

**Participant (Debi)**: Sorry, may I just go one step... I can see five of them. You've got the Gemini scraper, you've got the Google Meet caption, you've got all of them, correct? So you created these.

**Anand**: I created these.

**Participant (Debi)**: Okay. How do you create this?

**Anand**: I'll come to that. That's the next part. I'll show you what it can do and then we'll create one. So "Teams Captions," when you click on it, it adds this thing on the right side. Okay. That gives me two buttons: one to start recording, the other to copy. If I click on copy, it has copied it to my clipboard and I can paste this anywhere. So I could go to a ChatGPT session and paste it. "Tell me what these people are saying. I went off to sleep, I stepped away, give me a quick catch-up of what happened." And here is what was just captured. **Obviously, it starts capturing only after we enable captions. So one of the first things that I do when I get into a meeting, even if the other person is not recording, is turn on my captions.**

**Participant (Debi)**: So when you say captions, it's like a transcript.

**Anand**: **It is exactly a transcript.** The other advantage is I can then say "Start Recording," which if I do that, it will save it in a file dynamically, and when I say "Stop Recording," it will stop recording it in that file. So that means I have it for posterity as well.

**Participant (Sandeep)**: So for example, in WhatsApp, earlier you could export the text of any chat. Now you can't in some of the ones that are enabled. Now this kind of pretty much breaks that.

**Anand**: Very good point. So let's go to our group's WhatsApp chat and on the... wait, okay.

**Participant**: That's a very interesting point. We should check it right now. Yeah.

**Anand**: So on this, can I export? I don't see an "Export" here. To be fair, anyway, I wouldn't see an "Export"; it would only be on my phone. But I'm not an admin or maybe the admin has disabled it, whatever. But I can see it, right? I should be able to copy it.

**Anand**: So what I have is this "WhatsApp Scraper" Bookmarklet. You already done that? [laughs] By default, it can copy the 17 messages that I have on my screen. But as I scroll up, now you can see that it's saying "Copy 33 messages."

**Participant (Saurabh?)**: Oh, but you have to go up, and in case the phone cannot sync the old parts, then you have a problem.

**Anand**: Then I have a problem. So what I can access on my laptop, I can. On the phone, is it possible? I'm sure it's possible; I just haven't had the need yet because my next instruction would have been then, "Connect my phone, figure out how to get all of this." And get all of those. Now this copies all of these messages. I can put it into wherever. Yeah, let's just paste it into ChatGPT and you can show the text feed and yeah, all of the messages are available here.

**Anand**: How does one go about creating this and what are the things that we can create?

**Participant**: Yeah, what are the use cases?

**Anand**: **You can by and large create anything where the activity is restricted to that one page.**

**Participant**: To a single page.

**Anand**: Correct. So you can completely change the look of that page. At Straive, a lot of times the team would reach out to me and say, "Anand, can you create a demo for X?" See, ChatGPT can already do that. "Yeah, yeah, but if we tell our client that ChatGPT can do it, they won't buy our services. So I want you to create something that does exactly just this one little thing which I know ChatGPT can anyway do, I won't tell them." And I show.

**Anand**: Now, I'm lazy. So what I do is give them a Bookmarklet. What I do is tell them to go to `chatgpt.com`. There is a Bookmarklet here called... okay, "Straive Intelligence." You click on it, it will convert... it's slightly outdated so it's looking garish, but it will convert ChatGPT into Straive colors. And then you continue working. **This is exactly ChatGPT, just reskinned. That's an example of the kind of thing that you can do.**

**Participant (Debi?)**: Or... so just one question. You just mentioned that it can only do what is available in a single page. So for example, if I have, say, a list of all the TED talks, right? So some of the metadata is not available in one page, you have to dig deeper, right? So in that case, Bookmarklets are not the best option?

**Anand**: They may still be able to do it. You could try, but don't be surprised if it's a bit too [inaudible]. But if the data is on a single page, like for instance, Hacker News threads or let me see if there are any other thread scrapers... yeah, or even ChatGPT, there's a long conversation, I want to copy the whole thing in a good format. You can use this. Click on it to expand specific areas. That's something that I use.

**Anand**: LinkedIn profiles are a bit of a problem. So if I go to...

**Participant**: You've created a scraper?

**Anand**: Yeah. No, I actually... for LinkedIn I find...

**Participant (Debi?)**: But LinkedIn, can you... can you do that as well?

**Participant**: Actually, for LinkedIn you can just download everything. You ask Claude how to download it, it will give you instructions and you go in.

**Anand**: **The download does not have, for instance, the list of invites that I have not accepted.** And in my case, so there are... let's see, let's take a look at... yeah, 1,000 invites that I have not accepted. And I want to go through this and say whose invites should I accept.

**Participant**: Wow.

**Anand**: So the Bookmarklet is the "LinkedIn Invite Scraper" which copies the then... this I didn't want to manually scroll. So I told it, "You scroll." And it goes page down, page down, page down. Right now it's at... it's copied 60 of these, 70 of these, 80 of these. At some point, I really do need this data so I will let it go on until about 100 and once it's done... okay, maybe I should give it a little bit of help... yeah, copy 100, and at that point it stops.

**Participant (Sandeep)**: Just a comment, I find this very funny. I mean, when you send a LinkedIn request, none of them have a comment, right? It's just a... it's very odd.

**Participant**: Most people don't send... yeah, yeah, true.

**Anand**: So the metrics I use are how many common connections I have; that's one signal. Depreciate premium connections; that's usually marketing, that sort of a thing. And archive this in a folder. So I have a "LinkedIn invites" folder here where... oh, okay, this was copied as Markdown, I should have copied it as JSON. But anyway. So that's another kind of use. And you're right, if the export is there, use the export. **This is only to solve the problem that is not yet solved.**

**Anand**: So how does one go about creating Bookmarklets? Before that, let's do one small little... two small little form exercises where I'm curious where you would want to create a Bookmarklet. And I'm going to unhide a couple of questions. So on the same form that we had earlier, which is—yeah, you can see the link on the top right, `forms.s-anand.net`. Is this study... annoyance is the one... Bookmark... yeah. What would you want to create a Bookmarklet for? Let's just fill that in. What we'll do is take one of these and actually create a Bookmarklet for it right now and you can obviously do it for your own. Cool.

**Participant**: We're seeing different questions.

**Anand**: Question number nine.

**Participant**: Okay. "On a website, what is one tiny thing that..."

**Participant (Debi?)**: Yeah, even I have that. "On a website you use often, what's one tiny thing that repeatedly annoys you?"

**Anand**: Let's fix that with a Bookmarklet. Okay. We have maybe about half a dozen ideas. And I've also added one more question. Let me know if you want emails that I send out, which is basically from my blog. But what we'll now do is create a Bookmarklet with one of these.

**Anand**: **Like with most things, the trick is knowing that there is something called a Bookmarklet. After that, the creation, the execution, and all is simply tell ChatGPT or Claude or whatever to do it; it will do the rest of it.** Yeah.

**Anand**: Right, let's see what we have for question nine so far. Removing ads, Zoom transcript... Does Zoom have a web application? I don't think it does.

**Participant**: It does.

**Anand**: Good, okay.

**Participant (Sonal)**: Sorry, Anand, can you show the QR code again? I'm not able to get the fresh new question in the previous form.

**Anand**: I've put it on the chat as well in that case, and the QR code also.

**Anand**: Okay, we have enough responses. Ads, okay, summarizing WhatsApp, Telegram chats, clicking through to links in maps, Instagram, WhatsApp, LinkedIn, unable to check our profile without revealing ourselves. Okay, so of these—and let me go through the five that are on the screen so far and see which of these are doable, not doable based on what I know.

**Anand**: **Zoom transcript: if Zoom will appear directly on the web without a web application—I mean, without opening a new application—it is possible. Bookmarklets work on the browser.** I have never tried it, I don't have... and probably have a Zoom account, I don't use it. So I could show you how to do what we just did on Teams with Google Meet maybe, or even on Teams for that matter.

**Anand**: **Ads which I need to click off: that is possible.** If there was a site that you had an ad for, you could just have one button and automatically have it click on your behalf. This is a good use case.

**Anand**: **LinkedIn: unable to check our profile without revealing ourselves. May not be possible in the sense that you login.** And the browser can only do what the browser can do. A Bookmarklet is limited to what the browser can do. And if you're on the browser, you're logged in as yourself onto LinkedIn, then you are revealing yourself in some shape or form. So this may not be possible.

**Anand**: **Summarizing WhatsApp and Telegram chats, telling me which one to read and respond to.** This can be easily done in two steps: one, extracting all of these; second, pasting it into ChatGPT and asking "What should I do?". This is in fact my workflow; I don't read group conversations at all. I convert them into podcasts and listen to them sometimes, or ask specific questions. This is certainly something that's doable.

**Anand**: Clicking through to links to Maps, Instagram... this I'm not sure I understood.

**Participant**: Sometimes they get blocked by Apple and by Google on the phone.

**Anand**: Okay. I don't know how this works, honestly it doesn't work.

**Participant**: Got it. Again, this is limited to the browser.

**Anand**: Yeah, it's from the browser going to that. It doesn't work always. Right.

**Anand**: Most recent was, "Too much time spent scrolling Insta, I want to stop after 10 minutes." Okay, this is probably the easiest candidate of the lot.

**Participant (Debi)**: **But that I think you already have phone settings for that.**

**Anand**: Probably not on the browser desktop.

**Participant (Debi)**: I have settings for every social media. Wow.

**Anand**: And LinkedIn scraping of second and third connections. This will go through multiple pages, and multiple pages are a little difficult on something like a Bookmarklet. Let me see... I think I had an idea that I would want to test out. Maybe a transcript or ad or summarizing WhatsApp. Any preference?

**Participant**: WhatsApp we know.

**Participant**: Stop scrolling Instagram.

**Anand**: Good, okay. So first I need to login into Instagram. I'm not sure I even know my account.

**Participant (Debi)**: Sorry, the LinkedIn second and third was my question. You said multiple pages is a challenge?

**Anand**: Multiple pages, yeah. Bookmarklets don't... they might work. I'm not sure if I've tried and succeeded. I'll try and see if I can figure it out. Yeah. It just might.

**Anand**: So let's see. Go here, save the login info. I may not have long enough of a feed for it to... does it just keep... you can keep scrolling this, is it?

**Participant**: Yeah.

**Anand**: Good, okay. Then... oh, we're all caught up.

**Participant**: [laughs]

**Anand**: Good, okay, fine. So how about if we said, instead of 10 minutes, that might take long time, I will say 30 posts. Right?

**Anand**: Now, let's then do this. Now we don't need any major coding tools or anything. Claude can do it, ChatGPT can do it, etc. So let's use any one of these. I'm going to use just regular chat on ChatGPT and maybe medium intelligence to tell it... okay, no, sorry. **We will need a coding agent so that it can test. Otherwise, it won't be able to see the browser and test it out.**

**Anand**: So here's what I'm going to do instead. I'll paste it on Codex, but what my instructions are... I'll just run it directly in Codex. "Create and test a Bookmarklet that will make sure I don't read more than 20 posts on Instagram in any five-minute duration." Concise enough, I think. I'm not sure if I'm getting the terminology right, but you'll have to give it access. Accha [Okay], it currently has full access. Okay. On my system, it probably has more access than it should.

**Participant (Debi?)**: Yeah, I think so.

**Anand**: Let it run. Now, the part that is... okay, now, will this work on your systems? There is one little part that may not, which is the test part of it. And why is that? Because I have enabled a bunch of extensions, including, for instance, the Claude extension, which means that Claude can control my browser; the ChatGPT extension, which means ChatGPT can control my browser. If it is not able to access your browser, it may not be able to test the Bookmarklet.

**Participant**: But it can write the code.

**Anand**: It can write the code, correct. So, let me just tell it a bit more. "I have a window of Instagram open, you should use that to test." Now again, you notice that I'm typing it midway. In Claude, it just took it as it went. Out here, it's queuing it up, saying "I'm going to do that as soon as I finish my next task." Oh, okay, no, I have to click on it once more. And yeah, then it pushes it into the queue.

**Anand**: So it... you can decide whether you want this to do the job after you're done or later. This will take three, four minutes. The only thing that you would then want to know afterwards is how do I install it as a Bookmarklet. Short answer is, tell it and it will tell you how to install. **All of that is easy; like I said, knowing that it is possible is becoming the big thing.**

**Anand**: So, while this is running, I'll share the two outputs and wrap up. The first was the link with our app. I believe that is still deployed. [address]... to the start room. Yeah, this... does this now let me pick a person? Or how did it... all 16 people are now listed. Okay, where... oh, if I click on... oh-ho, okay, fine.

**Anand**: If I click on anyone, it tells me—and maybe it did even earlier—who I should connect to. So, **Anand for real AI use cases, not quick answers; Anonymous 5 for using... oh, people whom I could help. Okay, that's whom I could help. Rohit: ask me how to use code, tell me every bit of everything.**

**Anand**: Yeah, and people who could help me are Anonymous 3 on [inaudible] practice papers, yeah, and specific topics like health. **The examples are so detailed. And I can help... obviously Rohit, but you could also help Shijo with investment advice and Anonymous 1 on cocktail and AI investing, and so on.**

**Anand**: So, yeah, effectively we have already half a dozen valid and useful information. That was one thing. This link is already there. The last thing, therefore, while the Bookmarklet churns, is summarizing what we have gone through so far—not necessarily in the same order.

**Anand**: **We can create interfaces for decisions.** What we just saw was one such. Take data, present it in a way that you need to see. We don't necessarily know what we want until we first saw it. **Let it prototype and have it show us; that's one way of using code.**

**Participant**: So the IMDb setup that you did, you did it something similar or was it a little more sophisticated because it didn't look like that?

**Anand**: That was created in 2008. So Col Needham, who's the founder of IMDb, reached out to me saying, "Look, it looks like you're scraping from my website. So why don't you come out to Bristol and let's have a chat." And we were talking about movies and how else to visualize it. This was before my career in data visualization; that visualization actually kicked off my career in data visualization because he and I were ideating, saying, "Here's one way of looking at it, blah, blah, blah." And it persists after 18 years.

**Participant**: So can I access something like that publicly?

**Anand**: Yes, what I showed is what's public. Oh, through your blog, yeah. But I've been updating that application using Claude and ChatGPT. The outliers thing, for instance... just a thought, this is not relevant to the composition, but typically what happens is when you have a top 10, top 20, you tend to go and look at those 20; your decision gets restricted to that. **That outliers setup is a very beautiful way to look at things which you probably like.**

**Anand**: Exactly. And it did not emerge explicitly for 15 years. I've been looking at this, I never thought of adding a button for outliers. Not thought of, it was a reasonable amount of work. When AI-made coding becomes easier, it was just a, "Oh, I've been giving this for so many years, just do it for me." "No, no, no, that's not how I want the outliers, do it differently." "Okay, yeah, this looks fine."

**Participant**: True. Just one question. I love that, that was really beautiful. How easy or difficult is it to do with what you're just telling us with Bookmarklets or whatever?

**Anand**: **Download the IMDb data and create a scatter plot matrix of rating versus votes. You'll be between 50 to 70% there.** Brilliant, okay.

**Anand**: So those were decision interfaces. We also spoke of organizers—just take your photos, files, whatever, and sort it out. If you want to save the code, save it if you use it regularly. We... okay, we did not cover benchmarks, that's okay, leave that aside. For editors, we talked about converting it into HTML, which is a far more amenable format, and keeping it close enough to the originals.

**Anand**: We spoke of Policy as Code: the idea that you can convert documents into programs that can verify, or documents into checklists that LLMs can verify, effectively transforming it into the code domain. And finally, Bookmarklets, which are pretty useful in that they give you a fifth axis of implementation of programs. And this Bookmarklet is still running, but anything that works within a single browser page, it is able to edit.

**Anand**: **More importantly, one, if you know that it is possible, then a huge capability gets unlocked.** A big part of therefore what we need to do is keep asking things like, "Look, I don't even know what I don't know. Tell me what might be useful for me that you think I'm not even aware of." And over time say, "No, no, no, not that kind of thing, not this kind of thing," so that it gets a sense of what you want to know that you don't know.

**Anand**: **Secondly, the difference with regard to coding is not that code is an artifact that has value, but what you get through code has value.** That happens whether you're using ChatGPT or Codex anyway. What seems to be making a bigger difference is access. Can it access the context on your system, the tools on your system, the permissions on your system, etc. And even that distinction is fading. So **treat code as something that anyway is part of every request if needed; it is not a big thing anymore.**

**Anand**: Cool. I will then... the benchmark thing is still running, so I'm going to shut it down. Maybe we should wrap up since we're [inaudible].

**Participant**: That's the Bookmarklet, right, which is running, not benchmark?

**Anand**: The Bookmarklet is running, yeah. Benchmark I didn't even cover, we don't have enough time. So with that, I will share all the details. My contact details are here anyway, but I'll also drop an email for anyone who needs. But yeah, we are done with the entire session now, with the entire series rather.

**Participant**: Fantastic, yeah. Fantastic. Anand, actually, I find the write-ups you send later, that's very useful just to revise through the entire thing. I had actually missed two of the sessions, so for that you can almost catch up completely. Very, very good.

**Participant**: The recordings are good.

**Participant**: **But you know, the recording takes longer to go through, whereas you read through it and it just gives you pretty much everything.** But I'm glad you shared that. So that's a good feedback. So that has helped. Yeah, that is very... I think it's very valuable because the recording... I mean, I don't need two hours to listen to the whole recording; I read through it, it gives me pretty much... and since I've attended one earlier session then I've read the transcript, I know I don't lose that much by not listening to the whole recording. The transcript is actually pretty comprehensive, pretty comprehensive.

**Anand**: Good to know. All right. Thank you everyone.

**Participant**: Thank you. Thank you. Thanks for coming. Thank you. Bye. Bye. Thank you. Bye-bye.
