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

🎧 Why You Should Buy a Mac Mini, Not an iMac — Your Next Headphones Should Be Wired

Tuesday, November 5, 2024

Also: Using Copilot to Improve Excel, and More! How-To Geek Logo November 5, 2024 Did You Know As a reward for helping King Charles II escape England (and Oliver Cromwell) in 1651, the Pendrill (

PySheets, REPL Shortcuts, Empty Tests, and More

Tuesday, November 5, 2024

PySheets: Spreadsheets in the Browser Using PyScript #654 – NOVEMBER 5, 2024 VIEW IN BROWSER The PyCoder's Weekly Logo PySheets: Spreadsheets in the Browser Using PyScript What goes into building a

Daily Coding Problem: Problem #1599 [Medium]

Tuesday, November 5, 2024

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Snapchat. Given a string of digits, generate all possible valid IP address combinations.

Spyglass Dispatch: Apple's Smart Glasses • OpenAI Hardware Hire • RIP JanSport Founder • Ballmer's $100M Bet on Facts • Netflix Movie Theater Pressure • Apple ChatGPT Upsell

Tuesday, November 5, 2024

Apple's Smart Glasses • OpenAI Hardware Hire • RIP JanSport Founder • Ballmer's $100M Bet on Facts • Netflix Movie Theater Pressure • Apple ChatGPT Upsell The Spyglass Dispatch is a free

Mapped | U.S. State Economies Compared to Entire Countries 🌎

Tuesday, November 5, 2024

Five American state economies can replace countries in the world's top 20. Here's how all 50 states compare. View Online | Subscribe | Download Our App Presented by Hinrich Foundation NEW

Why Many Data Science Jobs Are Actually Data Engineering

Tuesday, November 5, 2024

Top Tech Content sent at Noon! NODES 2024, a Dev Conference on AI, Knowledge Graphs & Apps Read this email in your browser How are you, @newsletterest1? 🪐 What's happening in tech today,

LW 157 - Better Collaboration Building for Merchants

Tuesday, November 5, 2024

Better Collaboration Building for Merchants ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ Shopify Development news and articles Issue 157 - 11/

Vlt client & registry; ESMeta

Tuesday, November 5, 2024

We have 2 links for you - Stay up-to-date on JavaScript and tools Two vlt products: a better npm client and a serverless package registry www.vlt.sh @vltpkg@fosstodon.org vlt has launched two products:

Want a programming job? Learn this

Tuesday, November 5, 2024

Stop background Android apps; AI election tracker; Early Black Friday sales -- ZDNET ZDNET Tech Today - US November 5, 2024 Python code Your dream programming job demands this language, every site