Changelog News
Developer news worth prematurely optimizing
Jerod here! đ
Security researchers have discovered a way hackers might weaponize GitHub Copilot and Cursor to insert malicious code that might bypass typical code reviews, calling it âvirtually invisible to developers and security teams.â So, your most trusted coding assistant could also be an unwitting accomplice to some particularly gnarly attacks. Is it time to update the old adage?
âKeep your friends close, and your enemies closer, but your AIs closest.â
Ok, letâs get into the news.
đ§ The era of durable execution
Stephan Ewen, Founder and CEO of Restate.dev joins the show to talk about the coming era of resilient apps, the meaning of and what it takes to achieve idempotency, this world of stateful durable execution functions, and when it makes sense to reach for this tech. VIDEO
đĽ Googleâs new protocol has AI agents talkinâ
If our agentic future is to someday arrive, weâre gonna need a way for my agent to call your agent (so we can do lunch). Google thinks they developed a good way of achieving that with their A2A protocol:
a collaborative way to help agents across different ecosystems communicate with each other. Google is driving this open protocol initiative for the industry because we believe this protocol will be critical to support multi-agent communication by giving your agents a common language â irrespective of the framework or vendor they are built on.
They have âmore than 50 technology partnersâ agreeing to work together to further develop the protocol, and they see it as complementary to MCP, not in competition with it. According to Google, MCP âprovides helpful tools and context to agentsâ while A2A âempowers developers to build agents capable of connecting with any other agent.â
That being said, Anthropic is not listed as a technology partner and I canât help but think thereâll be quite a bit of overlap between the two protocols as things progress.
đ Datastar - The hypermedia framework
If Alpine.js (frontend reactivity) and htmx (backend reactivity) had a love child, Datastar might be it.
Include Datastar with a single 14.5 KiB file and start adding reactivity to your frontend immediately. Write your backend in the language of your choice! Official SDKs are available to help you get up and running even faster, or you can send SSE events directly from your backend.
The backend SDKs must implement Datastarâs SSE protocol, which looks simple enough. This is an impressive effort, at first brush. The only thing I canât find is evidence of Datastar being used in production anywhere. Maybe I missed it? The team has confidence in the framework, thoughâŚ
Weâre so confident that Datastar can be used as a JavaScript framework replacement that we challenge anyone to find a use-case for a web app that Datastar cannot be used to build!
đĽ The best programmers I know
Matthias Endler takes a crack at answering a similar question to the one I posed to Justin Searls on a recent Friends:
I have met a lot of developers in my life. Lately, I asked myself: âWhat does it take to be one of the best? What do they all have in common?â
Hereâs a sampling of Matthiasâ list of things great devs do, cherry-picked for the ones I agree with most:
- Read the Reference
- Break Down Problems
- Never Stop Learning
- Have Patience
- Keep it Simple
Matthiasâ âpatienceâ section most closely aligns with the one thing that Justin and I both agreed is compulsory to becoming a good developer: perseverance
đ° Retoolâs Q1 2025 release
Thanks to Retool for sponsoring Changelog News
The latest release from Retool includes over 100 improvements. If youâre on-prem, upgrade to 3.148. For everyone else, create a free account or login.
Here are 5 standout features that directly address frequent requests from customers deploying Retool.
- Multipage apps are now the default building experience, giving you a better foundation for complex applications. Multipage apps are apps that consolidate several separate apps into a single, more maintainable application. Defaulting to this architecture delivers 27% faster load times on average.
- Confirming production-readiness gets easier thanks to enterprise deployment controls that enable structured governance, collaboration, and testing for secure, reliable app releases.
- Multi-instance releases is now in private beta. A simple manifest file designates consistent app version releases across multiple environments, enabling structured promotion from dev to production.
- Usage Analytics has beeb enhanced. A redesigned dashboard provides tab-based views and granular insights into user engagement across your entire deployment.
- Workflows are the next big thing. They let you create multistep functions with execution control and AI logic that can connect to dozens of databases, third-party services and APIs â and ship it all in a single click.
Check out the detailed release notes to learn more.
đ¨ Linus Torvalds built Git in 10 days
As if it werenât already impressive⌠TIL the initial version of Git was hammered out in a mere 10 days back in April, 2005. Itâs also interesting to note that Linuxâs success wasnât enough to rid Linus of his imposter syndrome:
that while heâs proud of having created Linux, what makes him âhappy about Git is not that itâs taken over the world. Itâs that we all have self-doubt, right? We all think, âAre we actually any good?â And one of the self-doubts I had with Linux was it was just a reimplementation of Unix, right? Can I give you something that isnât just a better version of something else? Git proved to me that I can. Having two projects that made a big splash means that Iâm not a one-trick pony.â
This post by Steven Vaughan-Nichols is a great little peak into the history of Git to celebrate its 20-year anniversary. My only gripe is that the âWhy has Git been so successful?â section doesnât even mention the impact that GitHub had on Gitâs adoption. Before GitHub, it wasnât clear if Mercurial or Git would be the communityâs DVCS of choice. After GitHub⌠well, weâre living in it.
đ§ A simple CLI to help remember commands
Zev is a python-based CLI tool that helps you remember (or discover) terminal commands using natural language. For example, you might type out:
âshow all files in this directory w/ human readable sizesâ
And Zev will present you with 3 options:
- ls -lh
- du -sh *
- find . -maxdepth 1 -type f -exec ls -lh {} +
You can then select the one you want to use and copy it to your clipboard for pasting. How does it achieve this magic? With the OpenAI API, whatâd you expect!? You can also point it at Ollama, so thatâs nice.
đď¸ Proud pod parents
Richard Moot joins us to discuss Changelog helping Square launch a developer pod and the excitement around MCP (Model Context Protocol) servers. What might it foretell about the future of human/robot relations? VIDEO
đ˘ Atuin Scripts: shareable, syncable shell snippets
Ellie Huxtable:
Your shell history holds a record of your most useful, time-saving, and obscure one-liners. Atuin already makes them easier to search and recall, but theyâre still hard to reuse or share cleanly. With Atuin Scripts, that changes.
You can now turn any shell command (or series of commands) into a reusable, synced, and shareable script.
đ¨ A gallery of awesome 404 page designs
Every website needs a 404 âpage not foundâ design. The cooler, the better. Ours is kinda cool, it embeds a random clip for you to watch as a little apology for not finding what you wanted to. But sometimes you just canât think of something cool to do. Well, bookmark this awesome gallery of cool 404 designs for a rainy day.
đ° Depot + Tailscale
Thanks to Depot for sponsoring Changelog News
Depot just announced their integration with Tailscale. , solving one of the most persistent challenges for DevOps teams using ephemeral CI/CD environments.
Starting today, you can connect Depotâs GitHub Actions runners and container builders directly to your Tailscale tailnet, enabling secure access to private services without exposing them to the public internet or maintaining static IP allow lists. This integration leverages Tailscaleâs identity-first connectivity model, with Depot runners joining your tailnet as ephemeral nodes that you can control through familiar Tailscale ACLs.
Setting up the integration is straightforward with a simple three-step process:
- Create a tag for your Depot runners in your Tailnet ACLs
- Generate OAuth client credentials using this tag
- Configure your Depot organization with these credentials.
Once connected, your Depot workflows can securely access databases, services in private VPCs, and even on-premise networks through subnet routersâall while maintaining strict access controls.
Check out the full announcement and join Depotâs Discord community if you have questions.
đľď¸ Git blame for file trees
git-who is a CLI for answering the eternal question: âWho wrote this code?!â, but it works differently than git-blame.
Unlike git-blame, which can tell you who wrote a line of code, git-who tells you the people responsible for entire components or subsystems in a codebase. You can think of git-who sort of like git-blame but for file trees rather than individual files.
đ Donât forget your (un)ordered list
- Apache ECharts
- Less htmx is more
- AI 2027: Responses
- SQLite File Format Viewer
- Everything wrong with MCP
- A collection of AI system prompts
- Be the node you want to see in the network
- An Ars Technica history of the Internet, part 1
- Four Builds: a balance between quality and joy
- smartfunc: Turn docstrings into LLM-functions
- Ironwood: The first Google TPU for the age of inference
- How I built Videocrawlâs screenshot feature with Claude
- Easily preview your websiteâs OG image, meta tags, favicon, more
- Googleâs Firebase Studio: a full-stack AI app builder in your browser
đ The Developerâs Dictionary
If it ainât measured in microseconds, it ainât optimized yet đ¤
Thatâs the news for now, but we have some great episodes coming up this week:
- Wednesday: Anthony Eden, founder of DNSimple
- Friday: Nick Nisi, founder the Unofficial TypeScript Fan Club
Have a great week, forward this to a friend who might dig it & Iâll talk to you again real soon. đ
âJerod