#​400 — February 18, 2022

Unsubscribe  |  Read on the Web

Go Weekly

Go’s Version Control History — Did you know the first commit in the Go repository is from 1972? Or is it..? Russ starts there and walks us through relevant commits, revision control tool changes, and pranks will be enjoyable to any gopher.

Russ Cox

Go 1.18 Release Candidate 1: The Release Notes — There’s no official blog post but the first release candidate of Go 1.18 is now out (if you want to try it out, follow the instructions in this golang-announce post) so it’s a good time to skim the release notes and prepare for the final release any week now (and hopefully not five minutes after we send this newsletter…)

Go Team

Build Video for Go That Just Works — Mux is an API-first platform that makes it easy to build video into your apps. Live and on-demand video stream beautifully to any device, plus analytics are built-in so you can track engagement.

Mux sponsor

▶  The Other Features in Go 1.18 — Had quite enough of hearing about generics and fuzz testing? No more. Michael Matloob and Daniel Martí join Mat Ryer on Go Time to talk about anything else Go 1.18 has to offer, such as workspaces. (59 minutes.)

Go Time Podcast podcast

In brief:

Jobs

Golang Engineers — 100% Remote (North/South America & Europe) — We’ve got several opportunities for Go devs (some working directly with Bill Kennedy!) and would love to hear from those looking for new challenges in distributed systems projects.
Ardan Labs

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.
Qonto

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.
Hired

Continuous Building and Deployment of Go Apps with Google Cloud Build — Cloud66 uses Google Cloud Build (Google’s CI/CD service) to build its Go apps and this is how it all works.

Khash Sajadi (Cloud66)

File-Driven Testing in Go — If you’re familiar with table-driven tests, this is just the next step along that path (pun fully intended).

Eli Bendersky

▶  Mastering Your Error Domain: Graceful Error Handling in Go — A 20 minute talk (followed by Q&A) given at FOSDEM 2022 about the errors.As helper added in Go 1.13 and using it to improve both how you handle errors and think about their role in your apps.

Carl Johnson

Moving Pinterest’s iOS Builds to Autoscaled EC2 Mac

Buildkite sponsor

GoF Design Patterns That Still Make Sense in Go — While there are people who think the classic book on patterns is obsolete, there are plenty of patterns used in Go today, and your code could probably use them.

Maurício Linhares

How To Use Dates and Times in Go — A comprehensive, introductory tutorial from DigitalOcean’s article writing program.

Kristin Davidson

🛠 Code & Tools

fq: Like jq But for Binary Formats — This is quite a neat idea. It’s a Go-powered tool (that is, admittedly, ‘early in development’) for working with non-text formats, such as graphics, audio, archives, etc. It’d be neat to see this improve and there’s even a list of to-dos if you want to get involved.

Mattias Wadman

Bubble Tea 0.20.0: A Powerful Elm-Inspired TUI Framework — Based on the Elm architecture, this is aimed at building slick terminal applications.

Charm

gRPC UI: An Interactive Web UI for Working with gRPC — Bills itself as being “sort of like Postman but for gRPC APIs instead of REST.

Engineering at FullStory

spew: A Deep Pretty Printer for Go Data Structures
Spew

ko 0.10: Build and Deploy Go Apps on Kubernetes
Google

😎 A Cool One..

TCG: Terminal Cell Graphics Library — An interesting way to render monochrome graphics in the terminal by way of using special Unicode block symbols. You can, however, work at ‘pixel’ level, making it quite flexible for certain kinds of use case. The only big downside? You have to use a special font in your terminal to make it work.

Sergey Mudrik