100-go-mistakes
📖 100 Go Mistakes and How to Avoid Them (by teivah)
go-multierror
A Go (golang) package for representing a list of errors as a single error. (by hashicorp)
100-go-mistakes | go-multierror | |
---|---|---|
11 | 16 | |
6,305 | 2,184 | |
- | 0.8% | |
9.0 | 4.6 | |
about 1 month ago | 5 days ago | |
Go | Go | |
GNU General Public License v3.0 or later | Mozilla Public License 2.0 |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
100-go-mistakes
Posts with mentions or reviews of 100-go-mistakes.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-06-06.
-
Is there a good place to find best practices?
I usually see and recommend: https://go.dev/talks/2013/bestpractices.slide#1 https://go.dev/talks/2014/readability.slide#1 https://github.com/golang/go/wiki/CodeReviewComments https://about.sourcegraph.com/blog/go/idiomatic-go https://github.com/teivah/100-go-mistakes
-
🧠Cognitive Load Developer's Handbook
Yep and ~15 (depending on how you look at it) of the 100 Go Mistakes and How to Avoid Them related to channels and wait groups.
- How to get better on golang
- Which books should I read as an experienced Go developer?
-
Resources for an experienced programmer wanting to learn Go
I would also recommend this book https://github.com/teivah/100-go-mistakes
-
Golang interview prep
https://github.com/teivah/100-go-mistakes if it helps
-
New to go, what are the best practices?
In addition to the other recommendations, I highly recommend this book about common Go mistakes and idiomatic ways on how to avoid them.
-
Where can I find today's version of "Effective Go" article and catch up on best practices?
I've started reading this book and I think it's pretty great and up to date. There is even a content summary on GitHub, so you can check if you would like it.
- Performance Impact of Maps Compared to Slices
-
📖 100 Go Mistakes: Released!
In the meantime, I've prepared a GitHub repo containing the source code and a summary of each mistake described in the book: https://github.com/teivah/100-go-mistakes. I also have in mind this it could become a collaborative place where people could contribute and propose common mistakes; let's see if that works out.
go-multierror
Posts with mentions or reviews of go-multierror.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-05-18.
-
In what ways are channels are better than the traditional await?
Some packages offer utilities to gather results from goroutines, such as multierror.Group or parallel.Map in samber/lo.
-
ResultGroup: Go lib for concurrent tasks & errors management
I've created a simple Go library for managing concurrent tasks, results, and errors. Inspired by HashiCorp's go-multierror, it simplifies running goroutines, collecting results, and error handling by minimizing boilerplate code.
-
Valgo is a type-safe, expressive, and extensible validator library for Golang.
This looks great and can be integrated into ORM. What about adopting go-multierror?
- Multiple error wrapping is coming in Go 1.20
- mdobak/go-xerrors: Yet another error handling library.
-
Multiple error handling in Go
Unlike errgroup, github.com/hashicorp/go-multierror cannot be interrupted by context. However, it is useful for use cases where you need to check all errors and handle them carefully, because you can keep all errors.
- A simple and easy-to-use batch error implementation.
- Better error handling in Golang: Theory and practical tips
-
SimpleFlow - Simplified generic workflows and concurrency patterns
I found that it was also useful to introduce https://github.com/hashicorp/go-multierror so if one or more single work items returns an error, we can also batch the errors as a single thing.
- If you absolutely must create a generic Optional…
What are some alternatives?
When comparing 100-go-mistakes and go-multierror you can also consider the following projects:
go - The Go programming language
multierr - Combine one or more Go errors together
cognitive-load - 🧠Cognitive Load In Software Development
errors - Simple error handling primitives
linters - a community wiki for improving code quality
go-chat-bot - IRC, Slack, Telegram and RocketChat bot written in go
gobyexample - Go by Example
conv - Fast conversions across various Go types with a simple API.
gurl
errorx - A comprehensive error handling library for Go
go101 - An up-to-date (unofficial) knowledge base for Go programming self learning
werr
100-go-mistakes vs go
go-multierror vs multierr
100-go-mistakes vs cognitive-load
go-multierror vs errors
100-go-mistakes vs linters
go-multierror vs go-chat-bot
100-go-mistakes vs gobyexample
go-multierror vs conv
100-go-mistakes vs gurl
go-multierror vs errorx
100-go-mistakes vs go101
go-multierror vs werr