#512 — June 25, 2024 |
✈️ I've produced this issue a day early due to being en-route to the AI Engineer World's Fair, so any last minute news may be missed. If you're there, come and say hi, but you can also watch from afar through the livestreams that will be on YouTube this Wednesday and Thursday. See you again next week! |
|
Go Weekly |
Three Ways to Think About Channels — Channels seem trivial on the surface, but actually using them requires an understanding of Go's entire concurrency ecosystem. With such an understanding, you can pick the right primitives for your use case and not end up trapped in a world of deadlocks. Max Hoffman (DoltHub) |
Go 1.23 Release Candidate 1 Released — A simple announcement for the first release candidate of the upcoming, and rather exciting, 1.23 release. Perhaps more usefully, the draft Go 1.23 release notes have been fleshed out a bit more. The Go Team |
Master the Basics of Go — Join Maximiliano Firtman for this detailed video course covering the fundamentals of all things Go. You'll gain a thorough understanding of structures, goroutines, channels, async API calls, and much much more. Frontend Masters sponsor |
Making a Regex Engine from Scratch in Go — Over eleven posts, Lewis walks through the fundamentals of working with regular expressions without leaning on any existing regex engines, complete with helpful visualizations and examples. Lewis Metcalf |
▶ How Things Get Done on the Go Team — Go Time’s host Angelica was joined by Cameron Balahan, Sameer Ajmani and Russ Cox from the Go team to discuss how things get done on the Go team and how they decide what to improve. (63 minutes.) Go Time Podcast podcast |
How to Sign, Notarize and Staple a Go App for Outside Mac App Store Distribution — A quick guide to the hoops you need to jump through to signing and notarizing a Go app in such a way that it can run on other people’s Macs without lots of scary messages. Rubi Jihantoro |
A Pragmatic Guide to Go Module Updates — “I thought I would share some quick bits about how to do Carlos Becker |
Shameless Green: TDD in Go — The latest in a series of posts on test-driven development in Go. John Arundel |
|
📄 Rust's Concurrency Model vs Go's: Stackless vs Stackful Coroutines Sylvain Kerkour 📄 On Testing Go Code using the Standard Library Henrique Vicente 📄 Seven Common Interface Mistakes in Go Andrei Boar |
🛠 Code & Tools |
Walk: A Terminal-Based File Manager — “Why another terminal navigator? I wanted something simple and minimalistic. Something to help me with faster navigation in the filesystem; a Anton Medvedev |
Bleve: A Modern Text Indexing Library — Bleve has been around for many years and is a well used, mature library, but it now has support for vectors too (as are increasingly becoming important, nowadays). bleve |
Stop Worrying About Your Auth. Let FusionAuth Handle It — Flexible deployment. Advanced features like MFA, SSO, and more. Check out the Go SDK. FusionAuth sponsor |
Caesar: A New Go Web Framework Inspired by Traditional Frameworks — Where ‘traditional’ means things like Rails, Laravel or Django. Caesar takes their focus on solid tooling and conventions and brings it into the Go realm. Valyent et al. |
gomplate 4.0: A Flexible CLI Tool for Template Rendering — A template renderer that supports a wide array of sources, such as JSON, YAML, AWS EC2 metadata, Hashicorp Consul and Hashicorp Vault secrets. Worth looking at the examples in the README. Dave Henderson |
|