Golang Weekly - The best of the Go newsletter in 2023

Plus we're back in three weeks. |

#​489 — December 19, 2023

Unsub  |  Web Version

Together with  Ardan Labs

Go Weekly

The Best of the Go Newsletter in 2023

Welcome to the final issue of 2023! We'll be back on Tuesday, January 9, but before that, we want to take a look back at the most popular items of the year, plus a few bonuses for good measure, and we hope you have a great holiday season!
____
Peter Cooper, your editor

Rust vs Go: A Hands-On Comparison — Despite a large number of differences, Rust and Go are frequently compared, often controversially. Someone who is predominantly a Rust developer had another go at the topic by focusing specifically on the practicalities of building a small HTTP service in both languages. It’s not perfect, but fair overall.

Matthias Endler (Shuttle)

Articles comparing Go and Rust were particularly popular this year:

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

Experimenting with Project Templates — The theme of starting a project continues with a look at the Go team's unveiling of a new experimental tool for creating new projects in Go from predefined templates – something they are continuing to develop into 2024.

Cameron Balahan (Go Team)

How to Start a Go Project in 2023 — The same author wrote a similar piece in 2018 but quite a bit has changed since. While this is aimed at newer Gophers, old hats will likely find a takeaway. “Older guides will mention setting up your $GOPATH. This is something you can comfortably ignore in 2023.”

Ben E. C. Boyter

Organizing a Go Module — It’s common for Go developers to think about how to organize the files and directories in a typical Go project (indeed, the latest Go survey featured this as a main concern of Go devs). The Go project has, however, tended to let the community figure out best practices in this area but it was nice to see them publish something more official.

The Go Team

What’s New in Go 1.20 — This first in a three-part series discussed tweaks to core language features, like interfaces, generics, unsafe, as well as a new slice to array conversion technique. Carl delivered on his promise to write a whole series, too, with part two covering major standard library changes and part three covering the more minor changes there.

Carl M. Johnson

Other new or forthcoming ideas: As well as landing new features in both Go 1.20 and 1.21, both released this year, a variety of proposals and ideas were discussed too including adding coroutines to Go, a big encoding/json update, the future of for loops in Go 1.22, enhanced ServeMux routing and, less seriously, adding a quirky alternate file extension for Go source files.

Implementing a Distributed Key-Value Store in Go — Phil spent months getting up to speed with the Raft consensus algorithm and went into some depth on using it with Go as the core basis for a distributed key-value store.

Phil Eaton

The Smallest Go Binary - 5KB? — I thought this seemed silly at first, especially as it was dated April 1st, but the author had an interesting use case: they wanted to use Go’s assembler but not Go’s runtime..

Over Engineered

🛠 Code & Tools

Conc: Better Structured Concurrency for Go — Go’s concurrency story is good but Conc aims to make it even safer and easier by providing abstractions for various concepts (think pools, concurrent mapping and iteration, and panic catching) and techniques so that goroutine leaks and unhandled panics can become a thing of the past.

Sourcegraph

The Go Libraries That Never Failed Us: 22 Libraries You Need to Know — While there are other lists out there (Awesome Go, for example), this one is tightly curated and only includes libraries they’ve used in production.

Robert Laszczak (Three Dots Labs)

Got Pair-Phobia? Tuple May Change Your Mind — We won't be a 3rd wheel on your 1st pairing date! We get out of the way so pairing magic happens. Free 14-day trial.

Tuple sponsor

Service Weaver: Google's Framework for Writing Distributed Go Apps — A framework from Google that lets you “write your (Go) application as a modular monolith and deploy it as a set of microservices” to get the best of both worlds, namely: “the development velocity of a monolith, with the scalability, security, and fault-tolerance of microservices.” If you fancy something more technical and less salesy, Robert Grandl has a quick introduction here.

Google Open Source

River: A Fast, Robust Job Queue for Go and Postgres — Introduced just last month, River is an open-source job queue “for building fast, airtight applications” that’s written in Go and takes advantage of generics.

Brandur Leach

betteralign: Make Your Go Programs Use Less Memory.. Maybe — A tool to detect structs that would use less memory if their fields were sorted and to then, optionally, sort such fields.

Dinko Korunic

NilAway: Practical Nil Panic Detection — Nil panics are a common and hard-to-detect issue, but Uber has created a static analysis tool (based on a similar tool from the Java world) that’s easy to setup and integrate with build tools.

Uber

📰 Classifieds

💻 Hired makes job hunting easy-instead of chasing recruiters, companies approach you with salary details up front. Create a free profile now.


