---
title: "The one with Go 1.20"
publication: "Go Weekly"
issue: 446
published_at: "2023-02-03"
canonical_url: "https://golangweekly.com/issues/446"
---

Plus entering the memory arena, a call for speakers, and improving the observability of Go services. |        

#​446 — February 3, 2023 

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

Together with [![Tailscale logo\](https://res.cloudinary.com/cpress/image/upload/c_fill,g_auto,e_trim,w_280,h_100/e_make_transparent/co_white,e_outline:7/zyrdpx3vpbxxzkmbrkf7.png)](https://tailscale.com/?utm_source=golang&utm_medium=email&utm_campaign=2023-2-3&utm_content=brand)  

The _Go Weekly_ Newsletter 

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

[Go 1.20 Released](https://go.dev/blog/go1.20) — Hurrah – exactly six months after Go 1.19 comes the latest significant release of Go. Here’s some of what’s new: 

- [Profile-guided optimization (PGO)](https://go.dev/doc/pgo) is a new (in _preview_) feature using profile runs of your app to optimize its future compilation.
- Direct slice to array conversion.
- Perf improvements in the garbage collector.
- Errors can now wrap multiple other errors.
- A new `crypto/ecdh` package implementing Elliptic Curve Diffie-Hellman key exchanges.
- 1.20 is the final release that will run on macOS 10.13/10.14 or Windows 7/8.
- **And a lot more..** see [the Go 1.20 release notes](https://go.dev/doc/go1.20) for the full roundup. 

Robert Griesemer and the Go Team   [![\](https://copm.s3.amazonaws.com/e1b27bd4.png)](https://tailscale.com/?utm_source=golang&utm_medium=email&utm_campaign=2023-2-3&utm_content=brand) 

[Securely Access Internal Resources With Tailscale](https://tailscale.com/?utm_source=golang&utm_medium=email&utm_campaign=2023-2-3&utm_content=brand) — Securely access resources in your tailnet without exposing them to the public internet, even if you’re on an untrusted network, mobile device, or just a web-browser. 

Tailscale sponsor   

[Memory Arenas vs Traditional Memory Management](https://pyroscope.io/blog/go-1-20-memory-arenas/) — “Memory arenas” are very much [an experimental concept](https://github.com/golang/go/issues/51317#issuecomment-1385623024) in Go right now and should not be relied upon, but being able to obtain a single preallocated slab of memory within which related objects can be stored has some advantages worth exploring. 

Dmitry Filimonov   

[What’s New in Go 1.20, Part III](https://blog.carlmjohnson.net/post/2023/golang-120-minor-features/) — The latest in a series of posts digging into the details of Go 1.20, this time focusing on **minor standard library changes**, briefly covering tweaks to `math/rand`, `path/filepath`, `httputil.ReverseProxy`, and the introduction of `strings.CutPrefix`. 

Carl M Johnson   

**IN BRIEF:** 

- A recent survey by JetBrains indicates developers are ['most likely to learn Go and Rust in 2023'](https://thenewstack.io/developers-most-likely-to-learn-go-and-rust-in-2023-survey-says/).
- 📅 GopherCon UK 2023, which takes place this August, has [an open call for speakers](https://sessionize.com/gophercon-uk-2023).   

[Improving the Observability of Go-Powered Services](https://flow.com/engineering-blogs/golang-services-improving-observability) — Jumps straight into the practicalities of logging, metrics, tracing with TraceQL, and connecting profiling with tracing. 

Alexey Ivanov   

[Introducing The Linear Developer Experience](https://t.mp/3Dm8CdL) — Explore a new developer experience concept that turns complex and dreadful project work into a delightful and pleasant experience. 

Temporal Technologies sponsor   

▶[How to Ace That CFP (Call For Papers)](https://changelog.com/gotime/265) — A “call for papers/proposals” is when an event invites folks to submit talk proposals. _Go Time_ brought on some conf organizers to talk about what they look for and how potential speakers can craft submissions. 

Go Time Podcast podcast   

[Profiling Go Code in the GoLand IDE](https://blog.jetbrains.com/go/2023/02/02/profiling-go-code-with-goland/) 
Hrittik Roy  

🛠 Code & Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/xjdg6ijqj2eiggiuefoz.jpg)](https://github.com/mmcdole/gofeed)  

[gofeed 1.2: A Parser for RSS, Atom, and JSON Feeds](https://github.com/mmcdole/gofeed) — A mature, heavily relied upon on, and robust option for parsing RSS (in all common variants), Atom _and_ JSON feeds. v1.2 adds support for multiple link tags in RSS feeds. 

mmcdole   

[An Update on go-redis v9](https://uptrace.dev/blog/posts/go-redis-v9.html) — [go-redis](https://github.com/redis/go-redis) is a Redis client and now lives directly under the official Redis organization on GitHub. v9 adds support for the RESP3 protocol, OpenTelemetry-based performance monitoring, pipeline retries, and a new hooks API — it's a big update. 

Uptrace   

[Don’t Let Your Issue Tracker Be a Four-Letter Word. Use Shortcut](https://shortcut.com/?utm_source=cooperGO&utm_medium=spon_nl&utm_campaign=prospecting&utm_content=fourletter) — The best issue tracking software is one that software developers are actually happy to use. 

Shortcut (formerly Clubhouse.io) sponsor   

[Goldmark 1.5: Markdown Parser Library](https://github.com/yuin/goldmark) — Pure Go, easy to extend, and [CommonMark](https://commonmark.org/) compliant (handy for GitHub-Flavored Markdown). 

Yusuke Inuzuka   

[tbls: CI-Friendly Tool for Documenting Databases](https://github.com/k1LoW/tbls) — Auto document a database in Markdown format with schemas rendered via DOT, PlantUML, Mermaid, or images. By default you get docs covering columns, indexes, relations, and schema details ([sample](https://github.com/k1LoW/tbls/blob/main/sample/postgres/README.md)). 

Ken’ichiro Oyama    

Jobs  

[Site Reliability Engineer](https://jobs.ashbyhq.com/stickermule/2482befb-4aa7-4372-98d7-042aaf774315?utm_source=Cooperpress) — Join our "kick ass" team. Our software team operates from 17 countries and we're always looking for more exceptional engineers. 
Sticker Mule   

[Find a Job Through Hired](https://hired.com/join/?utm_source=newsletter&utm_medium=sponsor&utm_campaign=%28b2c%29%28l-all%29%28r-all%29%28cooper-golangweekly%29&utm_content=easy-job-hunting) — Hired makes job hunting easy-instead of chasing recruiters, companies approach you with salary details up front. Create a free profile now. 
Hired      

**QUICK RELEASES:** 

- [Ginkgo 2.8](https://github.com/onsi/ginkgo)
 ↳ Modern testing framework for Go.
- [Grafana Tempo 2.0](https://grafana.com/oss/tempo/)
 ↳ Distributed tracing backend.
- [FerretDB 0.9](https://github.com/FerretDB/FerretDB/releases/tag/v0.9.0) – MongoDB alternative.
- [fq 0.3](https://github.com/wader/fq) – Like `jq` for binary formats.
- [GoBGP 3.11](https://github.com/osrg/gobgp) – BGP implemented in Go.
- [rpcx 1.8](https://github.com/smallnest/rpcx) – Microservices framework.         

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
