Anand Chowdhary

Developer tools, open-source projects, web standards, and practical engineering lessons.

Engineering and open source

A curated reading order. Explore all topics

  1. Quarter of Open Source

    April 4, 2019

    The first quarter of 2019 was very interesting for me. It was the first time I did a lot of open-source work as a way to scratch my own itch. Every time I thought I needed a specific tool which I couldn't find, I built and open-sourced it. Background The number of contributions I've made on GitHub has increased by over 20x in the past few years. 2015 In 2015, I made slightly more than 100 contributions. These were mostly on my own projects, like my personal website, Made with Love in Indi

  2. Introducing Uppload v2

    January 3, 2020

    In April 2018, I made the first commit to Uppload (56bd930) and pitched it as an idea to Michael, the founder of El Niño, to fund the development of an open-source JavaScript file uploader, something that the web desperately needed. Later that summer, we launched Uppload and started using it in our projects.

  3. Microsoft is the most important company in the open-source ecosystem

    June 28, 2020

    This was a sidenote for another note I've been thinking about, but I think it deserves its own post. Today (mid 2020), Microsoft is the world's most important, influential, and exciting company in the open-source ecosystem. Once considered evil[^1], Microsoft under Nadella has not only embraced open-source, but pushed it more forward than any other Big Tech company[^2]. If I had to choose between working at any of the FAANG/Big Four/etc., it has to be Microsoft.

  4. Package Manager Standardization

    March 15, 2019

    Matt Turnbull has a great article titled Why Are You Still Using Yarn in 2018? which makes the argument that newer versions of NPM are just as fast as Yarn and switching to NPM might actually have some benefits (I'm still a Yarn user). Furthermore, it's getting complicated to maintain documentations and say: To install this package, use npm install package or yarn add package, etc.

  5. Google Docs + GitHub

    March 11, 2019

    When I first started using Google Docs, my favorite feature was "smart" autosaving. "Smart" because it's not just an interval, but also based on content changes. Today, almost all popular web-based text editors have both autosaving (WordPress, Medium, etc.) and rich text formatting (think [f]CKEditor and TinyMCE a decade ago). The question is — how can I combine the rich text and autosaving aspects with git's version control, so I can smartly save only the changes to a file and easily go back.

  6. The Defence for MD5

    February 26, 2017

    A few days ago, I tried to reset my password on PR.com, the press releases website. I entered my email, and they sent me the username and password in plain text. That's right, in plain text. The problem with this method of password storage is that if anyone gets access to your database, they can literally just see the passwords. This is why hashing is used, which converts the plain text password to an encrypted "hashed" version that is, in an ideal world, undecryptable.

  7. UTwente PeoplePages Contact Book

    August 12, 2017

    As a future creative technology student at the University of Twente, I wanted to get in touch with a particular professor. Their website, PeoplePages, uses a RESTful API for AJAX requests to search for university staff, so I decided to add everyone to my contacts using API scraping to save time in the future. I did a query to find all results starting with the letter "a" and got a minified JSON response with all data. Fortunately, they have unrestricted access to their endpoints. This is wha

  8. The Death of WWW

    August 30, 2013

    The ‘WWW’ subdomain is deprecated. There. I said it. Let me put it this way — When you type google.com in your web browser, you get redirected to http://www.google.com, right? But is that necessary? Do we really need to prove our world-wide web presence by adding a WWW subdomain? I don’t think so. Let us first recall the definition of WWW: World Wide Web — n. Abb

  9. Running Claude Code in a loop

    November 15, 2025

    This all started because I was contractually obligated to write unit tests for a codebase with hundreds of thousands of lines of code and go from 0% to 80%+ coverage in the next few weeks - seems like something Claude should do. So I built Continuous Claude, a CLI tool to run Claude Code in a loop that maintains a persistent context across multiple iterations.

  10. AgentScript

    February 9, 2026

    A few weeks ago, I was staring at a system prompt that was 127,000 tokens long. One hundred and twenty-seven thousand tokens - just the system prompt. Most of it was, you guessed it, tool schemas: JSON definitions for every possible thing the agent could do, most of which it would never touch in any given run. My solution? I propose AgentScript: a code-first execution language where the LLM can only interact with the outside world by writing programs.