---
title: "Go is 'boring' and that's good."
publication: "Go Weekly"
issue: 435
published_at: "2022-11-04"
canonical_url: "https://golangweekly.com/issues/435"
---

Plus building a desktop app with Wails, handling values passed to C, and a gopher-themed music mix. |        

#​435 — November 4, 2022 

[Unsubscribe](https://golangweekly.com/leave/*|UID|*)|[Read on the Web](https://golangweekly.com/issues/435)  

Together with [![Ardan Labs\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/e_make_transparent/co_white,e_outline:7/uf5bdgdgdbgcbdrzi6r7.png)](https://www.ardanlabs.com/careers/mid-level-and-senior-backend-engineer.html/?utm_source=Cooperpress%20PrimaryV4)  

The _Go Weekly_ Newsletter 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/i4g79dwqaemjci1u7rog.jpg)](https://www.youtube.com/watch?v=v24wrd3RwGo)  

▶[How Go Programs Keep Working (By Being Boring)](https://www.youtube.com/watch?v=v24wrd3RwGo) — In a talk given at GopherCon 2022 last month, Russ dug into Go’s “compatibility promise” that ensures your Go code will keep working even as the Go runtime evolves. _“Boring can be good,”_ Russ says. 

Russ Cox   

['The Real Problem with Go'](https://vanitynotes.com/posts/20221101-the-real-problem-with-go) — Some yin to Russ's yang! This author’s complaint is around the challenges around _contributing_ to Go and perceived bottlenecks in the project’s processes. These sorts of posts often inspire discussion and so did this one: [over on Hacker News](https://news.ycombinator.com/item?id=33439021). 

Vanity Notes   [![\](https://copm.s3.amazonaws.com/d66ea58f.png)](https://www.ardanlabs.com/careers/mid-level-and-senior-backend-engineer.html/?utm_source=Cooperpress%20PrimaryV4) 

[Gophers - Opportunity is Knocking](https://www.ardanlabs.com/careers/mid-level-and-senior-backend-engineer.html/?utm_source=Cooperpress%20PrimaryV4) — We’re a premier software engineering firm looking for mid to senior level engineers to help us develop advanced software solutions and applications in Go. Got at least 1 year of professional Go experience and located in the Americas or Western Europe? We want to hear from you. 

Ardan Labs sponsor   

[HTTP Resource Leak Mysteries in Go](https://coder.com/blog/go-leak-mysteries) — Stories of hunting down various leaks in production software are often interesting and informative, and this one is particularly good. Read on to find out how the term “prime suspect” can mean more than one thing. 

Spike Curtis   

[Proposal: User-Defined Iteration using a Range over Func Values](https://github.com/golang/go/discussions/56413) — Russ sets forth a proposal to add push and pull functions to ranges making them more functional and enabling some nice use cases, many of which Russ describes in the proposal. As you might imagine, there’s lots of good discussion here. 

Russ Cox   

[Go 1.19.3 and Go 1.18.8 Released](https://groups.google.com/g/golang-announce/c/mbHY1UY3BaM/m/hSpmRzk-AgAJ) — Minor point releases that fix _one_ security issue with `syscall.StartProcess` and `os/exec.Cmd` only. There was some speculation these releases were to tackle a simultaneously disclosed OpenSSL vulnerability, but [they’re not](https://twitter.com/FiloSottile/status/1586685649792425984). 

Matthew and Heschi for the Go team   

**IN BRIEF** 

- 🎵 We're a bit late with this, but the folks at Ardan Labs put together a [▶️ Halloween-themed 'lofi Gopher mix'](https://www.youtube.com/watch?v=6Q1V27P06tE) of music to sustain you while programming during those dark nights.. I'm not sure if it's really _lofi_, but it's instrumental and pretty good!
- The [latest EAP of GoLand](https://blog.jetbrains.com/go/2022/10/28/goland-2022-3-eap-5-support-for-links-lists-and-new-headings-in-go-doc-comments/) is out: EAP5.   

[Build a Desktop App in Go Using Wails and React](https://t.co/GaoIUjHlJa) — As Electron is to Node.js, [Wails](https://wails.app/) is to Go – sort of. With Wails, you can build desktop apps for Mac, Linux and Windows with JavaScript in the front, Go in the back. This is more an intro than a full walkthrough, but there’s a [handy repo](https://github.com/dedSyn4ps3/wails-react-demo) if you want to see how the code fits together. 

Ed Rutherford   

['Thread-Local State in Go, Huh?'](https://puzpuzpuz.dev/thread-local-state-in-go-huh) — There isn’t thread-local state in Go, but Andrei shows off a ‘trick’ that could help you to retain the thread identity on the hot path, at least. 

Andrei Pechkurov   

[Most Common Kubernetes Security Misconfigurations](https://goteleport.com/webinar/address-most-common-kubernetes-security-misconfigurations/?utm_campaign=k8s&utm_medium=partner&utm_source=golang) — Learn to easily identify Kubernetes misconfigurations and deploy identity-based infrastructure access on November 16. 

Teleport | goteleport.com sponsor   

[Using `cgo.Handle` to Pass Values Between C and Go](https://www.arsenm.dev/blog/runtime-cgo/) — This article discusses [a feature](https://pkg.go.dev/runtime/cgo#Handle) added to the runtime/cgo package in Go 1.17 that can turn any Go values into safe representations you can pass to C. 

Arsen Musayelyan   

[Processing Large Files with Go](https://medium.com/@snassr/processing-large-files-in-go-golang-6ea87effbfe2) — Using concurrency to speed up large file processing. 

Snassr  

🛠 Code & Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/c8z0aigearg4yrrdf2xz.jpg)](https://github.com/Delta456/box-cli-maker)   

[Box CLI Maker: Make Highly Customized Boxes for Your CLI](https://github.com/Delta456/box-cli-maker) — Boxes, packages.. it all comes together here. Single lines, double lines, a mixture of the two.. rounded corners, _only_ the corners, and more besides. [v2.3.0](https://github.com/Delta456/box-cli-maker/releases/tag/v2.3.0) adds more customization options and examples. 

Swastik Baranwal   

[Rueidis: Performance-Oriented Redis RESP3 Client](https://github.com/rueian/rueidis) — Heavy Redis users rejoice. Rueidis supports auto pipelining of non blocking commands, connection pooling, (optional) client side caching, and more. 

Rueian   

[Permify: Authorization Service Based on Google Zanzibar](https://github.com/Permify/permify) — [Zanzibar](https://storage.googleapis.com/pub-tools-public-publication-data/pdf/41f08f03da59f5518802898f68730e247e23c331.pdf) is a global authorization system used by Google and this is a Go-based implementation of the ideas outlined in Google’s paper. Ory’s [Keto](https://github.com/ory/keto) is another such implementation. 

Permify   

[go-wiki: A Wikipedia API Wrapper for Go](https://github.com/trietmn/go-wiki) — Focused on making it easy to search Wikipedia, grab entries, etc. rather than do admin. 

Triet Nguyen   

[Wrapcheck: Linter to Check Errors from External Packages are Wrapped](https://github.com/tomarrell/wrapcheck) — It’s also available as part of the [golangci-lint meta linter](https://github.com/golangci/golangci-lint), if you’d prefer. 

Tom Arrell    

Jobs  

[Golang Engineers — 100% Remote (North/South America & Europe)](https://www.ardanlabs.com/careers/mid-level-and-senior-backend-engineer.html) — We’ve got several opportunities for Go devs and would love to hear from those looking for new challenges in distributed systems projects. 
Ardan Labs   

[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=find-your-next-job) — Create a profile on Hired to connect with hiring managers at growing startups and Fortune 500 companies. It's free for job-seekers. 
Hired      

[MariaDB Operator for Kubernetes](https://github.com/mmontes11/mariadb-operator) — Declaratively manage MariaDB using Kubernetes CRDs instead of imperative commands. 

Martín Montes   

[Alphavet: A Linter to Detect Functions Not in Alphabetical Order](https://github.com/skx/alphavet) — I’d not want this feature, but if you do.. It has a neat name though! 

Steve Kemp   

- [Hydra 2.0](https://github.com/ory/hydra/releases/tag/v2.0.0)
 ↳ OpenID certified OAuth 2.0 server and OpenID Connect Provider.
- [GoBGP 3.8](https://github.com/osrg/gobgp) – BGP implemented in Go.
- [progressbar 3.12](https://github.com/schollz/progressbar) – Basic thread-safe progress bar.         

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

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

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