#​368 — June 25, 2021

Unsubscribe  |  Read on the Web

Go Weekly

Lingua 1.0: A Natural Language Detection Library — Boasts being the most accurate natural language detection library in the Go ecosystem, although there aren’t many to choose from. This one supports 75 languages so far and can work with both short and long texts.

Peter M. Stahl

The Go Collective on Stack Overflow — 'The Go collective' sounds a bit like the name of a gang (a cool one, honest) but it’s really a partnership between the Go project and Stack Overflow to offer an official place to ask and answer Go related questions, coupled with the ability for the Go team to mark various answers as trusted/approved.

Steve Francia

Forrester New Wave: Feature Management & Experimentation — [Download Today] Learn why leading industry analyst firm Forrester has identified Feature Management and Experimentation as the latest must-have DevOps tools to enable teams to create faster release cycles while staying connected with customers.

LaunchDarkly sponsor

IN BRIEF:

  • Caddy v2.4.3 has been released. Why's that exciting? It's their 100th release. Congratulations!

  • According to the State of WebAssembly 2021 report, Go doesn't appear to be particularly popular when it comes to forthcoming WebAssembly projects, at least compared to Rust, C++, or AssemblyScript.

Reducing Memory Allocations in Go — Christopher works to remove ALL heap allocations from a function and prove that “premature optimization is the root of all evil” is, well, premature. Whenever the word unsafe pops up, however, you do need to take care.

Christopher Tarry

Go 1.17 is Deprecating the Traditional Use of go get — Technically it was deprecated in 1.16 but 1.17 is stressing the point even more, especially as old habits often die hard and the behavior is changing further in 1.18. Chris suggests go get could in theory become an alias for go install ...@latest, perhaps.

Chris Siebenmann

'I Wrote A Book About Go' .. and Here's Why — Alex is well known in the serverless space, particularly for OpenFaas, and shares the news that he’s written his first Go ebook (Everyday Golang) along with why. It’s not cheap but does have a nice refund policy.

Alex Ellis

How to Correctly Use Basic Authentication in Go — Sometimes basic auth is all you need, but there are considerations to understand.

Alex Edwards

▶  Giving TDD a Go — Love it or hate it, Test Driven Development (TDD) can help you write better code, even if you don’t use it for everything. This week on Go Time, the panel dig into their experiences, provide some tips and tricks, gotchas, and best practices.

The Go Time Podcast podcast

Why Tracing Might Replace (Almost) All Logging

Lightstep sponsor

▶  How to Create Custom Handlers for Azure Functions in Go — Custom handlers are lightweight web servers that receive events from the Azure Functions host meaning they can be implemented in (almost) any language (such as Go, in this case).

Microsoft Azure

Scalable Event Streaming with Redis and Go — Here, the stream (trades) is dumped into a Redis queue which is read (and rate limited) and sent to Ably, a publish/subscribe SaaS platform.

Thomas Camp (Ably)

🛠 Code & Tools

Survey: A Library for Building Interactive Prompts — Got questions to ask your users? Build interactive prompts with full support for Windows and POSIX-compliant terminals.

Alec Aivazis

yamyams: Framework for Replacing Kubernetes YAML with Raw Go — My first question was “Why?” but after seeing the examples and realizing you can now test your apps, enforce policy, and use all the goodness of Go, I get it.

Kris Nóva

Search Your Code. ALL of It, Everywhere — Sourcegraph is the one tool to find & fix things across all your code. Any code host, any repo, any language. Try it now.

Sourcegraph sponsor

Smocker: A Simple and Efficient HTTP Mock Server — Smocker uses YAML to define mocks and responses, but there is a handy user interface, as well. Use it in your dev and test environments to cut out external services.

Thibaut Rousseau

Musgo: Binary MUS Serialization with Validation Support — A code generator for serializing and deserializing Go objects.

ymz-ncnk

Jobs

Senior Software Engineer (Go/Docker/K8s) — You're ambitious, curious, and mission-driven. Put your technical leadership to work on the next generation of industrial technologies.
Fathom5

Who's ready for a quick game of 'bug or feature'? 😆