#410 — May 6, 2022 |
The Go Weekly Newsletter |
📄 The Design Decisions Behind the Go Language and Environment — In an article for the ACM, the creators of Go discuss the origins of the language, their goals in creating it, and the design choices they made leading up to the first major change to the language in a decade (we won't spoil, but you know what it is..) Cox, Griesemer, Pike, Taylor, and Thompson |
An Experience Report After 6 Months of Go — A developer at Sourcegraph reflects on his experiences in working with Go after nearly three years of C++. This is beautifully presented and explained - more posts like this please. Varun Gandhi |
Troubleshoot and Optimize Golang App Performance with Datadog APM — Datadog’s APM generates detailed flame graphs to help you identify bottlenecks and latency in your Golang code. Navigate seamlessly between app traces, logs and metrics to troubleshoot and optimize performance issues fast. Try Datadog APM free. Datadog APM sponsor |
A Gentle Introduction to Generics in Go — Oh no, another article about generics, I hear you cry. Well yes, but this is particularly beginner friendly and led by the code – a good, tight summary. Dominik Braun |
Breaking the Monolith at Twitch — Twitch is one of a large group of successful companies that began life running as a monolithic Ruby on Rails app but they’ve written about where they went from there, how Go entered the picture, and their current practices. Mario Izquierdo (Twitch) |
Quick bits:
|
|
Building a Serverless Backend for Slack on AWS Lambda — A straightforward tutorial covering building a Slack app that integrates with the Giphy API for animated GIF goodness. It has an up to date twist, too, by using Lambda’s new ‘function URL’ feature rather than using API Gateway. The code itself is in Go. Abhishek Gupta |
▶ 'Go and PHP Sitting in a Tree...' — Roses are red, violets are pretty.. can Go help your PHP be less sluggish? This show focuses on RoadRunner, a high performance PHP app server and load balancer built in, yes, Go. Go Time Podcast podcast |
🛠 Code & Tools |
Go Cover Treemap: Generate Treemaps for Go Cover Profiles — Nikolay Dubina |
Generic Data Structures 1.0 — A collection of generic data structures written in Go covering things like B-trees, hashmaps, multimaps, double linked lists, and stacks. Zachary Yedidia |
Introducing ArcticDB: An Embeddable Column Database — Polar Signals came to the conclusion (detailed here) that continuous profiling requires a columnar database, so they built it in Go. Frederic Branczyk (Polar Signals) |
TinyGo 0.23.0: Now with Support for Go 1.18 — TinyGo is a Go compiler specifically targeting embedding systems and WebAssembly. v0.23.0 adds LLVM 14 support, Go 1.18 support (though not all language features), support for a few new boards, and improved RP2040 support too. TinyGo |
Keep Up with the Latest in Startups, Tech, & Programming in Just 5 Min TLDR Newsletter sponsor |
go-github v44.0: A Go Client for the GitHub v3 API — For the REST API. For the v4 GraphQL API use this instead. |
go-mysql 1.5: A Pure Go Library for the MySQL Network Protocol — Not your typical MySQL client but for when you need to interact with other clients and servers at a low level. siddontang |
ListMonk: Self-Hosted Newsletter and Mailing List Manager
|