---
title: "The GopherCon UK experience"
publication: "Go Weekly"
issue: 519
published_at: "2024-08-20"
canonical_url: "https://golangweekly.com/issues/519"
---

Plus Go 1.23's release, interesting Go quirks, and taking Go into notebooks. |        

#​519 — August 20, 2024 

[Unsub](https://golangweekly.com/leave/*|UID|*)|[Web Version](https://golangweekly.com/issues/519)   

🏖️ If you missed last week's issue, don't worry - you didn't. I took a week off for a summer break, but now we're back ;-) Thanks to everyone who sent in links for us to check out.
__
_Peter Cooper, your editor_ 

Together with [![Frontend Masters logo\](https://res.cloudinary.com/cpress/image/upload/c_fill,g_auto,w_300,h_70/e_make_transparent/co_white,e_outline:5/nk0tfdvalivacz8rw7rt.png)](https://frontendmasters.com/courses/complete-intro-containers-v2/?utm_source=email&utm_medium=golangweekly&utm_content=containersv2)   

Go Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/zbkslz966h4vckekzx7i.jpg)](https://go.dev/blog/go1.23)  

[Go 1.23 Released](https://go.dev/blog/go1.23) — We’ve been hearing about (and linking to) 1.23 for weeks in its various pre-release guises, but now it's here. You could call 1.23 a 'major minor' release, as it's mostly a gentle step forward but with some new features, like `for range` iteration and tooling additions (including the now _opt-in_ [telemetry system](https://go.dev/doc/go1.23#telemetry)). Head to [the official release notes](https://go.dev/doc/go1.23) for all the details. 

The Go Team   

💡 For a more practical look at language improvements, don't forget Anton Zhiyanov's fantastic [interactive release notes](https://antonz.org/go-1-23/) and examples.  

[Structs are Copied on Assignment (and Other Things About Go I'd Missed)](https://jvns.ca/blog/2024/08/06/go-structs-copied-on-assignment/) — This gotcha likely catches many new-to-intermediate gophers, along with the other issues Julia also mentions. By the way, these are based on a few of the [100 Go Mistakes and How to Avoid Them](https://100go.co/) site and book. 

Julia Evans   [![\](https://copm.s3.amazonaws.com/58dd2619.png)](https://frontendmasters.com/courses/complete-intro-containers-v2/?utm_source=email&utm_medium=golangweekly&utm_content=containersv2) 

[A Complete Introduction to Containers](https://frontendmasters.com/courses/complete-intro-containers-v2/?utm_source=email&utm_medium=golangweekly&utm_content=containersv2) — Join Brian Holt for this extensive video course covering the now industry standard approach for developing and deploying apps. You'll learn about core container technology, Docker Images, multi-container projects, and much more. 

Frontend Masters sponsor   

▶[12 Talks from GopherCon UK 2024](https://www.youtube.com/playlist?list=PLDWZ5uzn69ezR6D6FUj_iBSOyRc9xaZFP#gopherconuk2024) — [GopherCon UK](https://www.gophercon.co.uk/) took place just a few days ago, but you can already enjoy a variety of talks including Matt Boyle on [debugging Go apps](https://www.youtube.com/watch?v=7YfFBTkGIOI&list=PLDWZ5uzn69ezR6D6FUj_iBSOyRc9xaZFP&index=3), Jesús Espino [digging into Go’s runtime](https://www.youtube.com/watch?v=arH3jp_x8yQ&list=PLDWZ5uzn69ezR6D6FUj_iBSOyRc9xaZFP&index=4), Beth Anderson [on AI](https://www.youtube.com/watch?v=gSPjoNczOsI&list=PLDWZ5uzn69ezR6D6FUj_iBSOyRc9xaZFP&index=7), and Google’s Michael Pratt [look at profile guided optimization.](https://www.youtube.com/watch?v=0GkRJQ1aUOI&list=PLDWZ5uzn69ezR6D6FUj_iBSOyRc9xaZFP&index=6) We'll feature more talks in future issues as we watch them, as there's a lot of gold in here. 

GopherCon UK   

💡 If you want to get more of a feel for what the event was like, Jamie Tanna did [a write up of the GopherCon UK 2024 experience.](https://www.jvt.me/posts/2024/08/16/gophercon-uk-2024/)  

[HTTP/1.0 From Scratch](https://kmcd.dev/posts/http1.0-from-scratch/) — We recently featured Kevin’s [HTTP/0.9 From Scratch](https://kmcd.dev/posts/http0.9-from-scratch/), a first step into reimplementing the basics of HTTP, step by step, in Go. Now we get to fast forward five years to 1996 and HTTP/1.0 which introduced things like the `POST` action, status codes, and content negotiation. 

Kevin McDonald   

['An Unordered List of Things I Miss in Go'](https://kokada.capivaras.dev/blog/an-unordered-list-of-things-i-miss-in-go/) — A solid list with some doable and not-so-doable items. On the doable side, there are ordered maps and default arguments. On the not-so-doable, null/nilability is a long-time contentious subject that likely would break backward compatibility. 

kokada   

[Go Maps Explained: How Key-Value Pairs Are Actually Stored](https://victoriametrics.com/blog/go-map/) — A comprehensive, illustrated tutorial to how things are represented under the hood. 

Phuong Le  

🛠 Code & Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/xj6gcqvxa8u4hv23ctcb.jpg)](https://github.com/dnaeon/go-vcr)  

[go-vcr 4.0: Record and Replay Your HTTP Interactions](https://github.com/dnaeon/go-vcr) — Record and replay API interactions for faster, deterministic testing of potentially flaky endpoints – here’s the [v4.0 changelog.](https://github.com/dnaeon/go-vcr/blob/v4/CHANGELOG.org#2024-08-19) _(If you’ve used Ruby, you might recognize its inspiration: the popular [VCR library.](https://benoittgt.github.io/vcr/))_ 

Marin Atanasov Nikolov   

[GoNB: A Go Notebook Kernel for Jupyter](https://github.com/janpfeifer/gonb) — [Notebooks](https://en.wikipedia.org/wiki/Notebook_interface) make it easy to do literate programming where you see results immediately like a REPL but with persistence and control over the source code. Common in Python, GoNB brings Go into the picture too. The latest release adds [Jupytext](https://jupytext.readthedocs.io/en/latest/) support. 

Jan Pfeifer   

[FusionAuth. Auth Built for Devs, by Devs](https://fusionauth.io/?utm_medium=newsletter&utm_source=gonewsletter&utm_campaign=aug24_newsletter) — Choose self-hosting or cloud, scale from 10 to 10 million users, and enjoy unlimited IDPs. Trusted by industry leaders with 10M+ downloads. 

FusionAuth sponsor   

[Pie 2.9: A Utility Library for Dealing with Slices](https://github.com/elliotchance/pie) — Ways to work with slices with a focus on type safety, performance and immutability. Now with a a new `UniqueStable` operation. 

Elliot Chance   

[Lo: A Lodash-Style Library for Go 1.18+](https://github.com/samber/lo) — Inspired by JavaScript’s [Lodash](https://lodash.com/) and brings similar utility methods for working with slices, maps, and more. 

Samuel Berthe   

[kubetrim: Trim Your KUBECONFIG Automatically](https://github.com/alexellis/kubetrim) — Takes your kubeconfig and trims out all the old / unused clusters and contexts. 

Alex Ellis   

- [Bubble Tea 0.27](https://github.com/charmbracelet/bubbletea/releases/tag/v0.27.0) – The powerful, popular TUI framework adds support for programmatically suspending and resuming programs.
- [GoLand 2024.2](https://blog.jetbrains.com/go/2024/08/05/goland-2024-2-is-out/) – The latest release of JetBrains' popular commercial Go IDE.
- [Pion TURN 4.0](https://github.com/pion/turn) – Toolkit for building TURN clients and servers.
- [GoReleaser 2.2](https://goreleaser.com/blog/goreleaser-v2.2/) – Build/release binaries for multiple platforms.
- [wazero 1.8](https://github.com/tetratelabs/wazero/releases/tag/v1.8.0) – Zero dependency WebAssembly runtime for Go.
- [NATS.go 1.37](https://github.com/nats-io/nats.go/releases/tag/v1.37.0) – Go client for the NATS messaging system.
- [gofumpt 0.7](https://github.com/mvdan/gofumpt) – A stricter `gofmt`.         

Curated by Peter Cooper and [Glenn Goodrich](https://twitter.com/ruprict). 

[Change your email](https://golangweekly.com/edit_subscription/*|UID|*)
[Stop getting this newsletter](https://golangweekly.com/leave/*|UID|*) 

© Cooper Press Ltd · Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom
