Generating Go boilerplate from OpenAPI specs

Plus a look at some Go alternatives to using Makefiles. |

#​509 — June 4, 2024

Unsub  |  Web Version

🫣 We took a break last week, but forgot to notify you in advance - sorry! You didn't miss anything, and we're catching up with the past two weeks today :-)
__
Your editor, Peter Cooper

Together with  Ardan Labs

Go Weekly

Eradicating N+1s: The Two-Phase Data Load and Render Pattern in Go — Brandur demonstrates the N+1 problem by way of a little (and very easy to read) Ruby, before demonstrating how Go is equally susceptible to the issue. There is, however, a pattern you can introduce to nip it in the bud.

Brandur Leach

Don't Name Packages Common Nouns — The potential to collide with simple, everyday words you might want to use as variable names is too great.

Brandur Leach

Go! Unlock Your Tech Potential with Ardan Labs Consulting — Struggling with skill gaps, development speed or complex tech challenges? Ardan Labs specializes in Go, Rust, Docker and K8s to accelerate your software development, optimize architecture, and manage tech debt. Let us supercharge your team!

Ardan Labs Consulting sponsor

A Long-Overdue Problem Coming for Some in Go 1.23 — Go's compiler has special directives to let you do various things including, in the case of go:linkname, accessing unexported variables/functions from other packages. This has never been a guaranteed, safe feature, but changes to its operation in 1.23 could cause issues for more than a few packages.. (If you want to know why a library might not allow access to certain things by default, Chris covers that here.)

Chris Siebenmann

Running Go on Val TownVal Town is an interesting platform for running and composing JavaScript snippets that makes the claim: “If GitHub Gists could run, and AWS Lambda was fun.” Can you run Go on it? Thanks to WebAssembly, yes, but it’s more a fun experiment than a long-term play.

Max McDonnell

Abusing Go's Infrastructure? — Upon discovering that repositories containing zero Go code were in Go’s checksum DB, the author set out to see if arbitrary data could be uploaded to Go’s servers and, if so, whether it’s really a serious issue or not.

fG

[Webinar] Saga Pattern: Compensating Transactions at Will Bank — Hear Will Bank discuss financial transaction challenges and how Temporal's durable execution ensures reliable consistency.

Temporal Technologies sponsor

📄 A Look at Go Alternatives to Makefiles – Taskfile and Mage, specifically. Elton Minetto

📄 Reading Google Sheets from a Go Program Eli Bendersky

📺 My Neovim Configuration for Go Development in 2024 Mario Carrion

📄 Your API Shouldn't Redirect HTTP to HTTPS Joachim Viide

🛠 Code & Tools

gh-dash 4.0: A GitHub CLI Dashboard Extension — A TUI app for displaying a dashboard of pull requests and issues filtered however you like.

Dolev Hadar

oapi-codegen 2.2: Generate Boilerplate from OpenAPI 3 Specs — Convert OpenAPI specifications to Go code for server implementations, clients, or HTTP models. v2.2 now supports Go 1.22 and its new routing enhancements, much of the docs have been rewritten, and the project is focusing on ways to be more sustainable into the future.

DeepMap, Inc

Bob: SQL Query Builder and ORM/Factory Generator — With support for Postgres, MySQL and SQLite. Bob can be progressively adopted from raw SQL query strings, to fully typed queries with models and factories generated for a database.

Stephen Afam-Osemene

📰 Classifieds

Your fastest path to production. With Render, you can build, deploy, and scale your apps with unparalleled ease – from your first user to your billionth.


⛳️ Learn why OpenFeature is the leading standard for feature flags and how to migrate to it from LaunchDarkly in with leaders from eBay and Justworks in our live webinar this Wednesday (06/05/24) at 12 PM EST.


🪝 The Hookdeck CLI - A free and no-account-required alternative to ngrok for asynchronous web development.

Rill: A Go Concurrency Toolkit — A collection of functions for streaming, parallel processing, and pipeline construction – all aiming to abstract things nicely and reduce boilerplate.

Viktor Nikolaiev

Bubble Table: A Table Component for Bubble Tea — A customizable, interactive table component for the always elegant Bubble Tea TUI framework.

Brandon Fulljames

go-datastructures 1.1.5: Numerous Threadsafe Data Structures — There’s a lot packed in here: queues, heaps, trees, sets, tries, skiplists, graphs, and often multiple types of each.

Workiva

gcss: CSS Written in Pure Go? — The touted benefits include more maintainable CSS and HTML (with no more super long class attributes) along with simpler server-side theming.

