#​402 — March 4, 2022

Unsubscribe  |  Read on the Web

The Go Weekly Newsletter

⭐️  Go: A Documentary (Of Sorts) — What happens if you bring together over 700 links to papers, talks, issues, and other digital artefacts covering Go’s history, the background to its feature, creators, and more? You get this treasure trove of a resource. A feat of curation.

Changkun Ou

Speeding Up Go's Builtin JSON Encoder — A lot of modern programs use JSON as a data interchange format with the outside world, so being able to read and write it quickly is a must. How fantastic, then, that folks like Phil are putting in work like this. go-json is the end result.

Phil Eaton

ButterCMS Melts into Your Go App $ ButterCMS.getposts() — ButterCMS is your content backend. Enable your marketing team to update website + app content without needing you. Try the #1 rated Headless CMS for your Go app today. Free for 30 days.

ButterCMS sponsor

Go 1.17.8 and Go 1.16.15 Released — Includes a security fix for a problems on 64-bit platforms where a deeply nested expression can cause regexp.Compile to exhaust the stack (issue here).

Carlos, Alex, and the Go Team

Prig: It's Like AWK, But Uses Go for 'Scripting' — The creator of GoAWK creates a CLI tool that is AWK-like (minus a couple of features) and shows the 200 lines of code it took to build it.

Ben Hoyt

Quick bits:

  • The folks behind the Fyne and Gio GUI libraries have launched a Go GUI developer survey to help steer their future efforts.

  • 🇺🇦 We stand in support of Ukraine and want to share the appeal to the developer community by a Rubyist who is sheltering from the invasion in Kharkiv. We have also donated to the effort and encourage efforts to do likewise.

  • gopls 0.8.0 has been released with support for Go 1.18, workspaces, generics, fuzz tests, etc. It also drops Go 1.12 support.

Jobs

Site Reliability Engineer — Help us scale one of the biggest Postgres-powered Rails majestic monoliths in the world.
Buildkite

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

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

Using WWW-Authenticate for User Authentication — If your auth needs are (very) simple, this approach (also known as HTTP Basic Auth) could save you a lot of time and code.

Brian Mayer

Building a Command Line Tool with Go: Lolcat — A light hearted and very easy to follow tutorial from a 15 year old Peruvian gopher :-)

Eliaz Bobadilla

How to Set Up a Blog with Hugo and Cloudflare (and Why You Should) — This tutorial is focused on the logistics rather than Go, but Hugo is a popular Go-powered static site generator worth considering for your projects.

Smaller Fish

▶  Why Immutable Databases? — Bartlomiej Święcki and Jeronimo Irazabal (who work on ImmuDB) join the show to talk about the concept of immutable databases, the problems they target, and why you’d want to build one in Go.

Go Time Podcast podcast

Building a Simple REST API with gorilla/mux
Carlos Marcano

🛠 Code & Tools

Juniper: An Extended Go Standard Library using Generics — Generic-based packages are starting to emerge, like Jupiter which extends containers, lists, slices, and more.

Braden Walker

Bun 1.1: A Fluent SQL Client for Several Databases — A client library that provides an ‘ORM-like’ experience with Postgres, MySQL, SQL Server, and SQLite. The querying approach is quite idiosyncratic but very fluent.

Uptrace

Lo: A Lodash-Style Library for Go 1.18+Lodash is a popular JavaScript utility library that, to a point, makes up for various deficits in JS’s approach for working with collections. This generics-based attempt brings similar utility methods for working with slices, maps, and more in Go too and treads some similar ground to Juniper (above).

Samuel Berthe

Run Go Unikernels 2X as Fast on GCP and 3X as Fast on AWS

NanoVMs sponsor

Bubble Table: A Table Component for Bubble Tea — If you haven’t checked out Bubble Tea before, you should. It’s a nifty terminal UI library for Go.

Brandon Fulljames

pg_back 2.1.0: A Simple and Thorough Backup Tool for Postgres — A tool (written in Go) for dumping your databases to files, including roles, server parameters, and more, in the format of your choice. Uses pg_dumpall and pg_dump behind the scenes to get all the data you need.

Nicolas Thauvin

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. We linked this recently but it has just added support for connecting to encrypted WiFi networks.

Michael Stapelberg