Golang Weekly - Flight recording for Go apps

Plus fail-safe HTTP clients, Hugging Face transformers in Go, and writing better READMEs. |

#​500 — March 19, 2024

Unsub  |  Web Version

Together with  Three Dots Labs

Go Weekly

More Powerful Go Execution Traces — Over the last two releases, the Go team has worked to fix and enhance execution tracing, resulting in a 10x drop in overhead and much more scalable traces. These enhancements have spawned two experimental features: the ability to constantly trace execution (i.e. so-called ‘flight recording’) and a trace reader API.

Michael Knyszek

Learn Building Scalable & Resilient Go Backend — The next edition of Go Event-Driven starts soon. Learn one of the hottest skills and stand out from the crowd.

Three Dots Labs sponsor

Measuring a System’s Performance with Go — You can run up a benchmark in any programming language, but Go offers some features to make it relatively easy to measure CPU and memory performance, memory usage, and even dig into some of Go’s optimizations. Lots of examples here.

Daniel Lemire

The One Billion Row Challenge (Again!) – From 95s to 1.96s — Gunnar Morling’s One Billion Row Challenge to read and aggregate stats from a one billion line file has caught on! We’ve linked to Shraddha Agrawal and Ben Hoyt’s solutions before, but here’s a very in-depth look at going even further with lots of neat lower level details.

Renato Pereira

QUICK BITS:

Debugging a Go Bug with Non-Blocking Reads — A case where things acted differently on different operating systems, which led to a quick patch in Go. But, if you can’t wait, there’s a simple workaround.

Scratch Data

For Loops and More in Gofor loops may seem like a beginners' topic, but there’s a lot to understanding their full use. How do you handle multiple loop variables? When should you use label breaks? How do range loop semantics affect updating loop structs? Miki shows off some examples.

Miki Tebeka (Ardan Labs)

How to Write a '4000 Stars' GitHub README for Your Project — The creators of the Go-powered Daytona project have a few tips to share about creating good READMEs.

Ivan Burazin

Let's Embed a Go Program into the Linux Kernel — Probably not something you'll generally want to do, but..
Richard Weinberger

Using GitHub Actions to Add Go Binaries to a Release
Rob Allen

How I Built My Own Go Package Index
Ozan Sazak

🛠 Code & Tools

Valgo 0.3: An Expressive Validator Library — Type-safe and extensible validator library built upon generics. “Valgo differs from other validation libraries in that the rules are written in functions and not in struct tags. This allows greater flexibility and freedom when it comes to where and how data is validated.”

Cohesive Stack

Hugot: Hugging Face Transformer Pipelines in Go — A project with a goal of making it easy to run Hugging Face transformer pipelines from Go, without needing to call out to Python or external APIs (note it’s not pure Go – it leans on ONNX Runtime). It supports only ONNX models and a few pipelines so far.

Knights Analytics

Failsafe: Fault Tolerance and Resilience Patterns — A library for building fault-tolerant apps where you can wrap code in resilience policies such as Retry, CircuitBreaker, RateLimiter, Timeout, and Fallback. We linked to this months ago, but as of v0.6, it now can integrate with HTTP clients.

Jonathan Halterman

Hookdeck: The Amazon EventBridge Alternative — Receive, transform, filter, route, and send messages across your EDA with an event gateway for engineering teams.

Hookdeck sponsor

Konf 1.0: A Flexible Configuration Loader — If you don’t want to be tightly coupled to any one source of configuration settings for your app, Konf might be for you – it’ll work with local sources like files and environment variables, but also with things like S3, AWS AppConfig, and GCP Secret Manager.

Kuisong Tong

Codoworks Go Boilerplate: Prod-Ready RESTful API Boilerplate — An opinionated boilerplate app based around Echo to get CRUD APIs up and running quickly.

Codoworks

  • wazero 1.7 – Zero dependency WebAssembly runtime for Go. A significant upgrade with the final release of a new optimizing compiler.

  • fx 33.0 – The popular JSON viewer and processor gains terminal autocomplete.

  • Toxiproxy 2.9 – TCP proxy to simulate chaotic network conditions.

  • Gonum 0.15 – Numeric libraries for Go (algebra, probability, etc.)

  • Resty 2.12 – Simple HTTP and REST client library.

  • SCS 2.8 – HTTP session management in Go.

  • go-ora 2.8.10 – Pure Go Oracle Database driver.

  • Bloom 3.7 – Bloom filter implementation.