Accent Design

⚙︎ Fusion – A lightweight, self-hosted RSS aggregator and reader, with Svelte in the front, Go in the back. Rook1e

⚙︎ HN-Text – A text-first Hacker News client. Edi Piqoni

⚙︎ PastePass – Secure, one-time paste bin for sharing secrets. Vikas Yadav

  • Vugu 0.4 – Experimental way to build Web front-ends in Go using WebAssembly.

  • Go Imagick 3.7 – ImageMagick bindings for Go.

  • pgxmock 4.0 – Mock driver to test database interactions in Go.

  • Permify 0.9 – Google Zanzibar-inspired authorization.

  • TOML 1.4TOML config file parser for Go.

n

Older messages

The Go team explains compiler optimizations

Tuesday, May 21, 2024

Plus the latest GoLand EAP begins. | #​508 — May 21, 2024 Unsub | Web Version Together with Flipt Go Weekly ▶ Boosting Performance of Go Apps with Optimizations — Three members of the Go team gave a

Using 97 fewer cores thanks to PGO

Tuesday, May 14, 2024

Plus an HNSW indexed vector store library, a new Go game hits the Steam store, and is 'ok' ok?. | #​507 — May 14, 2024 Unsub | Web Version Together with Stytch logo Go Weekly Reclaiming CPU for

A very random issue

Tuesday, May 7, 2024

Plus a new language that compiles to Go, charts for the terminal, and some Go books from Packt. | #​506 — May 7, 2024 Unsub | Web Version Together with Ardan Labs Go Weekly Evolving the Go Standard

Going supersonic

Tuesday, April 30, 2024

Plus Go remains popular in pull requests, a CP/M emulator, and, sure, Go isn't Java. | #​505 — April 30, 2024 Unsub | Web Version ✍️ It's been a quiet week for big Go related news, but we still

Bringing PGO to the build pipeline

Tuesday, April 23, 2024

Plus how Go grew at Google, cmp.Or, and ways to visualize makefiles, Go binaries, and live Go processes. | #​504 — April 23, 2024 Unsub | Web Version Together with Three Dots Labs Go Weekly How Dolt

You Might Also Like

📳 Galaxy Z Flip 6 Review — How to Watch the 2024 Summer Olympics for Free

Friday, July 26, 2024

Also: Fixing Spotify's Repeating Ads, and More! How-To Geek Logo July 26, 2024 Did You Know The rectangular area of a flag found in the upper left corner (top hoist corner) of the flag, such as the

Your monthly update has arrived

Friday, July 26, 2024

What's new in Google Play and Android July 2024 The Collections surface engages users with content Introducing Collections, a new on-device surface for your content Collections present users with

iOS Dev Weekly - Issue 671

Friday, July 26, 2024

There are two types of apps on the visionOS App Store. Will you create an app that makes people reach for the headset? 🥽 View on the Web Archives ISSUE 671 July 26th 2024 Comment In the last two weeks

Ranked | The 10 Busiest Ports in the World, by Cargo Traffic 🚢

Friday, July 26, 2024

As critical nodes for trade and commercial activity, we show the top 10 busiest ports in the world by cargo volume. View Online | Subscribe Presented by: Is Your Portfolio Powering the Future? >>

Let the Games Begin

Friday, July 26, 2024

Week of July 22, 2024 Let the Games Begin Week of July 22, 2024 By MG Siegler • 26 Jul 2024 View in browser View in browser Mark Zuckerberg loves two things above all else right now: llamas and

Daily Coding Problem: Problem #1508 [Hard]

Friday, July 26, 2024

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Uber. Given an array of integers, return a new array such that each element at index i

OpenAI announces SearchGPT - Weekly News Roundup - Issue #477

Friday, July 26, 2024

Plus: Will billionaires live forever; a police robot dog jamming wireless networks; Alphabet to invest $5B into Waymo; warnings about “model collapse”; a new partnership for AI security; and more! ͏ ͏

Using Data as a Product Manager

Friday, July 26, 2024

If you had your choice between a little data or a lot of data on which to guide decisions, which would you pick? ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

Last Mile of Blockchains: RPC and Node-as-a-Service

Friday, July 26, 2024

Top Tech Content sent at Noon! Find the hottest jobs from top tech companies Read this email in your browser How are you, @newsletterest1? 🪐 What's happening in tech today, July 26, 2024? The

⚙️ Generative AI is making workers less productive

Friday, July 26, 2024

Plus: Runway trained video generator on thousands of YouTube videos ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