🇺🇦 #​409 — April 29, 2022 |
Unsubscribe  |  Read on the Web |
The Go Weekly Newsletter |
'Crimes' with Go Generics — Many Go developers have warned there’s likely a period of churn and trial and error as everyone learns when and, importantly, when not to use generics. This post playfully focuses on the latter and on bad ideas which, perhaps, can help you refine your own attitudes to them. Xe Iaso |
Shaving 40% Off Google’s B-Tree Implementation with Generics — We’ve seen articles saying generics can hurt performance, but here’s a case showing a sizeable performance gain in many different categories: user time, heap allocations, GC pressure, and CPU utilization. Replacing interfaces with generics had more effect here than you might imagine. Michal Matczuk (ScylladDB) |
Gophers - Opportunity is Knocking — We’re a premier software engineering firm looking for mid to senior level engineers to help us develop advanced software solutions and applications in Go. Got at least 1 year of professional Go experience and located in the Americas or Western Europe? We want to hear from you. Ardan Labs sponsor |
Writing Effective Go Fuzz Tests — We learnt in last week’s Go survey results that 73% of Go developers have yet to try fuzzing. If that includes you, this post tries to sell you on the idea. Everest Munro-Zeisberger |
Ebiten 2.3: The 2D Game Library for Go — It’s been at least a few issues since we’ve mentioned Ebiten, the fantastic 2D game library. This new release supports DirectX on Windows, native compiling for the Nintendo Switch(!), vibration support, and more. Hajime Hoshi |
Quick bits:
|
|
Taming SQL and ORMs with André Eriksson |
Testing and Running Go API Gateway Lambdas Locally — Go is a great match for serverless functions but locally testing things can be tricky – here’s one approach. Ben Boyter |
▶  Analyzing Static Analysis with Matan Peled — One of the more technical Go Time episodes covering PhD research on meta programming and static analyzers and how Go’s measures up. Go Time Podcast podcast |
Go, Generics, and Concurrency — Using generics to implement a type-safe and reusable implementation of an Jon Bodner |
Validating HTTP JSON Requests in Go
|
đź› Code & Tools |
Caddy 2.5: Popular Go-Powered Web Server with Automatic HTTPS — It seems whenever anyone becomes a Caddy user, they rave about it everywhere online, but automatic TLS is pretty cool to be fair.. v2.5 adds support for dynamic upstreams, OpenTelemetry integration, and Tailscale support if you’re using it. Caddy Team |
go-cmp: Package for Comparing Go Values in Tests — “intended to be a more powerful and safer alternative to Google (but not officially) |
Project Management for Today's (and Tomorrow's) Software Teams Shortcut (formerly Clubhouse.io) sponsor |
go-toml 2.0: Go Library for the TOML Format — TOML is a configuration file format invented by one of GitHub’s founders. Here’s what it looks like. Thomas Pelletier |
Blush: It's 'grep', But With Colors — A command-line utility that allows you to specify the colors of each match. Arsham Shirvani |
ZenQ: A Thread-Safe Queue Faster Than Native Channels — If speed is all you need… Anish Mukherjee |