#497 — February 27, 2024 |
|
Go Weekly |
Robust Generic Functions on Slices — The core library offers some great generic functions for slices, and understanding how each functions (modifies the slice, creates a new slice, etc.) is crucial to avoiding errors, especially with some of the changes in 1.22. Some good further reading is also suggested. Valentin Deleplace (The Go Blog) |
Go 'Enums' Suck — While the title feels click-baity, and Go doesn’t have true enums, the post raises some interesting points around the use cases for enums, how the workarounds are more annoying than they could be, and offers a new approach to make things a little better. Steven McCutcheon |
Go! Unlock Your Tech Potential with Ardan Labs Consulting — Struggling with skill gaps, development speed or complex tech challenges? Ardan Labs specializes in Go, Rust, Docker and K8s to accelerate your software development, optimize architecture, and manage tech debt. Let us supercharge your team! Ardan Labs Consulting sponsor |
Solving the One Billion Rows Challenge in Go — The so-called One Billion Rows challenge aims to see how fast Java can aggregate (min, mean, and max) 1,000,000,000 values from a text file. Here, Shraddha tries it in Go, walking through each step going from a time of over 6 minutes to just 14 seconds. Shraddha Agrawal |
QUICK BITS:
|
TinyGo 0.31.0: Now with Go 1.22 Support — A small step for a version number, a giant leap for small Go-kind, as the “Go compiler for small places” gains Go 1.22 support, a macOS arm64 native binary release build, Nim flake support, and upgrades to LLVM 17. Ron Evans |
▶ A Practical Look at Building REST APIs in Go 1.22 — Building a quick REST API in just several minutes using the new Go 1.22 approach. TutorialEdge |
Add Fully-Featured Auth to Your Go App with Two Lines of Code — Easy, secure, and affordable: pick three. FusionAuth is auth built for devs, by devs. FusionAuth sponsor |
Faster Blogging with Glee: Why a Tool Shifted from Python to Go — Glee is a Lince Mathew |
🎨 Adding Color to Terminal Output in Go — Shows first without any dependencies at all, but then how fatih/color can make it tidier. Stephanie You |
🛠 Code & Tools |
gemini-cli: Access Gemini Models from the Command Line — Eli shows of a new Go-powered CLI tool he’s built for doing data analysis work with Google’s Gemini models. Eli Bendersky |
goquery: jQuery-esque HTML/DOM Manipulation Methods — A jQuery-a-like approach for working with HTML from Go. Much like jQuery itself, it’s been around for many years, but the latest release (v1.9) adds a generic Martin Angers and Contributors |
Podinfo: A Go Microservice Template for Kubernetes — A tiny Go-powered app to showcase best practices when running microservices within Kubernetes, including health checks, graceful shutdown, structured logging, ant building multi-arch container images. Stefan Prodan |
|
Risor 1.4: Embeddable Scripting for Go Apps — Risor is a fast, lightweight pure-Go scripting language targeting devops and cloud integration use cases and that interoperates with existing Go libraries (learn more here). v1.4 adds support for the Curtis Myzie |
Mailpit 1.14: Email and SMTP Testing Tool — Built in Go, Mailpit is a general email testing tool and API for all developers. You can use it to view emails “sent” through its mock SMTP server, store emails, and even relay them on. v1.14 introduces an optional POP3 server if you want to fetch the emails into a client. Ralph Slooten |
|