#288 — November 15, 2019

Read on the Web

Golang Weekly

Go Turns 10 Years Old — It’s energizing to read this quick chronicle of Go and how far it has come in 10 years. “On behalf of the entire Go team at Google, thank you to everyone who has joined us over the past decade. Let’s make the next one even more incredible!" Indeed.

The Go Blog

go.dev: A New Hub for Go Developers — The Go’s teams answer to … who else is using Go, what do they use it for, and how can I find useful Go packages? This is the “MVP”, so go try it out and give feedback. You might find pkg.go.dev of particular interest as it aims to be a central source of info on Go packages and modules – think godoc.org but that understands modules.

The Go Blog

The Easiest Way to Run Redis — Better monitoring, seamless scaling, durable and portable Redis hosting supporting all the latest features.

RedisGreen sponsor

Recreating grep from First Principles — I love tutorials like this. Will goes through regular expressions, Deterministic Finite Automatons, ending with a grep-like tool written in Go.

Will Demaine

Profiling to Reduce Memory Allocations — Another story about profiling and performance gains. This one was found in a dependency and has a happy, more performant ending.

Mark Phelps

Security Assessment Techniques for Go Projects — Trail of Bits, a security consultancy firm, focuses its security lens on Go, explaining tools and techniques they use to root out security bugs. This is likely a must-read for anyone serious about Go, testing, and security.

Trail of Bits

💻 Jobs

Senior Pipeline Software Engineer at Bugsnag (Bath, UK) — We're looking for a Senior Software Engineer with Go experience to join our Pipeline team, and help Develop a leading application stability monitoring solution.

Bugsnag

Stream Is Hiring a Go Engineer in Beautiful Amsterdam — Enjoy building high-performance infrastructure at scale? Apply to work in our Stream Amsterdam office now.

Stream

Find a Job Through Vettery — Make a profile, name your salary, and connect with hiring managers from top employers. Vettery is completely free for job seekers.

Vettery

📘 Articles & Tutorials

Let's Create a Simple Load Balancer With Go — Specifically, a round-robin load balancer. This is very much in Go’s sweet spot.

Kasun Vithanage

▶  Dynamically Instrumenting Go Programs — Covers delve, ptrace, uprobes, and frida as ways for gathering information about your running Go programs.

Jason Keene

Managed PostgreSQL by DigitalOcean — Deploy a highly scalable PostgreSQL cluster with no admin overhead.

DigitalOcean sponsor

Managing a Go Monorepo with BazelBazel is a language agnostic build tool that, like Go, just happens to be built by Google.

Filip Nikolovski

Sourcegraph's Go Style Guide — It’s just one organization’s principles, of course.

Sourcegraph

The Value in Go's Simplicity — In the wake of Go’s 10th birthday, many Gophers are singing its praises. So are we.

Benjamin Congdon

10 Things I Like About Go“Go turns 10 years old this month, so here’s a list of 10 things that I enjoy about Go.”

Dylan Meeus

🛠 Code & Tools

Gocache: A Complete and Extensible Go Cache Library — A “complete” cache library with adapters for memory, memcache, and Redis. Gocache has some cool features, such as chainable (or fallback) caches.

Vincent Composieux

INI: INI File Read and Writing Library — INI files (as popular in the Windows ecosystem) aren’t as popular as they were, but the format is useful in some cases. GitHub repo.

INI

Add Your API to the Fastest Growing Developer Communities

Manifold sponsor

BadgerDB: A Fast, Embeddable Key-Balue DB in Go — We first linked this, the underlying database for the Dgraph graph database, two years ago but version 2.0 is just out with compression and encryption at rest added.

Dgraph

tview: Rich Interactive Widgets for Terminal UIs — Includes input forms with various controls, text views, table views, lists, flexbox layouts, and more. Here’s a basic written introduction.

Oliver Kuederle

APNS/2: An HTTP/2 Apple Push Notification Service (APNs) Push Provider for Go

Adam Jones

Validator: Value Validations for Structs and Fields

Go Playgound