Sep 1 2026 Bad code is kudzu Aug 12 2026 Write for people Jun 15 2026 Running local models is good now May 28 2026 We should be more tired than the model May 18 2026 Tagging my blog posts with BERTopic and LLMs Apr 20 2026 Build yourself flowers Apr 13 2026 Mechanical sympathy Apr 6 2026 On Programming Joy and Octocat Apr 5 2026 NASA Elements of Engineering Excellence Mar 4 2026 Antidote Feb 21 2026 Querying 3 billion vectors Dec 22 2025 2025 in review Oct 20 2025 I want to see the claw Sep 9 2025 Walking around the app Sep 1 2025 How big are our embeddings now and why? Aug 8 2025 Enabling Hugo static site search with Lunr.js Jul 16 2025 My favorite use-case for AI is writing logs Mar 17 2025 20 years of YC Jan 23 2025 You can just hack on ATProto Jan 14 2025 How FastAPI path operations work Jan 3 2025 Everything I did in 2024 Dec 16 2024 Write code with your Alphabet Radio on Nov 9 2024 Why are we using LLMs as calculators? Sep 19 2024 Dead Internet Souls May 25 2024 Don't worry about LLMs May 6 2024 We've been put in the vibe space Apr 25 2024 How I search in 2024 Apr 16 2024 Redis is forked Mar 13 2024 Both pyramids are white Feb 28 2024 GGUF, the long way around Jan 15 2024 What's new with ML in production Jan 5 2024 Retro on Viberary Dec 11 2023 Why if TYPE_CHECKING? Sep 13 2023 Build and keep your context window Jul 18 2023 What we don't talk about when we talk about building AI apps Jun 29 2023 Naming things Feb 26 2023 What should you use ChatGPT for? Jan 17 2023 Welcome to the jungle, we got fun and frames Jan 10 2023 What I did in 2022 Dec 22 2022 Everything I learned about accidentally running a successful tech conference Dec 5 2022 The cloudy layers of modern-day programming Nov 18 2022 Some notes on the Stable Diffusion safety filter Nov 10 2022 How I learn machine learning Sep 10 2022 On the team as a system Jul 26 2022 How to prepare an AWS test image for PyTorch Jul 25 2022 Looking back at two years at Automattic and Tumblr Feb 21 2022 On owning a software problem Jan 9 2022 Git, SQL, CLI Jan 8 2022 Migrating to Hugo Jan 2 2022 2021 Work Recap, or the conjoined triangles of success Nov 7 2021 The programmer's brain in the lands of exploration and production Oct 28 2021 Recsys 2021 Recap Oct 10 2021 Doing small, fun projects Sep 23 2021 Reaching MLE (machine learning enlightenment) Aug 5 2021 The local minima of suckiness Jul 17 2021 Writing for distributed teams Jun 20 2021 The ritual of the deploy Jun 6 2021 The humble hash aggregate Mar 26 2021 The ghosts in the data Jun 9 2020 Getting machine learning to production Feb 25 2020 Securely storing configuration credentials in a Jupyter Notebook Feb 18 2020 Lauching a Jupyter notebook from within a virtual environment Sep 11 2019 How to make sure your question gets answered online Jul 8 2019 A deep dive on Python type hints May 10 2019 IT runs on Java 8 Apr 29 2019 Breaking down Apple's iOS Screen Time report Apr 11 2019 The attic and the basement of apps Feb 13 2019 Data science is different now Feb 10 2019 Commit to your lock-in Sep 24 2018 The Case of the Broken Lambda Sep 8 2018 On Excel and developer productivity Jul 23 2018 Good small datasets Jul 2 2018 One month with the 2017 MacBook Pro Mar 12 2018 It's still hard for beginners to get started with Python Feb 19 2018 Building a Twitter art bot with Python, AWS, and socialist realism art Jan 28 2018 Working with AWS Dec 11 2017 Data ex machina Oct 12 2017 Recent podcast and radio appearences Sep 26 2017 Alice in Python projectland Jul 20 2017 Should Spark have an API for R? Jun 19 2017 So, you want to data science Apr 20 2017 Setting up SQL for beginners is hard Mar 20 2017 Should you replace Hadoop with your laptop? Feb 22 2017 Being a woman in programming in the Soviet Union Feb 1 2017 What should you think about when using Facebook? Oct 6 2016 Strata 2016 and the rise of New Data Aug 28 2016 How to parse emails with Python Aug 24 2016 Walkthrough of Jupyter Lab Alpha Aug 19 2016 My recent experiences using Azure ML Jul 7 2016 Why doesn't MySQL have window functions? Jul 4 2016 Data strategy in 2016 Jun 23 2016 How to keep up with the data industry today? Apr 20 2016 Building presentations the hard way with reveal.js and Jupyter Apr 9 2016 Learning tech by analogy Apr 7 2016 Content is dead. Long live filler! Mar 29 2016 Starting to dig inside Spark RDDs Sep 9 2015 Let's work on the hard stuff Aug 26 2015 How non-technical teams work together Aug 24 2015 Generating fake Hacker News headlines with Python Aug 4 2015 How large should your sample size be? Jul 28 2015 Who is doing this to my internet? Jul 8 2015 Cumulative totals three different ways in data science Jun 15 2015 How many people are actually using your stuff? Jun 9 2015 Really easy data concepts that get abused all the time Jun 2 2015 Creating readable SQL. Jun 1 2015 How to get into big data May 31 2015 I'm not so sure about Tufte May 30 2015 Man, do static sites suck.