12 Personal Go Tricks That Transformed My Productivity
https://blog.devtrovert.com/p/12-personal-go-tricks-that-transformed
You may not have seen these techniques before, as I specifically developed them for my team’s use.
https://blog.devtrovert.com/p/12-personal-go-tricks-that-transformed
ergo
https://github.com/ergochat/ergo
Ergo (formerly known as Oragono) is a modern IRC server written in Go.
https://github.com/ergochat/ergo
prest
https://github.com/prest/prest
pREST (PostgreSQL REST), is a simple production-ready API, that delivers a instant, realtime, and high-performance application on top of your existing or new Postgres database.
https://github.com/prest/prest
prisma-client-go
https://github.com/steebchen/prisma-client-go
Prisma Client Go is an auto-generated query builder that enables type-safe database access and reduces boilerplate. You can use it as an alternative to traditional ORMs such as gorm, xorm, sqlboiler and most database-specific tools.
https://github.com/steebchen/prisma-client-go
orchestra
https://github.com/stephenafamo/orchestra
Orchestra is a library to manage long running go processes.
https://github.com/stephenafamo/orchestra
Python is Easy. Go is Simple. Simple != Easy
https://preslav.me/2023/11/27/python-is-easy-golang-is-simple-simple-is-not-easy
Python and Go have distinct qualities that can complement each other.
https://preslav.me/2023/11/27/python-is-easy-golang-is-simple-simple-is-not-easy
Demystifying function parameters in Go
https://www.alexedwards.net/blog/demystifying-function-parameters-in-go
In this post we're going to talk about how (and why!) different types of function parameters behave differently in Go.
If you're new (or even not-so-new) to Go, this can be a common source of confusion and questions. Why do functions generally mutate maps and slices, but not other data types? Why isn't my slice being mutated when I append to it in a function? Why doesn't assigning a new value to a pointer parameter have any effect outside the function?
Once you understand how functions and the different Go types work, the answers to these kind of questions becomes clearer. You'll discover that Go's behavior consistently follows a few fairly straightforward rules, which I'll aim to highlight in this post.
https://www.alexedwards.net/blog/demystifying-function-parameters-in-go
etcd and concurrency stm
https://george.macro.re/posts/etcd-and-concurrency-stm
This blog post explores a little bit of raft, etcd, Go and the horrible rakes we walked into during my time at InfluxData. After taking some time to better understand some of the core concepts under etcd, I think I've finally got my head around an issue I opened that never got any attention, but that sat in my subconscious unsolved (at-least from my own understanding perspective).
https://george.macro.re/posts/etcd-and-concurrency-stm
Go Fact: Zero-sized Field at the Rear of a Struct Has Non-zero Size
https://i.hsfzxjy.site/zst-at-the-rear-of-go-struct
https://i.hsfzxjy.site/zst-at-the-rear-of-go-struct
htmx-go
https://github.com/angelofallars/htmx-go
htmx-go is a type-safe library for working with HTMX in Go.
https://github.com/angelofallars/htmx-go
sdns
https://github.com/semihalev/sdns
A high-performance, recursive DNS resolver server with DNSSEC support, focused on preserving privacy.
https://github.com/semihalev/sdns
mpb
https://github.com/vbauerster/mpb
mpb is a Go lib for rendering progress bars in terminal applications.
https://github.com/vbauerster/mpb
Optimizing Go string operations with practical examples
https://medium.com/@ozoniuss/optimizing-go-string-operations-with-practical-examples-83df39b776fb
https://medium.com/@ozoniuss/optimizing-go-string-operations-with-practical-examples-83df39b776fb
Why Are Golang Heaps So Complicated
https://www.dolthub.com/blog/2023-12-01-why-are-go-heaps-confusing
https://www.dolthub.com/blog/2023-12-01-why-are-go-heaps-confusing