35+ atomic skills covering all aspects of the language (conventions, common errors, top libraries, testing, benchmarks, performance, troubleshooting, etc.).
Benchmarks I ran on Opus 4.6 show a 43% reduction in Go errors and bad practices.
What makes sense depends on the agreement of the programming team.
And the smallest possible team is the programmer and their future self.
Even then the hard thing is to predict what will be better for our future selves. Maybe we will be rusty in our Go skills or maybe we will have embraced idiomatic Go, and the approach that makes sense now will require our future self to puzzle through the code.
Of course maybe we will have kept programming the same way because it still feels like the better way and our future self will be efficient. But again that's only for the smallest possible team. If the team expands, then all bets are off.
After 2y in beta, I’ve just released v2 of “do”, the dependency injection toolkit for Golang.
This major version introduces a new scope-based architecture, transient services, interface binding, improved dependency tracking, and circular dependency detection.
Error handling and service naming are more consistent, and based on your feedback, a troubleshooting UI has been added.
A new LLM-ready documentation is available, featuring numerous demos you can run in 1 click: https://do.samber.dev/
Elasticsearch is a good bet, if you need to use multiple filters with your queries, and when you grow above the acceptable size of an in-memory database.
1. It's single node, but DataFusion parallelizes query execution across multiple cores. We do have plans for a distributed architecture, but we've found that you can get ~very~ far just by scaling up a single Postgres node.
2. The only information stored in Postgres are the options passed into the foreign data wrapper and the schema of the foreign table (this is standard for all Postgres foreign data wrappers).
Benchmarks I ran on Opus 4.6 show a 43% reduction in Go errors and bad practices.
Install with: npx skills add -g https://github.com/samber/cc-skills-golang --skill '*'
reply