#207 — April 19, 2018

Read on the Web

Golang Weekly

Using Go with Jupyter Notebook

Interactive Go Programming with JupyterJupyter Notebook is a fantastic system for creating interactive documents that contain live code (commonly Python) that can produce visualizations and more. Now you can use Go with it, too.

Yu Watanabe

How to Embed Python for a Go Application — A practical example of using Cgo to embed CPython for use from a Go program.

Massimiliano Pippi

Fix Production Bugs in Seconds with Sentry — Relying on users to report errors? Use Sentry to fix production issues in real time, right in your existing workflow. Cut time to resolution from 5 hours to 5 minutes. Sentry is 100% open source and loved by 500K developers. Sign up for free.

Sentry sponsor

Parcello: A Resource Bundler / Embedder — A simple resource management tool for embedding assets (e.g. scripts, images) into your binary.

Phogo Labs

Academic and Research Papers About or Using Go — A frequently updated page on the Go repo wiki with links to papers that are about Go or use it as their implementation language. The latest is Inferring and Asserting Distributed System Invariants (PDF).

Damian Gryski

NGINX Unit 1.0: An App Server That Supports Go (and Others) — NGINX Unit, a dynamic Web and app server, is now production‑ready. It’s configured via a REST API (no static configs) and handles apps built in multiple backend languages (Go, Perl, PHP, Python and Ruby) simultaneously.

Owen Garrett

💻 Jobs

Software Engineer - Platform — LA-based startup developing an applied artificial intelligence platform that reduces human interaction in data transformation.

DeepCurrent

Go Expert? Sign Up for Vettery — Top developers can get 5+ interview requests during their first week on Vettery.

Vettery

📚 Articles & Tutorials

Go on Very Small Hardware, Part 2 — We featured Part 1 a few weeks ago and now the author goes (a lot) further coding Go on a tiny ARM-based board.

Michał Derkacz

Concatenate Strings Efficiently with a 'String Builder'strings.Builder was added in Go 1.10 to efficiently build up strings.

Stefan Nilsson

Building for the Modern Web Is Really, Really Hard — "When I started working on the web back in the mid-90s, I had no idea how easy we all had it."

O’Reilly Media sponsor

Five Things That Make Go Fast — A few years old now, this is still a good dive into why Go performs so very well.

Dave Cheney

Implementing Passwordless Auth for a Go HTTP API

Nicolás Parada

Deploying a Distributed Face Recognition Go App using Kubernetes

Gergely Brautigam

Exploring Prometheus Go Client Metrics

Povilas Versockas

Things to Consider When Writing Webapps with Go — Covers many of the topics you’d expect, such as middleware, Context, routing, and error handling.

JT Olio

“Exceptional” Go — If you’ve heard that Go doesn’t support exceptions, well, you’ve heard wrong.

Matt Klein

Access Powerful CPUs with Reliable Performance Via Optimized Droplets

DigitalOcean sponsor

Building Go Projects with Docker on Gitlab CI

Sean Drumm

Regarding 'Configuring sql.DB for Better Performance'

KLabGames Tech Blog

🔧 Code, Tools & Demos

Spaniel: Time Span Handling for Go — Including merging overlapping timespans and finding intersections between multiple timespans.

Senseye

Monitoring & Distributed Tracing for Go Apps. Try Datadog Free

Datadog sponsor

Rewind: A High Performance Command Log Library

Kelly Sommers

duit: A Pure Go, MIT-Licensed UI Toolkit — Currently experimental/WIP. Cross-platform.

Mechiel Lukkien

Sloc, Cloc and Code (scc): A Fast Accurate 'Code Counter' — For multiple languages, counts lines of code and estimate code complexity.

Ben Boyter

Kaniko: Build Container Images in Kubernetes

Google