Golang Weekly - How things work at Charm

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 Alive Using Go — A look into a fascinating use of open source, medical devices, and Go to help a type 1 diabetic monitor their blood glucose levels and alert on anomalies, including sending messages to third parties when necessary.

Matt Boyle

for Loop Semantic Changes in Go 1.22: Be Aware of the Impact — Tapir likes the new semantics with for/range loops, but isn’t a fan with more traditional for loops. This post brings us up to speed with the changes here and digs into some examples that show off things to watch out for.

Tapir (Go 101)

Pairing Combines the Best Parts of In-Person and Remote Work — Tuple "makes pair programming with co-workers and friends fun again". Try it for free and find out why staff engineers at Figma can't stop talking about Tuple.

Tuple sponsor

Go 2022-2024 and Beyond: Go's Engineering Director on the Role of AI — Last week, we enjoyed Go’s engineering director blogging about how he got into management and Go’s early growth – now he’s thinking about how Go has matured in more recent years and ponders how AI is going to shake things up.

Sameer Ajmani

QUICK BITS:

The Impact of Pre-Allocating Slice Memory on Performance — The author wanted to establish, in numbers, how pre-allocating memory improves performance using quantitative measurements and tools for automated detection.

Oilbeater

Building Reliable Applications with Durable Execution — Learn about the concept of durable execution, which is used to solve a wide range of problems in distributed systems.

Temporal Technologies sponsor

Simpler, Composable HTTP Handlers using Generics
Willem Schots

When Kubernetes and Go Don't Work Well Together
Emin Laletovic

Some Advice for Newer Go Programmers
Ewan Valentine

🛠 Code & Tools

📄 pdfcpu 0.7: A PDF Processing and Manipulation Library — You can validate and optimize PDFs, split them, merge PDFs together, extract elements, and more. Apache 2.0 licensed. GitHub repo.

pdfcpu

fgprof 0.9.4: A Full Sampling Profiler for Gopprof is the go-to tool for profiling Go code, but it only profiles ‘on-CPU’ time. fgprof can work alongside pprof and measure ‘off-CPU’ time (such as that spent on IO) too so you can see the bigger picture.

Felix Geisendörfer

Nuke: A Memory Arena Implementation for Go — A package to provide memory arenas in Go was proposed two years ago and resulted in an initial implementation which was put on hold. Nuke takes another run at the idea and even includes a concurrent arena implementation.

Miguel Ángel Ortuño

Huma: Build APIs Backed by OpenAPI and JSON Schema — Huma is a micro-framework for creating HTTP REST or RPC APIs leveraging common standards like OpenAPI.

Daniel Taylor

📰 Classifieds

🪝Hookdeck: A managed reliability & observability layer for webhooks & async messaging. Receive, transform, route, & deliver events at scale.


The Ultimate Guide to Debugging With Go – Most senior Go engineers are experts at debugging production systems. You can level up your skills with this brand new course from Matt Boyle.

TinyTest: The Only(?) Assertion Library That Works with TinyGo — Instead of using reflection, it uses generics for comparing values. (It works with regular Go too, of course.)

Orsinium Labs

Polaris: A New, Minimal Workflow Orchestrator for Go — If you have a multi-step workflow where each step depends upon others, a system like Polaris can help you apply some structure to the situation.

Harshad Manglani

EchoVault: A Go-Based Distributed In-Memory Data Store — It uses Redis’s RESP protocol, so can be used via existing Redis client libraries.

EchoVault

n

Older messages

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

'I don't scoff at 2% improvements'

Tuesday, February 6, 2024

Plus a brief history of dependency management in Go, and the Go survey is still open. | #​494 — February 6, 2024 Unsub | Web Version Together with Crunchydata Go Weekly Testing Out Profile-Guided

Go 1.22 Release Candidate 2

Tuesday, January 30, 2024

Plus the latest Go survey, the future of JSON in Go, and Mat Ryer serenades us with Go docs. | #​493 — January 30, 2024 Unsub | Web Version Together with Ardan Labs Go Weekly The Latest Go Developer

You Might Also Like

⚠️ 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

The dark side of startup accelerators

Sunday, May 5, 2024

Plus: No easy solution to AI hallucinations View this email online in your browser By Anthony Ha Sunday, May 5, 2024 Image Credits: Bryce Durbin This Week, TechCrunch dug into the struggles at two

Android Weekly #621

Sunday, May 5, 2024

View in web browser 621 May 5th, 2024 Articles & Tutorials Sponsored Genius Scan SDK: a document scanner in your app Embed a reliable document scanner with OCR in your app, enabling your customers