#259 — April 25, 2019

Read on the Web

Golang Weekly

▶  Constant Time: Go's Constants are More Powerful Than You Think — One of the latest in an amazing set of talk videos being released from the recent dotGo conference. Dave reflects on constants in Go and how they offer more functionality than you might initially think.

Dave Cheney

Jingo: A Faster JSON Encoder for Go — The way the Go standard library’s encoding/json works is pretty nice but can be lacking in situations where high performance is needed. Jingo provides a similar developer experience but with major performance benefits.

bet365 Tech

Do You Need Help Migrating / Building an Application? — When it comes to building, maintaining and deploying production level software in Go, there are few companies that have the level of expertise and experience Ardan Labs has. Let’s talk to see if we can augment your development team or help you build a product?

Ardan Labs sponsor

Caddy 1.0 Released: The Go-Powered HTTP/2 Web Server with Automatic HTTPS — A popular Go-powered, production ready Web server that bakes in the latest features like HTTP/2 by default and automatic HTTPS. GitHub repo and 1.0 release notes.

Matt Holt

Faktory 1.0 Released: A High-Performance Background Job System — Faktory, created by the maker of Sidekiq, offers language-independent background job processing, though under the hood it’s built in Go.


chromedp: Drive Browsers using the Chrome DevTools Protocol from Gov0.2.0 has just dropped with a new context-based API and improved stability and performance. Want examples of how to use it? Here you go.

Kenneth Shaw

💻 Jobs

Build Uncompromising Blockchain Infrastructure at Nebulous — Blockchains are here to stay, so let's build them properly. Join an industry leader that's re-decentralizing the Internet.


Have You Tried Vettery? — Vettery specializes in tech roles and is completely free for job seekers. Create a profile to get started.


📘 Articles & Tutorials

Next Level Go Testing — Most of what Tit covers is best practices around how to create tests that can be targeted for the appropriate environment, such as dev vs staging.

Tit Petric

My Vim IDE Setup for Go — A quick way to get going with Vim that starts with just four plugins.


How to Set Up Vuls, an Agentless Vulnerability Scanner Written in Go

DigitalOcean sponsor

Istio Observability with Go, gRPC, and Protocol Buffers-based Microservices — The third in a series about Istio and Kubernetes, this post introduces gRPC for service-to-service communication, along with a gateway proxy for the web client.

Gary A. Stafford

How I Investigated Memory Leaks using pprof on a Large Codebase

Jonathan Levison

▶  A Brief, 4 Minute Introduction to TensorFlow for Gophers

Natalie Pistunovich

▶  gopls + vim = govim“Want all the nice features of VSCode but in Vim8?” From LondonGophers, a talk about gopls (a Go language server) and how it powers working with Go across many different editors, with a focus on vim.

Paul Jolly

🔧 Tools & Code

gowid: Compositional Widgets for Terminal User Interfaces — Things like inputs, layout components, progress bars, etc. Inspired by urwid, which is a Python-based terminal UI library.


go-mod-outdated: A Tool to Find Outdated Dependencies

Pantelis Sampaziotis

Video for Go with Mux — Easily build beautiful video experiences into your Go app with our SDK.

Mux sponsor

Excelize 2.0: A Go Library to Read and Write Excel Documents2.0 includes performance improvements, some API changes, and a few new functions.

360 Enterprise Security Group

vim-go 1.20 Released: The Go Development Plugin for Vim Users — Changelog here.

Fatih Arslan

Gitea: A Self-Hosted Git Service, Built in Go — If you want a variety of GitHub-esque niceties, a Web interface, etc. without the weight of GitLab, this is worth a try. Check out a live instance here.


docker-debug: A Tool to Help with Debugging Running Containers — Introduces a new container into an existing container that joins various useful namespaces of the existing container so you can run debugging tools without having them already installed.


minikeyvalue: A Distributed Key Value Store in Under 200 Lines — The sort of experiment that Go makes a breeze.

George Hotz