awesome-go
https://github.com/avelino/awesome-go
A curated list of awesome Go frameworks, libraries and software
https://github.com/avelino/awesome-go
Benchmarks and performance testing
https://www.willem.dev/articles/benchmarks-performance-testing
A big part of programming is about making choices:
- What data type do I use? A map, a slice, something more fancy?
- Do I implement this using recursion or a loop?
- Should I pass a value or a pointer?
- How to determine the best choice?
One way is to measure performance using benchmarks.
Go has built-in support for benchmarking in the testing package.
In this article you’ll see how benchmarks are structured, what to keep in mind when writing them and how to execute them.
In the end we’ll also look at a real-world inspired example repository.
https://www.willem.dev/articles/benchmarks-performance-testing
Fuzz Testing Go HTTP Services
https://packagemain.tech/p/fuzzing-http-services-golang
As a developer, you can't envision all of the possible inputs your programs or functions could receive. Even though you can define the major edge cases, you still can't predict how your program will behave in the case of some weird unexpected input. In other words, you can only find bugs you expect to find.
That's where fuzz testing or fuzzing comes to the rescue.
https://packagemain.tech/p/fuzzing-http-services-golang
Go and Postgres Listen/Notify or: How I Learned to Stop Worrying and Love PubSub
https://brojonat.com/posts/go-postgres-listen-notify
This post is going to show you how to use Listen/Notify in your Golang applications with pgx Conn.WaitForNotification
https://brojonat.com/posts/go-postgres-listen-notify
notify
https://github.com/nikoksr/notify
A dead simple Go library for sending notifications to various messaging services.
https://github.com/nikoksr/notify
asynq
https://github.com/hibiken/asynq
Asynq is a Go library for queueing tasks and processing them asynchronously with workers. It's backed by Redis and is designed to be scalable yet easy to get started.
https://github.com/hibiken/asynq
BemiDB
https://github.com/BemiHQ/BemiDB
BemiDB is a Postgres read replica optimized for analytics. It consists of a single binary that seamlessly connects to a Postgres database, replicates the data in a compressed columnar format, and allows you to run complex queries using its Postgres-compatible analytical query engine.
https://github.com/BemiHQ/BemiDB
Writing secure Go code
https://jarosz.dev/article/writing-secure-go-code
What does it mean to keep security in mind when writing Go code? Answering this question in one short article seems impossible. For this reason, we will narrow it down to a few specific practices.
https://jarosz.dev/article/writing-secure-go-code
lazyjournal
https://github.com/Lifailon/lazyjournal
TUI for journalctl, logs in the file system and docker containers for quick viewing and filtering with fuzzy find and regex support.
https://github.com/Lifailon/lazyjournal
Ranging over functions in Go 1.23
https://eli.thegreenplace.net/2024/ranging-over-functions-in-go-123
https://eli.thegreenplace.net/2024/ranging-over-functions-in-go-123
Building thread-safe abstractions in Java versus Go
https://rybicki.io/blog/2024/11/03/multithreaded-code-java-golang.html
https://rybicki.io/blog/2024/11/03/multithreaded-code-java-golang.html
Writing integration tests for a Go CLI application
https://lucapette.me/writing/writing-integration-tests-for-a-go-cli-application
https://lucapette.me/writing/writing-integration-tests-for-a-go-cli-application
How to Build Smaller Container Images: Docker Multi-Stage Builds
https://labs.iximiuz.com/tutorials/docker-multi-stage-builds
https://labs.iximiuz.com/tutorials/docker-multi-stage-builds
Why is Golang's Compilation Speed So Fast?
https://www.pixelstech.net/article/1728356198-Why-is-Golang-s-Compilation-Speed-So-Fast
https://www.pixelstech.net/article/1728356198-Why-is-Golang-s-Compilation-Speed-So-Fast
pg_flo
https://github.com/pgflo/pg_flo
The easiest way to move and transform data between PostgreSQL databases using Logical Replication.
https://github.com/pgflo/pg_flo