#​396 — January 21, 2022

Unsubscribe  |  Read on the Web

Go Weekly

An Official 'Getting Started with Generics' Tutorial — As we keep saying, Go 1.18 is coming (it’s in beta right now) and generics are a much awaited part of that. So it’s great to see an official tutorial introducing the basics of using generics in Go, even if it, too, is in beta for now.

Go Docs

Getting Started with Fuzzing in Go 1.18+ — In a similar fashion to the generics tutorial above, there’s also a new tutorial cover the practicalities of getting started with fuzz testing (a type of automated testing where inputs are manipulated a large number of times to find subtle flaws in the thing being tested) in Go 1.18 and beyond.

Go Docs

It's Go Time - Get Started with InfluxDB — Write your real-time apps in Go with this step-by-step tutorial for InfluxDB. Use our code snippets, adapt, or write your own using the CLI.

InfluxData sponsor

'What I'd Like to See in Go 2.0' — Seth clearly has the experience that inspires this well thought out list of language improvements around templating, a more deterministic select, standard structured logging, and more.

Seth Vargo

Diving Into Go's HTTP Server Timeouts — Timeouts are a simple mechanism, that every server author should use, that almost always creates surprises in practice, so maybe this post will prepare you to be less surprised.

Adam Pritchard



Backend Engineer | Remote within CET (-3/+3 hours) | Full-Time — Europe's leading business finance solution. You will help us simplify everything from everyday banking and financing, to bookkeeping and spend management.

Golang Developer at X-Team (Remote) — Join the most energizing community for developers and work on long-term projects for Riot Games, FOX, Sony, Coinbase, and more.

Find a Job Through Hired — Create a profile on Hired to connect with hiring managers at growing startups and Fortune 500 companies. It's free for job-seekers.

Visualization in Go: Plotting Stock Information — Admittedly Plotly is doing the hard work here, but Go is used to tie everything together.

Miki Tebeka

Building GitHub Apps with Go — Github Apps provide the ability to manage your repositories, their builds, and get stats, among other capabilities.

Martin Heinz

▶  AI-Driven Development in Go with Alexey Palazhchenko — A discussion about the implications of AI and ML-based systems (such as GitHub’s Copilot) on writing Go code. (50 minutes.)

Go Time Podcast podcast

🛠 Code & Tools

qlmka: macOS Quick-Look Plugin for Matroska .mka Files — If you use macOS, you know that pressing Space on a file in the Finder can give you a ‘quick look’ preview of that file’s contents. It’s interesting to see Go used in such a plugin for once (with C providing the interface between macOS and the Go code) and no Xcode needed either.

Remko Tronçon

Redix: A Fast Persistent Pure Key/Value Store — A key value store that speaks the Redis protocol but uses Postgres as its storage engine. First unveiled three years ago as a learning experience, this has been frequently updated and turned into a neat project.

Mohammed Al Ashaal

Enjoy Building Scalable Infrastructure in Go? Stream Is Hiring

Stream sponsor

Litestream: Real-Time Streaming Replication for SQLite — Continuously streams changes to a local SQLite database to S3, Azure Blob Storage, Google Cloud, over SFTP or NFS, etc. so you can recover more quickly if things go bad. GitHub repo.

Ben Johnson

gokrazy: A Pure-Go Userland for Raspberry Pis — No C runtime, no console, no systemd, just gokrazy (and its web interface) and your Go application.


Goridge 3.3: A PHP-to-Go IPC/RPC Bridge — Uses PHP sockets and Go’s net/rpc package to enable the calling of Go service methods from PHP with relatively high performance and a low footprint. If you’re in the PHP space you might also like related project Roadrunner which is a Go-powered PHP application server.


Switchboard: Automagical File Organization — A Go powered tool that monitors directories of your choice and will then reorganize files (moving downloaded MP4 files into your Movies folder, say).

Cian Gallagher

Wordlehack: Another Attempt at Finding The Best Wordle Starting Word — If you’re not a Wordle player, this will mean nothing to you - otherwise, you might appreciate the analysis.

Brian Olson

tt: A Terminal Based Typing Test — A quick fun test that will tell you characters and words-per-minute, along with accuracy of your typing skill.


A Single Producer and Multi-reader Lockless Ring Buffer using 1.18's Generics
Gavin Clarke

graphql-go 1.3.0: A GraphQL Server with a Focus on Ease of Use
Richard Musiol

go-enry: A Fast File Programming Language Detector

Fiber 2.25.0: An Express.js Inspired Web Framework

Sarama: A Go Client Library for Apache Kafka