📅 GopherCon Europe is taking place next February and June in Athens, Greece and Berlin, Germany respectively. Ardan Labs is also running some Go workshops at the event in Greece next February.


🐘 PostgreSQL user? Head over to our sister newsletter Postgres Weekly for the latest from the Postgres world every week.

📺 The Top Video

▶  Ten Things I Hate About Go — It seems odd to end on a negative note, but this was the video that got the most clicks! These sorts of things are always popular, for obvious reasons, but Jonathan clearly put some thought into his choices and demonstrated the issues in detail. He also admits to being a big fan of Go, as proven in his ▶️ 10 Reasons I Like the Go Programming Language! The rest of his channel is also worth a browse.

Jonathan Hall (Boldly Go)

n

Older messages

Python and PHP are Go's newest friends

Tuesday, December 12, 2023

Plus CGO-less SQLite in Go hits 1.0, and 179 handy Go tool recipes. | #​488 — December 12, 2023 Unsub | Web Version 🎄 We're prepping our annual roundup issue for next week, just before we take our

Using Go to build a WASM-powered 'static' site

Tuesday, December 5, 2023

Plus Ebitengine turns ten, an alternative to stack traces, and it's Advent of Code time again. | #​487 — December 5, 2023 Unsub | Web Version Together with Fusion Auth Go Weekly errtrace: An

🥶 Like me, Go 1.22 is now frozen

Tuesday, November 28, 2023

Plus a possible symbiosis of Go and Python, and generating fake data from here to devternity. | #​486 — November 28, 2023 Unsub | Web Version Together with Ardan Labs Go Weekly GoFakeIt 6.25.0: A

There's no nil to panic

Tuesday, November 21, 2023

Plus a dozen Go tricks and treats. | #​485 — November 21, 2023 Unsub | Web Version Together with Ardan Labs Go Weekly River: A Fast, Robust Job Queue for Go + Postgres — A new beta, open-source job

Happy birthday to Go

Tuesday, November 14, 2023

Plus backgammon, guitar effect pedals, and identifying CPUs. | #​484 — November 14, 2023 Unsub | Web Version Together with Speakeasy logo Go Weekly Fourteen Years of Go — Russ recaps a productive year

You Might Also Like

Ranked | The World's Top 20 Economies by GDP Growth (2015-2025) 📊

Tuesday, March 4, 2025

Halfway through the 2020s, here's a report card on the top 20 economies and their progress since 2015. View Online | Subscribe | Download Our App Presented by Hinrich Foundation NEW REPORT:

Open Source Isnt Dead...Its Just Forked

Tuesday, March 4, 2025

Top Tech Content sent at Noon! Augment Code: Developer AI for real eng work. Start for free Read this email in your browser How are you, @newsletterest1? 🪐 What's happening in tech today, March 4,

LW 172 - How to Make Compare at Pricing Show at Checkout    

Tuesday, March 4, 2025

How to Make Compare at Pricing Show at Checkout ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ Shopify Development news and articles Issue 172 -

Issue 165

Tuesday, March 4, 2025

💻🖱️ A single click destroyed this man's entire life. Fake murders get millions of YouTube views. Zuckerberg can now read your silent thoughts. ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

This top multitool is under $30

Tuesday, March 4, 2025

Thinnest phone ever?📱; ArcoPlasma; Siri alternatives 🗣️ -- ZDNET ZDNET Tech Today - US March 4, 2025 GOTRAX 4 electric scooter I finally found a high-quality multitool for under $30 Compact and durable

Post from Syncfusion Blogs on 03/04/2025

Tuesday, March 4, 2025

New blogs from Syncfusion ® Stacked vs. Grouped Bar Charts in Blazor: Which is Better for Data Visualization? By Gowrimathi S Learn the difference between the stacked and grouped bar charts and choose

⚙️ GenAI Siri

Tuesday, March 4, 2025

Plus: TSMC's hundred billion dollar investment ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

Big Notion Updates + Want to Earn Money?

Tuesday, March 4, 2025

Notion Tabs, Build with AI, Hidden Updates + New Opportunity just for you 🔥 ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

The Sequence Knowledge #502: If You are Doing RAG You Need to Know Hypothetical Document Embeddings

Tuesday, March 4, 2025

One of the most important methods to enable sematically-rich RAG. ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

Google's March 2025 Android Security Update Fixes Two Actively Exploited Vulnerabilities

Tuesday, March 4, 2025

THN Daily Updates Newsletter cover Starting with DevSecOps Cheatsheet A Quick Reference to the Essentials of DevSecOps Download Now Sponsored LATEST NEWS Mar 4, 2025 How New AI Agents Will Transform