I wrote a new article about why I think Go deserves a much bigger place in production GenAI systems, especially when combined with Genkit Go.
Python is still amazing for research, notebooks, experimentation, and the ML ecosystem. But a lot of GenAI applications today are not really “AI code”; they are backend services that call models, orchestrate tools, stream responses, validate structured output, expose APIs, and need to scale reliably.
That is where Go becomes very interesting.
In the article, I talk about the pain points I keep seeing with Python in production AI services: concurrency complexity, cold starts, memory footprint, dependency management, weak typing, packaging, and deployment friction. Then I show how Genkit Go gives you a cleaner model for building AI backends with typed flows, structured outputs, HTTP endpoints, observability, and the Genkit Developer UI.
The post also includes a hands-on example where we build a complete Genkit Go service in a single main.go, expose it as an HTTP endpoint, test it visually, and deploy it as a small containerized binary.
I know the title is intentionally provocative, but the point is not “Python is bad.” The point is that Python should not be the default runtime for every production GenAI service.
Curious to hear what people think: are you still building most of your AI backends in Python, or are you moving some of that work to Go, Java, or TypeScript?
Article:
