Golang Weekly - Microsoft goes Go for SQL Server's CLI

Plus new ways to deploy Go apps, reflecting on reflection, and Windows gets high resolution timers in Go. |
Together with  Frontend Masters logo

#​526 — October 8, 2024

Unsub  |  Web Version

Go Weekly

Reflecting on Go Reflection — Truly a reflective opinion piece, and probably a divisive one too. As a programmer who chooses to use “the most mundane features” of any language, Go’s reflect package wasn’t on Neil’s list of things to try, but he “fell into the reflection pool” and.. he’s still not a fan.

Neil Macneale

I'm Glad I Did It in Go — Thorsten, author of Writing an Interpreter in Go, reflects on how Go was the right language for the book, eight years on.

Thorsten Ball

Elevate Your Backend Skills — Whether it's Python, Go, TypeScript, or AWS, you can gain fundamental knowledge across multiple programming languages, expanding your skillset via our growing range of learning paths and expert-led video courses.

Frontend Masters sponsor

sync.Map: The Right Tool for the Right Job — The latest in Phuong’s popular, illustrated guide to concurrency options in Go digs into sync.Map, a concurrency-safe map for reading and writing across multiple goroutines without requiring explicit locks. It’s not always the perfect choice, though, as he discovers.

Phuong Le

IN BRIEF:

Go Gets High-Resolution Timers on Windows“The Go Windows port added support for high-resolution timers in Go 1.23, boosting resolution from ~15.6ms to ~0.5ms.”

Quim Muntal (Microsoft)

Writing a Circuit Breaker in Go — When you need a mechanism to stop a failing operation being tried over and over, a circuit breaker provides a graceful way to detect failures and recover from them with a cooldown period.

Redowan Delowar

Using Go Embed — The go:embed directive, around since Go 1.16, allows you to embed static files into your binary. But did you know that you can embed entire directories or files into a struct?

Matt Boyle

Distributed Transactions in Go: Read Before You Try — How to approach transactions that need to span more than one service.

Miłosz Smółka

Product for Engineers: A Newsletter Helping Flex Your Product Muscle — Product for Engineers details the skills and strategies product engineers need to succeed.

PostHog sponsor

📄 Implementing OpenSSL-Backed Go Cryptographic Algorithms Derek Parker (Red Hat)

📄 Some Notes on Upgrading HugoHugo is a popular Go-based static site generator. Julia Evans

📄 Securing gRPC Services with JWT Authentication in Go Chris Shepherd

🛠 Code & Tools

Kamal 2: Thou Need Not PaaSKamal is a container-based deployment tool from 37Signals, best known for their work on Ruby on Rails. It’s language agnostic though, and ▶️ the screencast demo shows off deploying a simple Go app quickly, before moving on to a Ruby example. Certainly a viable new deployment option for Go apps on self-managed servers.

David Heinemeier Hansson

Sidekick: Bare Metal to Production Ready in Minutes — I haven’t tried this yet, but am itching to do so ASAP. Sidekick aims to give you a Fly.io-style single command deployment process out of the box for any VPS you have to hand. Inspired by Kamal (above) but is written in Go.

Mahmoud Mousa

📰 Classifieds

Hookdeck: Stripe-level DX for all your webhooks.


Learn how to build fine-grained authorization for your Go application using open-source software, directly from the founders and team behind SpiceDB.

go-pretty: Pretty Print Tables, Lists and Text on the Terminal — Utilities to prettify console output of tables, lists, progress-bars, text, etc. with a heavy emphasis on customization.

Naveen Mahalingam

Giu 0.9: A Dear ImGui-Based Cross Platform GUI Framework — Create GUI apps in Go on top of the Dear ImGui GUI library. v0.9 isn’t a big release but fleshes out the framework’s features and adds more documentation.

Allen Dang

Watermill: Library for Building Event-Driven Apps — A library for working with message streams (over numerous channels like Kafka, RabbitMQ, HTTP or even MySQL binlogs) to build event driven apps.

Three Dots Labs

xmlquery: An XPath Library for Querying XML Documents — For plucking out all elements with certain names or attributes, say.

antchfx

  • tk 9.0 – CGo-free cross platform GUI toolkit for Go, a la Tkinter.

  • River 0.13 – Fast and reliable Postgres-powered background jobs for Go.

  • OSV-Scanner 1.9 – Dependency vulnerability scanner.

  • go-github 66.0 – Client library for the GitHub v3 API.

  • Git Town 16.4 – Git branch management tool.

  • Ebiten 2.8.1 – Go's simple 2D game engine.

n

Older messages

A compile-time function evaluation experiment

Tuesday, October 1, 2024

Plus Go's great garbage collection guide, a dependency visualizer, and a Go-powered hex editor. | #​525 — October 1, 2024 Unsub | Web Version Together with WarpStream Go Weekly Prep: Compile-Time

A type by any other name would smell as sweet..

Tuesday, September 24, 2024

Plus both WIRED and the ACM take a look at Go, scripting Go with Prolog, and a faster linter for Go code. | #​524 — September 24, 2024 Unsub | Web Version Together with Three Dots Labs Go Weekly

Go's great for working with LLMs

Tuesday, September 17, 2024

Plus running Go in the browser, using Go for scripting, and Go's ranking against other languages. | #​523 — September 17, 2024 Unsub | Web Version Together with WorkOS Go Weekly Building LLM-

Why Go's telemetry is worth enabling

Tuesday, September 10, 2024

Plus the latest Go survey, live profiling, and how Go tests its test runner. | #​522 — September 10, 2024 Unsub | Web Version Together with Frontend Masters logo Go Weekly Share Your Feedback in the

Bubble Tea brews up a 1.0 release

Tuesday, September 3, 2024

Plus a Go-powered blogging system, text editor, and JavaScript runtime all walk into a newsletter.. | #​521 — September 3, 2024 Unsub | Web Version Together with Ardan Labs Go Weekly Go 1.23's New

You Might Also Like

Invitation to the Event Sourcing workshop

Friday, January 10, 2025

Hey! I'm usually not making New Year commitments. ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

SWLW #633: AI and cognitive offloading, The story in your head, and more.

Friday, January 10, 2025

Weekly articles & videos about people, culture and leadership: everything you need to design the org that makes the product. A weekly newsletter by Oren Ellenbogen with the best content I found

Data Science Weekly - Issue 581

Thursday, January 9, 2025

Curated news, articles and jobs related to Data Science, AI, & Machine Learning ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

💻 Issue 444 - Check Out My New CV as a Full Stack .NET Developer!

Thursday, January 9, 2025

This week's Awesome .NET Weekly Read this email on the Web The Awesome .NET Weekly Issue » 444 Release Date Jan 09, 2025 Your weekly report of the most popular .NET news, articles and projects

💎 Issue 451 - Useful things you can do with Rails console

Thursday, January 9, 2025

This week's Awesome Ruby Newsletter Read this email on the Web The Awesome Ruby Newsletter Issue » 451 Release Date Jan 09, 2025 Your weekly report of the most popular Ruby news, articles and

💻 Issue 451 - The best way to iterate over a large array without blocking the main thread

Thursday, January 9, 2025

This week's Awesome JavaScript Weekly Read this email on the Web The Awesome JavaScript Weekly Issue » 451 Release Date Jan 09, 2025 Your weekly report of the most popular JavaScript news, articles

📱 Issue 445 - 🚀 Your Go-To List of 25 Swift Tools and Libraries for Any Project

Thursday, January 9, 2025

This week's Awesome iOS Weekly Read this email on the Web The Awesome iOS Weekly Issue » 445 Release Date Jan 09, 2025 Your weekly report of the most popular iOS news, articles and projects Popular

💻 Issue 369 - 17 Tips from a Senior React Developer

Thursday, January 9, 2025

This week's Awesome React Weekly Read this email on the Web The Awesome React Weekly Issue » 369 Release Date Jan 09, 2025 Your weekly report of the most popular React news, articles and projects

💻 Issue 451 - Mastering Express.js: A Deep Dive

Thursday, January 9, 2025

This week's Awesome Node.js Weekly Read this email on the Web The Awesome Node.js Weekly Issue » 451 Release Date Jan 09, 2025 Your weekly report of the most popular Node.js news, articles and

📱 Issue 448 - The Swift Runtime: Your Silent Partner

Thursday, January 9, 2025

This week's Awesome Swift Weekly Read this email on the Web The Awesome Swift Weekly Issue » 448 Release Date Jan 09, 2025 Your weekly report of the most popular Swift news, articles and projects