Unfortunately, and now even more with GenAI, a lot of Open Source boils down to doing free Labor to rich capitalists get even more rich while making sure we kill a lot of small business our professional class could have started.
Python is way more ergonomic when dealing with text than go. Go's performance advantages are basically irrelevant in an AI agent, as execution time is dominated by inference time.
Go is pretty fantastic to write agents in; it has a very good and expansive standard library and a huge mess of third-party libraries. A lot of very basic things agents tend to want to do (make HTTP requests, manage SQLite databases) are very idiomatic in Go already. It's easy to express concurrency in Go, which is nice if you're running multiple context windows and don't want to serialize your whole agent on slow model calls. It's very fast and it compiles to binaries, which, depending on how you're deploying your agent, might be a big win or might not be.
Yes and I'll add that Go routines can model task queues in Go code easily - then schedule and cancel those task reliably using context cancellation and channels. All while being executed concurrently (or in parallel).
Go is the sweet spot in expressive concurrency, a compile time type system, and a strong standard library with excellent tooling as you mentioned.
My hope is that, similar to Ruby in web development, Python's mind share in LLM coding will be siphoned to Go.
Because Go has stronger compile-time type safety than Python. And of course concurrency.
Fwiiw
I noticed that colleagues using other languages like Java and JS with Claude Code sometimes get compile errors. I never get compile errors (anymore) with Go. The language is ideal for LLMs. Cant tell how CC is doing lately for Python.
Why not Go ?
AI agents are not just scripts, they are the same as any other application that needs to scale. Java or Go, if application can perform better then it is always good to have an option.
There are Python bindings for the framework as well.
Personally I could see Go being quite nice to use if you want to deploy something as eg a compiled serverless function.
I'm assuming the framework behaves the same way regardless of language so you could test using Python first if you want and then move over to eg Go if needed.
100%, I don’t really get the justification for golang, today. But. Looking forward we can imagine a world of agents, agents everywhere , including embedded into systems that are built in go. So I guess it would be more suitable for that.
In my recollection, NYT started/popularized the whole "reportage as a interactive story with stuff moving as you scroll" on the web, but I think it was web developers wanting to emulate the Macbook/iPhone inertia scroll that started the whole "lets override scroll behaviour" trend.
The first I ever saw of it was the NYT story about the deadly avalanche at Stevens Pass in WA state. I liked it for that story but not so much for this product site.
I think that Slack may be partially responsible for that.
If I copy code from PyCharm or VS Code and paste it into fucking Microsoft Word, even spawn-of-Satan-MS-Word-for-Mac respects most of my formatting. Plenty of web text editors are also able to do that.
But Slack, "The King of Useless Features Nobody Asked For", can't bother themselves to implement such a useful feature for their primary market.
I don't care. I want LLMs to help with the boring stuff, the toil. It may not be as intelligent as Claude, but if it takes care of the boring stuff, and it is fast while doing it, I am happy.
Use it surgically, do the top-down design, and just let it fill the blanks.
Give it a crack. It took a lot of iteration for it to write decent code. If you figure out differences in prompting technique, do share. I was really hoping for the speed to improve a lot of execution - because that’s genuinely the primary problem for me. Unfortunately, speed is great but quality wasn’t great for me.
Good luck. Maybe it’ll do well in some self-directed agent loop.
reply