n

Older messages

Are single letter variables that bad?

Tuesday, March 12, 2024

Plus we talk gRPC, logical replication, high speed packet sending, and even un peu de Français... | #​499 — March 12, 2024 Unsub | Web Version Together with Ardan Labs Go Weekly High-Speed Packet

How things work at Charm

Tuesday, March 5, 2024

Plus another try at memory arenas, processing PDFs with Go, and some advice for new Go programmers. | #​498 — March 5, 2024 Unsub | Web Version Together with Tuple logo Go Weekly 📊 How I Keep Myself

Becoming the engineering manager of the Go team

Tuesday, February 27, 2024

Plus thinking about enums, colors, email testing, LLMs, and even jQuery.. | #​497 — February 27, 2024 Unsub | Web Version Together with Ardan Labs Go Weekly Robust Generic Functions on Slices — The

Go is popular.. again!

Tuesday, February 20, 2024

Plus a look at `goto`, and reflecting on Go 1.22's http.ServeMux enhancements. | #​496 — February 20, 2024 Unsub | Web Version Together with Tuple logo Go Weekly The HTTP Routing Enhancements in Go

The one with Go 1.22 everywhere

Tuesday, February 13, 2024

Plus feeding a hungry mouse, why to start with the standard libraries, and how Mat Ryer writes Go HTTP services after all these years. | #​495 — February 13, 2024 Unsub | Web Version Together with

You Might Also Like

WP Weekly 192 - WP Biz - Brands Merged, Woo Cart Popup, Fastest Hosting

Monday, May 6, 2024

Read on Website WP Weekly 192 / WP Biz The 'business of WordPress' is buzzing for sure, be it the acquisition of plugins or the massive Envato ownership change. Also, WordPress content brands

SRE Weekly Issue #423

Monday, May 6, 2024

View on sreweekly.com A message from our sponsor, FireHydrant: FireHydrant is now AI-powered for faster, smarter incidents! Power up your incidents with auto-generated real-time summaries,

⚠️ Avoiding AI Scams on Social Media — An Open Source Google Photos Alternative

Sunday, May 5, 2024

Also: Reviewing the Customizable Drop Mechanical Keyboard, and More! How-To Geek Logo May 5, 2024 📩 Get expert reviews, the hottest deals, how-to's, breaking news, and more delivered directly to

Daily Coding Problem: Problem #1432 [Medium]

Sunday, May 5, 2024

Daily Coding Problem Good morning! Here's your coding interview problem for today. This question was asked by Snapchat. Given the head to a singly linked list, where each node also has a “random”

PD#572 Good Ideas in Computer Science

Sunday, May 5, 2024

Ideas every programmer likes and why Garbage Collection and Object Oriented Programming don't count ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

RD#454 API Layer & Fetch Functions

Sunday, May 5, 2024

ixing API and UI code quickly leads to messy and unmaintainable code ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

The Shiny Toy Syndrome & Tiny macOS utility apps I love

Sunday, May 5, 2024

Lex launching its redesign, Raycast shares another monthly update packed with AI updates, prompts should be designed not engineered, and a lot more in this week's issue of Creativerly. Creativerly

Hyundai antes up $1B for AV startup Motional and Elon unplugs the Tesla Supercharger team

Sunday, May 5, 2024

Plus, layoffs come for Luminar, Fisker and Ola View this email online in your browser By Kirsten Korosec Sunday, May 5, 2024 Image Credits: Motional Welcome back to TechCrunch Mobility — your central

C#504 Adventures serializing absolutely everything in C#

Sunday, May 5, 2024

A fantastic journey porting Newtonsoft.Json to System.Text.Json ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

Sunday Digest | Featuring 'Which City Has the Most Billionaires in 2024?' 📊

Sunday, May 5, 2024

Every visualization published this week, in one place. Visual Capitalist Sunday Digest logo May 5, 2024 | View Online | Subscribe | VC+ The Best of This Week's Visuals Presented by Voronoi: The