---
title: "Go 1.22 Release Candidate 2"
publication: "Go Weekly"
issue: 493
published_at: "2024-01-30"
canonical_url: "https://golangweekly.com/issues/493"
---

Plus the latest Go survey, the future of JSON in Go, and Mat Ryer serenades us with Go docs. |        

#​493 — January 30, 2024 

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

Together with [![Ardan Labs\](https://res.cloudinary.com/cpress/image/upload/e_make_transparent/co_white,e_outline:7,q_auto/uf5bdgdgdbgcbdrzi6r7.png)](https://events.ardanlabs.com/?utm_source=cooperpress)  

Go Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/bga4uwbeurqonvvpvpk2.jpg)](https://go.dev/blog/survey2024-h1)  

[The Latest Go Developer Survey is Now Open](https://go.dev/blog/survey2024-h1) — 2024’s first official Go Developer Survey is out (you can [take it here](https://google.qualtrics.com/jfe/form/SV_083SVAUCji98YeO?s=b)) and the Go team is ready for your feedback. It closes on February 11th, so don’t wait too long. Things that we share _do_ end up affecting the future of Go, so it’s worth doing. [Here’s the results](https://go.dev/blog/survey2023-h2-results) of the last survey, if you want to see how it tends to shake out. 

The Go Team   

[Go 1.22 Release Candidate 2 Released](https://groups.google.com/g/golang-announce/c/ktlSOU6z65Y) — Reminding us that we’re just weeks from the final release of Go 1.22, the second RC is here. The [draft release notes](https://tip.golang.org/doc/go1.22) have been updated somewhat and act as a good introduction to what improvements 1.22 gains, if you want to get ahead of the story. 

Cherry and Carlos (Go Team)   [![\](https://copm.s3.amazonaws.com/9bd98a7f.png)](https://events.ardanlabs.com/?utm_source=cooperpress) 

[Help GopherConEU in Athens, Greece be a Memorable Event!](https://events.ardanlabs.com/?utm_source=cooperpress) — Join GopherConEU in Athens, Greece between February 6 - 8th, 2024. Bill Kennedy and Miki Tebeka are part of GopherConEU Training workshops sharing cutting edge Go engineering best practices, libraries, frameworks, performance optimization, and more. 

Ardan Labs & GopherConEU sponsor   

[What’s New in Go 1.22: `slices.Concat`](https://blog.carlana.net/post/2024/golang-slices-concat/) — The implementer of `slices.Concat` discusses its implementation and how it addresses a common performance issue when working with slices. If you’re manipulating slices in loops, you should read this. 

Carlana Johnson   

_QUICK BITS:_ 

- 🗣 A lengthy thread kicked off on Reddit about [what Go developers actually do in their day jobs](https://www.reddit.com/r/golang/comments/1abpmn6/as_a_go_developer_what_do_you_actually_do_in_your/).
- Claire Adams at Slack writes [about how Slack runs cron jobs at scale](https://slack.engineering/executing-cron-scripts-reliably-at-scale/). All the major parts are written in Go.
- 🎸 Sent in by Mat Ryer is [▶️ this musical reminder](https://www.youtube.com/watch?v=AOdAnA2eP-Q) that `filepath`'s [`Walk` funtion](https://pkg.go.dev/path/filepath#Walk) does _not_ follow symlinks. I'm certainly never going to forget.. 😆
- Datadog's Felix Geisendörfer [demystifies a few Go memory metrics](https://www.datadoghq.com/blog/go-memory-metrics/) – naturally, their product can help you visualize those, but this is a useful post nonetheless.   

▶[The Future of JSON in Go](https://www.youtube.com/watch?v=mBinOZ4KW7k) — Tailscale’s Joe Tsai takes a tour through the world of JSON parsing and generation in Go, showing off problems with current approaches and going into [the work on `encoding/json/v2`](https://github.com/golang/go/discussions/63397). 

Joe Tsai   

[Building a Go Static Site Generator Using elem-go and goldmark](https://dev.to/chasefleming/building-a-go-static-site-generator-using-elem-go-3fhh) — Rather than use something like [Hugo](https://gohugo.io/), you _could_ use some libraries to roll your own static site generator. There’s also [a template app](https://github.com/chasefleming/elem-ssg) to get started quickly. 

Chase Fleming  

🛠 Code & Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/zr20llcgzhcd0gfcjvjf.jpg)](https://www.usememos.com/)  

[Memos: A Privacy-First Go-Powered Note Taking App](https://www.usememos.com/) — A complete, MIT-licensed note taking webapp that you can self host. It uses [Echo](https://github.com/labstack/echo) as a framework and stores its data with SQLite. [GitHub repo.](https://github.com/usememos/memos) 

Memos Contributors   

[gofumpt 0.6: A Stricter `gofmt`](https://github.com/mvdan/gofumpt) — If you like rules and `gofmt` isn’t strict enough, `gofumpt` has [even stricter rules](https://github.com/mvdan/gofumpt#added-rules) to keep your codebase clean and under control. v0.6 is based on Go 1.21’s `gofmt`, and requires Go 1.20+ 

Daniel Martí   

[Try a Lightning-Fast Pairing Tool Built with You in Mind](https://tuple.app?utm_source=cooperpress&utm_medium=newsletter&utm_campaign=Q1_2024&utm_content=Go+Newsletter_Sponsored+Link) — Tuple will change the way you think about pair programming. Try it with your team free for 14 days, no card required. 

Tuple sponsor   

[goja: An ECMAScript/JavaScript Engine in Pure Go](https://github.com/dop251/goja) — Want to add JS-based scripting functionality to your Go apps? This gives you an option that doesn’t involve bringing in an external engine. _For an example of how it might be used, check out the next item.._ 

Dmitry Panov   

[k6: A Go-Powered Load Testing Tool](https://github.com/grafana/k6) — A full-featured, configurable load generation tool that uses the [goja](https://github.com/dop251/goja) engine (above) to support writing test scripts in JavaScript. _(AGPL licensed.)_ 

Grafana Labs   

[Grape: A New Zero-Dependency HTTP Library for Go](https://github.com/hossein1376/grape) — _“A thin wrapper around the standard library, providing helper functions to facilitate faster and easier development. Adding only a single dependency to your projects.”_ 

Hossein Yazdani      

📰 Classifieds   

🪐 Build your permissions system with Go and open-source. [SpiceDB is the open-source implementation](https://authzed.com/spicedb?utm_source=sponsored_newsletter&utm_medium=display&utm_campaign=golang_newsletter) of Google Zanzibar.      

🧊 [tinygo-wasm-webgl-demo](https://github.com/semanser/tinygo-wasm-webgl-demo) — A small repo showing off how to use TinyGo, WebAssembly and WebGL to create a simple 3D graphical demo that runs in the browser. 

Andriy Semenets   

- [oapi-codegen 2.1](https://github.com/deepmap/oapi-codegen/releases/tag/v2.1.0) – Generate boilerplate code from OpenAPI specs.
- [gRPC-Go 1.61](https://github.com/grpc/grpc-go/releases/tag/v1.61.0) – Go implementation of gRPC for HTTP/2 based RPC.
- [Roaring 1.9](https://github.com/RoaringBitmap/roaring) – Roaring bitmap data structure implementation.
- [Expr 1.16](https://github.com/expr-lang/expr) – Expression language and expression evaluation.
- [uuid 1.6](https://github.com/google/uuid) – Google's RFC 4122 UUID package.
- [Lego 4.15](https://github.com/go-acme/lego) – Let's Encrypt/ACME client and library.
- [BlueRPC](https://bluerpc-docs.onrender.com/) – Maintain type safety between Go and TypeScript.         

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
