Year in Review: 2025
This year was another year of wild change in technology and software engineering. It felt like the year flew by yet so much happened during it.
This year was another year of wild change in technology and software engineering. It felt like the year flew by yet so much happened during it.
Working with coding agents has been a dance of context management. These days, if an agent loop isn't producing the result I want, it's more often than not a problem of context rather than a shortcoming of the language model or agent scaffold/harness.
Have you ever observed someone try and demonstrate how they use a coding agent? The presenter will usually introduce the concept of an agent, discuss the idea of a software harness wrapping a language model, and then will show an example of how it works.
About a year and a half ago I wrote about using sqlite-vss to store and query embedding vectors in a SQLite database. Much has changed since then and I'm working on a project that motivated another pass at querying embeddings on a local system for smallish datasets. The sqlite-vector project seemed...
As I've experimented more with DSPy, I've attempted to dig further into the details of the specific LLM I am using to better understand things like token usage, reasoning, and the specific prompts being sent to the model. While, DSPy's abstraction is one of the more lightweight for LLM frameworks,...
The viral "how many r's are there in the word 'strawberry'?" problem is a great motivating example to experiment with the capabilities of DSPy, an increasingly popular, powerful library for running inference with language models. While the counting letters problem itself is a poor application of a...
I was not planning on writing about this but after reading Sascha's post, I decided it could be interesting because his demonstration on what it takes to build knowledge happened to relate to prompting a language model for a fitness routine: This drives us to one of the most important conclusions...
Claude Code supports custom slash commands. Custom slash commands allow you to define frequently-used prompts as Markdown files that Claude Code can execute. Commands are organized by scope (project-specific or personal) and support namespacing through directory structures.
The .env file and the python-dotenv package are popular conventions in Python for managing environment variables. I often forget or pause when trying to remember exactly which package I need to install (python-dotenv) and how to do the import
When Datadog's magic breaks your API calls
Why I like the Chat Completions API