Golang Weekly - Tools for writing secure Go code

Plus a look at the 'business' of Go, high performance crawling, and a little Go/Java comparison. |

#​530 — November 5, 2024

Unsub  |  Web Version

Together with  pgAnalyze

Go Weekly

Writing Secure Go Code — A handy article rounding up a variety of resources and techniques to keep in mind in order to write more robust and secure Go apps, including staying up to date with your Go version, leaning on Go’s tools like go vet, and scanning your code for known vulnerabilities.

Jakub Jarosz

🗣️ This post also led to an extensive discussion on Hacker News.

How to Compare Postgres EXPLAIN Plans & Tune Slow Queries — Are slow Postgres queries impacting your Go app performance? Join this webinar to learn how to diagnose and tune them effectively. We'll use pganalyze to walk through how to compare plans & debug common scenarios like inefficient nested loops & missing indexes.

pganalyze sponsor

Checking the Top 10 Million Web Sites with Go — Actually titled ‘27.6% of the Top 10 Million Sites are Dead’, I felt this is really more a look into using Go to do basic scraping at scale. Redis was coupled with Go (along with a lot of hardware) to perform the task in just ten minutes (~17k requests per second). The source has been made public.

Tony Wang

Ranging Over Functions in Go 1.23 — This post discusses several examples of using the new range-over functionality in 1.23, including simple linear iterators, recursive iterators, and a brief word on push vs pull iteration.

Eli Bendersky

▶  The Business of Go — I often skip high level talks to focus on technical ones, but Matt Boyle encouraged me to watch this, and it’s an interesting look at the processes of the Go team and how Go gets treated as a product, rather than just a language. Cameron demonstrates why Go continues to grow and thrive in a space where it’s easy for technologies to go stale.

Cameron Balahan (Google)

Creating a Full-Stack App with Go and React — A look at bringing together the best of the front end and back end into a single app, a contrived ‘Go Eats’ food ordering service.

Mukul Mantosh (JetBrains)

Constraints in Go — John has finished his 4-part series on generics (which started here) with a look at placing constraints on types.

John Arundel

Building Thread-Safe Abstractions in Java vs Go — A look at translating pieces of the SimpleDB implementation from Java into Go, and differences between the concurrency and synchronization primitives the languages provide.

Chris Rybicki

The First Newsletter Dedicated to Product Engineers — Learn the skills and strategies the new generation of product engineers need to succeed.

PostHog sponsor

📄 Writing Integration Tests for a Go CLI App – A look at Luca’s reasonably simple approach involving make, golden files and table driven tests. Luca Pette

📄 How to Build Smaller Container Images: Docker Multi-Stage Builds – Including “How NOT to organize a Go application’s Dockerfile”. Ivan Velichko

📄 Why is Go's Compilation Speed So Fast? Wild Thorn

🛠 Code & Tools

vgt: The 'Missing Tool' for Visualizing Go Tests? — A browser-based tool for visualizing Go test results – described as being helpful for understanding the parallelism of tests along with identifying slow ones.

Robert Laszczak

jsony: A 'Blazing Fast', Safe JSON Serialization Library — Pure Go, reflection free, and faster than the stdlib approach, but you do have to lay everything out just right.

Orsinium Labs

pg_flo: Stream, Transform, and Route Postgres Data in Real-time — Offers a set of filters and transformations that can make moving data between, say, production and staging databases simple using one of two modes: copy-and-stream or stream-only. Uses NATS and Postgres’s replication.

Shayon Mukherjee

Neotest: A Framework for Interacting with Tests from NeoVim — If you’re a NeoVim user, this is for you. It’s written in Lua but neotest-golang extends it to support working with Go-based tests.

Rónán Carrigan et al.

📰 Classifieds

Open Source Authorization: Zanzibar-inspired permissions, built for Go.


How Google handles authorization at scale. A technical comparison of Google's Relationship-based authz system and Oso's Authz as a Service.


🪝Hookdeck: The Amazon EventBridge Alternative. Receive, authenticate, transform, filter, route, and send messages across your EDAs.

  • ☸︎ Watermill 1.4 – Library for building message/event-driven apps: "Think of it like an HTTP router but for messages."

  • 💋 Charm Lip Gloss 1.0 – Style definitions for nice terminal layouts. An 'honorary' 1.0 release indicating the project is now stable.

  • 🤖 Gobot 2.4 – The robotics / drones / IoT framework. Now supporting newer versions of Go.

  • sqlrange 1.0 – Use Go 1.23's range functions with database/sql.

  • Slack Dumper 2.6 – Generate Slack exports without admin privileges.

  • Asynq 0.25 – Reliable, efficient Redis-backed distributed task queue.

  • fsnotify 1.8 – Cross-platform file system notifications in Go.

  • Ginkgo 2.21 – Mature testing framework.

n

Older messages

Awesome Go gets even more awesome

Tuesday, October 29, 2024

Plus why Go developers should try Odin, and maybe Rust too.. | #​529 — October 29, 2024 Unsub | Web Version Together with WorkOS Go Weekly Awesome Go: Almost 3000 Categorized Go Resources — A

Speeding up with SIMD and Go assembly

Tuesday, October 22, 2024

Plus some Go code generation magic, test parallelism, and working with Excel spreadsheets. | #​528 — October 22, 2024 Unsub | Web Version Together with Ardan Labs Go Weekly A Taste of Go Code Generator

Pure Go HTML view components

Sunday, October 20, 2024

Plus a new tool to generate Go projects, making your network worse deliberately, and Russ Cox on passing on the Go torch. | #​527 — October 15, 2024 Unsub | Web Version Together with Blacksmith Go

Microsoft goes Go for SQL Server's CLI

Tuesday, October 8, 2024

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

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

You Might Also Like

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

💻 Issue 446 - Great things about Rust that aren't just performance

Thursday, January 9, 2025

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

JSK Daily for Jan 9, 2025

Thursday, January 9, 2025

JSK Daily for Jan 9, 2025 View this email in your browser A community curated daily e-mail of JavaScript news Advanced Query Building Techniques in Angular: Queries with Different Connectors The Query