#​503 — April 16, 2024

Unsub  |  Web Version

If you wondered why you didn't get an issue last week, we took a (late) week off for Easter, but now we're back :-)
Your editor, Peter Cooper

Together with  WorkOS

Go Weekly

Go Performance from Version 1.0 to 1.22 — Two years ago we enjoyed the author’s Go performance analysis from Go 1.2 to 1.18. This is an update now taking things all the way through from Go 1.0 to today’s 1.22.

Ben Hoyt

📊 Results of the 2024 H1 Go Developer Survey — Developer sentiment and trust remain high, and the AI-centered survey revealed that Gophers think Go is a good language for this fresh wave of use cases. There’s a lot more room for new libraries and tools to make it easier, however, with Go equivalents of popular Python libraries being particularly desired.

The Go Team

WorkOS: Enterprise-Grade Auth for Modern SaaS Apps — WorkOS supports both the foundational auth and complex enterprise features like SSO. It provides flexible and easy-to-use APIs, helping companies like Vercel, Loom, and Webflow become Enterprise Ready. Best of all, WorkOS User Management supports up to 1 million MAUs for free.

WorkOS sponsor

Go is an Object Oriented Programming Language? — A contentious and oft-discussed topic(!), but before you dismiss it as mere clickbait, read David’s reasons on why he thinks “Go is a very object-oriented programming language. More so than Java I think…”

David Wickes


Microsoft Launches a Go Blog — More Go blogs gives us more things to link to, so congratulations to Microsoft 😆 It’s going to be oriented around the use of Go with Azure and Microsoft’s contributions to the Go ecosystem generally.

George Adams (Microsoft)

Versioning Workflows with Go — Learn when and how to apply versioning, then practice using our Go SDK in this free, hands-on training course.

Temporal Technologies sponsor

📄 Wrapping a C Library Call in a Defensive Go Routine christoofar

📄 The Fundamentals of I/O in Go: Part 2 Andrei Boar

📄 What Makes a Great Technical Blog Phil Eaton

🛠 Code & Tools

Editor's note: A very database-y vibe in this section today! 😅

go-mysql-server: A Storage Agnostic MySQL-Compatible Relational Database — A pure Go SQL engine and server that speaks the MySQL protocol and SQL dialect. You get an in-memory storage system included, but can then implement your own backends for storage or querying different data sources.


trdsql: Tool to Execute SQL Queries Upon Text-Based Data — A CLI tool that can execute SQL queries (in Postgres or MySQL syntax) on CSV, LTSV, JSON, YAML and TBLN files. It can also be used as a library within Go apps.

Noboru Saito

Redka: Redis Re-Implemented with SQLite — It’s not often you see a Go project get so many GitHub stars in just a few days, but after the latest Redis licensing debacle, there’s an appetite for alternative approaches.

Anton Zhiyanov

📰 Classifieds

GoLand 2024.1 is out! With a free locally run AI full line completion, performance and UX improvements. Check it out!

🐘 While we're on a database-themed roll, if you're a Postgres user, check out Postgres Weekly, our sister newsletter. Here's the latest issue.

Huma 2.13.0: Build APIs Backed by OpenAPI and JSON Schema — Huma is a micro-framework for creating HTTP REST or RPC APIs leveraging common standards like OpenAPI. The latest version no longer has any hard dependencies outside of the Go standard library.

Daniel Taylor

⚙️ Gorabbit – A high-level wrapper for the official Go RabbitMQ plugin. Kardinal

⚙️ mircroq – A minimal Websocket-based event broker. Chaitanya Munukutla

⚙️ go-generics-cache – In-memory key/value store/cache using generics. Kei Kamikawa

  • go-xmpp 0.2 – Go library for the XMPP messaging standard.

  • Decimal 1.4 – Arbitrary-precision fixed-point decimal numbers.

  • Wish 1.4 – Charm's tooling to make Go-powered SSH apps.

  • Echo 4.12 – High performance, minimalist Go web framework

  • Otto 0.4 – Go-powered JavaScript interpreter.

  • VHS 0.7.2 – CLI 'home video recorder'. "Write terminal GIFs as code for integration testing and demoing your CLI tools."

  • Ebiten 2.7.1 – The 2D game engine.