#329 — September 11, 2020

Unsubscribe  |  Read on the Web

Golang Weekly

▶  Discussing Fuzzing in Go — A deep dive on the art of fuzzing (a type of testing for finding bugs by providing systems with random/'fuzzy' data) and a close look at the official fuzzing proposal for Go. A 58 minute discussion between Katie Hockman, Roberto Clapis, Filippo Valsorda and Mat Ryer.

Go Time Podcast podcast

Do Go Modules Have a 'v2+ Problem'? — There’s a naming requirement that modules of version 2 or greater must end in the major version number, e.g. /v2. According to the author, this is causing problems and isn’t well-known (though the official Go blog did cover it here), so we’re doing our bit to help shine a spotlight on it 😁

Jesse Donat

Log Management for Modern Engineering Teams — Extract what you need with saved searches, alerts, dashboards, and visualizations and easily share valuable data with your team.

LogDNA sponsor

Goyave 3.0: An Elegant Go Web Framework — A framework notable for its thorough documentation and ability to quickly bootstrap a project. It uses the latest version of GORM out of the box too.


gofeed 1.1: A Parser for RSS, Atom, and JSON Feeds — It’s been four years since we last mentioned this project, but as of this week’s 1.1 release, it supports JSON feeds in addition to RSS and Atom.


Caddy and CertMagic Under New OwnershipCaddy is well known as a Go powered ‘automatic HTTPS’ Web server – many of you probably use it. The project has been acquired by Ardan Labs and Apilayer and this enables Matt to continue to work on the project full-time.

Caddy Community

💻 Jobs

Sr. Software Engineer at CrowdStrike (Remote) — CrowdStrike is the leader in cloud-delivered endpoint protection, which helps protect our customers from cybersecurity attacks.


Senior Software Engineer at Even (Anywhere) — Help people break the paycheck-to-paycheck cycle. Build w/ Go, React Native, GraphQL, Postgres, Bazel. Remote encouraged.


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


📘 Tutorials

The Within Go Repo Layout — Approaches to structuring Go projects within repos have always made for popular reading here and this covers one common approach.

Christine Dodrill

The Official Go Modules Documentation — I’ve seen some suggestions on social media that people aren’t aware of this official documentation page on Go’s GitHub wiki that covers modules in full. If modules cause you any confusion, this is the place to, well, ‘go’.

Go Repository

How I Packaged a Go Program for Windows and Linux — Sure, cross-compilation is great, but actually packaging for multiple platforms is a different beast. Here’s how one developer tamed that beast.

Ross Light

IBC Live - Series of Events Focused on Innovative Ways to Reduce Costs

Bitmovin Inc. sponsor

Optimizing a Code Intelligence Indexer — Sourcegraph allows developers to navigate and search code bases. Indexing those code bases, especially when they are large, is an expensive operation. Here’s how they massively reduced the performance cost for Go repositories.


A Gentle Introduction to Web Services with Go — Written from a ‘coming from Ruby’ perspective.

Ayooluwa Isaiah

🛠 Code & Tools

Kiwi 1.0: A Minimalistic In-Memory Key/Value Store“You can think of Kiwi as thread safe global variables.”


Gold: An Experimental Go Local Docs Server/Generator — A local docs server, docs generator, and Go code reader. It tries to extract as much information as possible from Go code to help gophers use and study packages.


fastrand64-go: Pool Backed Library for Random uint64 Generation — Boasts performance and concurrency.

Ryan Haksi

go-diff: A Unified Diff Parser and Printer for Go — Doesn’t compute diffs itself but turns diff output into a data structure.