Changelog News
Developer news for endless flow state
Jerod again! đ
A recently published study called The Effect of Deactivating Facebook and Instagram on Usersâ Emotional State proved what we all knew to be true, but previously didnât have a study to point to: social media, at least in the form weâve been using it for the past decade plus, is a total drag.
oh well, letâs get into this weekâs news.
đ§ Fresh beats for endless flow state
Our fourth full-length Changelog Beats album dropped today! Itâs called After Party and it features beloved BMC tracks from our outros, ad rolls & transitions. Itâs basically 26 chill beats to help you get into a state of flow and stay there. đ§
And for the many, many people who have asked us to make The Changelogâs epic outro, Last Light, available to stream/buy⌠we got you! Our long-time outro is also the outro track on After Party đ
đ¤ The 12-factor Agent
Dex Horthy, who has been hacking on AI agents for awhile, set out to answer the question:
What are the principles we can use to build LLM-powered software that is actually good enough to put in the hands of production customers?
What he came up with is 12 factors, in the spirit of The Twelve-Factor App:
- Natural Language to Tool Calls
- Own your prompts
- Own your context window
- Tools are just structured outputs
- Unify execution state and business state
- Launch/Pause/Resume with simple APIs
- Contact humans with tool calls
- Own your control flow
- Compact Errors into Context Window
- Small, Focused Agents
- Trigger from anywhere, meet users where they are
- Make your agent a stateless reducer
If those 12 bullet points are more confusing than enlightening, thatâs because theyâre just bullet points! Click through for the full explainers.
đď¸ How to build an agent
Speaking of agents⌠you might now be thinking itâs super hard to build one. Thorsten Ball says you are wrong:
Itâs not that hard to build a fully functioning, code-editing agent.
It seems like it would be. When you look at an agent editing files, running commands, wriggling itself out of errors, retrying different strategies - it seems like there has to be a secret behind it.
There isnât. Itâs an LLM, a loop, and enough tokens.
Turns out you can build a âsmall and yet highly impressive agentâ in less than 400 lines of code. Thorsten proves this out by building an Anthropic-based agent in Go over the course of this blog post. I followed along and I have to say, itâs all very basic stuff. Thorstenâs closer:
These models are incredibly powerful now. 300 lines of code and three tools and now youâre to be able to talk to an alien intelligence that edits your code. If you think âwell, but we didnât reallyâŚâ â go and try it! Go and see how far you can get with this. I bet itâs a lot farther than you think.
Thatâs why we think everythingâs changing.
đ° Teams with faster builds ship faster
Thanks to Depot for sponsoring Changelog News
Depotâs CEO Kyle Galbraith recently shared his thoughts on the age-old question: âbuild or buy?â for CI/CD.
The fact is teams with faster builds ship faster and more. And teams that know how to CI well create faster builds. Imagine what would happen if your builds got 10x fasterâŚ
Kyle found that when companies talk about âbuilding their own CI,â what they actually mean is self-hosting runners from another CI provider. After analyzing hundreds of engineering teams, he identified three distinct archetypes:
First, thereâs âThe Abstraction-First Teamâ - these folks know what matters and move fast. They discover Depot and immediately think, âItâs ten times faster, half the price of GitHub Actions, and I just change one line of code? No brainer.â
Then thereâs âThe Infra-Curious Teamâ - theyâre in that honeymoon phase with self-hosting. âGitHub Actions is slow,â so they spin up their own runners in AWS. But now they own the uptime engineering, literally, and they now have to learn how to make the builds faster AND keep them secure.
These folks eventually become the last archetype, which Iâll let Kyle cover in his post. After you read that, do yourself a favor and check out Depot!
đ Pocket Flow is a 100-line LLM framework
The author of Pocket Flow, Zachary Huang, thinks current LLM frameworks (LangChain, CrewAI, LangGraph, etc) are bloated. After reading Thorsten Ballâs essay on how to build an agent, I can believe it. The 100 lines in Pocket Flow capture âthe core abstraction of LLM frameworksâ and you build on top of that to do mutli-agent, workflows, RAG, etc.
One great example of Pocket Flow in action is this repo, which âcrawls GitHub repositories and builds a knowledge base from the code. It analyzes entire codebases to identify core abstractions and how they interact, and transforms complex code into beginner-friendly tutorials with clear visualizations.â
đ´ Getting forked by Microsoft
As a sole maintainer of an open source project, Philip Laine was excited when Microsoft showed interest in Spegel, his tool designed to enhance Kubernetes cluster scalability through peer-to-peer (P2P) image distribution. But then things got⌠weird. At KubeCon Paris, Laine attended a talk about strategies to speed up image distribution that mentioned a Microsoft project called Peerd
While looking into Peerd, my enthusiasm for understanding different approaches in this problem space quickly diminished. I saw function signatures and comments that looked very familiar, as if I had written them myself. Digging deeper I found test cases referencing Spegel and my previous employer, test cases that have been taken directly from my project. References that are still present to this day. The project is a forked version of Spegel, maintained by Microsoft, but under Microsoftâs MIT license.
Spegel is also MIT licensed, which does allow for forking and modification without contributing back, but does not allow âremoving the original license and purport that the code was created by someone else.â Not cool, Microsoft. Whatâs an open source maintainer to do in this circumstance?
As an effort to fund the work on Spegel I have enabled GitHub sponsors. This experience has also made me consider changing the license of Spegel, as it seems to be the only stone I can throw.
đ§ Making DNSimple
Anthony Eden, founder of DNSimple, joins the show to talk about the world of managed hosting for DNS and more. VIDEO
đď¸ Vibing into the vibe
Nick Nisi joins us to confess his AI subscription glut, drool over some cool new hardware gadgets, discuss why the TypeScript team chose Go for their new compiler, opine on the React teamâs complicated relationship with Vercel, suggest people try Astro, update us on his browser habits, and more. VIDEO
đŹ Exmerelda is an AI chatbot just for Elixir
Exmeralda helps you ask questions about Elixir libraries and get accurate, version-specific answers. Powered by Retrieval-Augmented Generation (RAG), it combines the latest AI with real documentation to deliver helpful, grounded responses.
I donât know if RAG ultimately matters in a world of ever-expanding context windows, but I do know Iâve been asking if each programming community needs their own AI chatbot and it looks like the folks at bitcrowd decided (at least for Elixir) the answer to that question is: yes
đ Pipelining might be my favorite language feature
Pipelining, for the uninitiated, is a programming language feature that allows you to omit a single argument from your parameter list, by instead passing the previous value. I absolutely love it, and so does Mond:
If youâre writing pipelined codeâand not trying overly hard to fit everything into a single, convoluted, nested pipelineâthen your functions will naturally split up into a few pipeline chunks.
Each chunk starts with a piece of âmain dataâ that travels on a conveyer belt, where every line performs exactly one action to transform it. Finally, a single value comes out at the end and gets its own name, so that it may be used later.
And that isâin my humble opinionâexactly how it should be. Neat, convenient, separated âchunksâ, each of which can easily be understood in its own right.
đźď¸ Awesome collection of GPT-4o images & prompts
Yâall know how impressed Iâve been by OpenAIâs latest image generation efforts. As we all know, you can use it to do a whole lot more than turn people into walruses (or my preferred pluralization: walri). The linked repo has tons of cool ideas with accompanying prompts to help bring them into the world. I used this one to create playing cards of Adam, Nick, and myself from this weekâs Friends recording. Nickâs was generated last, so it had already started to lose the thread đ¤Ł
đ Donât forget your (un)ordered list
- Charts.css
- Replacing CVE
- OpenAI Codex CLI
- Pythonâs new t-strings
- The best programmers
- Impact, agency, and taste
- Jellyfin as a Spotify alternative
- The humanity in each line of code
- So you want to use Object Storage
- A security scanner for MCP servers
- Hacking the Postgres wire protocol
- But what if I really want a faster horse?
- PiLiDAR - DIY 360° 3D Panorama Scanner
- Bookmarking and snapshotting websites made easy
- Deep sea craft filmed unprecedented footage of a colossal squid
Thatâs the news for now, but we have some great episodes coming up this week:
- Wednesday: Kendall Miller from CTO Lunches
- Friday: Mat Ryer takes us to Matworld
Have a great week, forward this to a friend who might dig it & Iâll talk to you again real soon. đ
âJerod