#261 — May 9, 2019

Read on the Web

Golang Weekly

Caire: A Content-Aware Image Resize Library — ‘Content-aware’ scaling (such as in Photoshop) lets you resize images in a way that maintains the integrity of the subject of the image. What’s neat here is we get a full explanation of how it works before being handed a library to do it all for us ;-)

Endre Simó

The Hows and Whys of Building Table-Driven Tests — Most Gophers already do prefer them, so Dave expounds on the subject by adding some best practices and packages that make them even better.

Dave Cheney

Distributed Tracing for Go Apps with Datadog APM — Datadog APM provides real-time performance data from your Go apps, so you can find and fix bottlenecks faster. Free 14-day trial.

Datadog sponsor

Go 1.12.5 and Go 1.11.10 Released — These are (very) minor releases to fix a handful of minor bugs.

Andrew Bonventre

The Go Team Wants Your Feedback If You Work At A Large Company — The Go team are always good about soliciting feedback from the community, and if you work at a company with 1000 employees or more, here’s your turn to share any pain points.

Go Core Team

Go Play Space: An Experimental Go Playground — An experimental alternative to the Go Playground that includes syntax highlighting, themes, and keyboard shortcuts. It also includes a turtle graphics mode for creating cool visualizations like this where the Go gopher draws out your commands(!)

Igor Afanasyev

🎧 Podcast Corner

The Go world needs more podcasts! But thankfully Go Time has recently come out of hiatus, and I wanted to feature some recent interesting episodes:

💻 Jobs

Product-Focused & Driven Frontend Engineers in Stockholm — Join our 30-person team of A-players, solve problems at global scale and help us become the most trustworthy online health company.

Diet Doctor Sweden AB

Find A Golang Job Through Vettery — Vettery specializes in tech roles and is completely free for job seekers.

Vettery

📘 Articles & Tutorials

How to Deploy a Buffalo App on Google's App EngineBuffalo is a neat framework for building full-stack webapps using Go on the backend.

Tomislav Biscan

Delaunay Image Triangulation — If you enjoyed the content-aware scaling feature (above) this is more graphical goodness from the same author.

Endre Simó

What Is the Difference Between Metrics and Events? — Gather data from our systems when monitoring technologies and tools. We want to see database logs and network traffic side-by-side.

InfluxData sponsor

▶  Getting Started with Buffalo — Buffalo is a neat framework for building full-stack apps with a Go backend (as we’ve already mentioned above!) and here’s a full tutorial.

Mark Bates

Error Handling in Go — Some error related best practices and tips, mostly aimed at more beginner Go developers.

Alon Abadi

▶  Concurrency in Go: A Simple, Practical Example — A 15 minute primer based around building a simple HTTP status checker.

Rohit Awate

🔧 Tools & Code

GoReleaser: A Tool for Delivering Go Binaries Quickly — Builds Go binaries for several platforms, creates a GitHub release and then pushes a Homebrew formula.

GoReleaser

Bus: A 'Minimalist' Message Bus Implementation for Internal Communication — Inspired by a similar package for Elixir.

Mustafa Turan

Get the Fastest Website Deployments. Get Started Free

Buddy sponsor

Flipt: A Feature Flag System for Running Experiments — Add ‘feature flag’ support to your existing applications, with a simple, single UI and API. More info on the official homepage.

Mark Phelps

Gin 1.4.0: A Performance-Focused HTTP Web Framework — Not new but there’s a new release and it continues to be popular.

Gin-Gonic

rqlite 4.5.0: Using SQLite as a Distributed Database — A distributed relational database, which uses SQLite as its storage engine.

rqlite

Gameboy.Live: A Gameboy Emulator Built in Go — It includes a mechanism for playing games over telnet too.

Aaron Liu