Golang Weekly - The one where Go keeps getting better

Plus Go benchmarking pitfalls, a gentle intro to pointers, and finding vulnerable dependencies with govulncheck. |

#​470 — July 25, 2023

Unsub  |  Web Version

✍️ It feels like there's a particularly strong drive to improve Go lately, whether it's through the ever growing number of proposals from folks like Russ Cox, the development of tools like govulncheck, or folks writing articles about how to write better code. Go's a simple language with modest ambitions, but it's not resting on its laurels and is actively continuing to get better all the time – long may it last!
__
Your editor, Peter Cooper

Together with  Teleport logo

Go Weekly

An Overhaul of Inlining for Go 1.22Inlining is the concept of replacing a function call in a program with the contents of the function itself, thus avoiding the call. Go’s inliner has improved over the years, but the policies around when and what to inline have become a little out of date. The idea, then, is to implement a variety of tweaks that could introduce, Austin says, “significant performance improvements for Go applications”.

Austin Clements et al.

A Preview of Ranging Over Functions — A new language proposal (yes, another one!) suggests adding two new types for/range can iterate over. The first (integers) is mostly syntactic sugar, but the second (functions) would allow iteration over custom collection types which is pretty huge.

Eli Bendersky

Pass SOC 2, FedRAMP, HIPAA, and Other Audits With Ease — Meet compliance requirements, pass audits with minimal effort, and have complete visibility into kubectl access and behavior with Teleport by starting your free trial. The supported standards include SOC 2, FedRAMP, HIPAA, ISO 27001, PCI, and more.

Teleport | goteleport․com sponsor

How to Find and Fix Vulnerable Dependencies with govulncheck — Last week, we featured govulncheck’s 1.0 release, and now there’s an official tutorial on the Go site on using the tool to scan a Go program for vulnerabilities and the steps to take if you find anything.

Go Documentation

Proposal: Let's Make Go's HTTP Request Multiplexer Betterhttp.ServeMux is an HTTP request multiplexer (or router, if you will) and there has been talk this year of making it better by adding support for HTTP method based routing and support for wildcards in paths. This has now turned into a proposal.

Jonathan Amsterdam

IN BRIEF:

Common Pitfalls in Go Benchmarking“While these pitfalls are presented in Go, they exist in any programming language or environment, so the lessons learned here are widely applicable.”

Eli Bendersky

Getting Friendly with CPU Caches — Understanding how to make your code cache-friendly can result in significant performance gains but be sure you understand the risks and tradeoffs therein.

Miki Tebeka and William Kennedy

Using Cobra to Build Go-Powered CLIs — A step by step tutorial for creating a basic CLI app using the Cobra approach.

Joseph Udonsak

“DevOps Workload Has Dropped by 90% for Services Migrated to Encore” — Check out Bookshop.org's ongoing journey from a Ruby on Rails monolith to a Go microservices architecture.

Encore sponsor

A Gentle Introduction to Pointers in Go — Very short and elementary, but.. “if you’re a bit fuzzy on exactly what pointers and how they work, it should help you out!”

Alex Edwards

From 26 Minutes to 20 Seconds: Using pprof to Optimize Large GraphQL Operations in Go
WunderGraph

🛠 Code & Tools

ff 3.4: A 'Flags-First' Package for Configuration — Provides an opinionated way to populate a flag.FlagSet with configuration data from the environment via cmd line args, config file, or environment variables.

Peter Bourgon

Vegeta: An HTTP Load Testing Tool and Library — A Go-powered load testing approach with lots of customization potential, a built-in plotting tool, and even a way to render real-time reports in your terminal.

Tomás Senart

Get Started with Temporal and Go — Build apps with Temporal + Go by setting up your development environment, then exploring how Temporal Applications work.

Temporal Technologies sponsor

ov: Feature-Rich Terminal-Based Text Viewer/Pager — Aims to replace less, more, tail -f and watch in one.

Noboru Saito

Risor: An Embeddable Scripting Language Written in Go — Formerly known as Tamarin, Risor code (which feels a bit like a hybrid of Go and Python and can use the Go standard library) gets compiled to bytecode and run on a small pure Go VM. GitHub repo.

Curtis Myzie

go-sse 0.6: Spec-Compliant Server-Sent Events (SSE) LibraryServer Sent Events is a Web API supported by all major browsers that lets servers stream/send messages to (listening) pages at will.

Teodor Maxim

Jobs

Find a Job Through Hired — Hired makes job hunting easy-instead of chasing recruiters, companies approach you with salary details up front. Create a free profile now.
Hired

n

Older messages

Russ Cox makes the case for coroutines

Tuesday, July 18, 2023

Plus Gorilla is back, IBM takes over Sarama, a Go powered TUI feed reader, and Go 1.21rc3. | #​469 — July 18, 2023 Unsub | Web Version Together with Ardan Labs Go Weekly A Rationale for Using

Go, meet Python. Python, meet Go.

Tuesday, July 11, 2023

Plus using fuzz testing in practice, working with eBPF from Go, and how it feels to be a solo gopher. | #​468 — July 11, 2023 Unsub | Web Version Together with Teleport logo Go Weekly Finding Bugs with

Answering all the big questions

Tuesday, July 4, 2023

Plus a big GoReleaser release, all the GopherCons, and an MIT workshop on concurrency that uses Go. | #​467 — July 4, 2023 Unsub | Web Version Together with Ardan Labs Go Weekly Frequently Asked

Go's three new builtin functions

Tuesday, June 27, 2023

Plus running Go in Jypyter Notebooks, a Go app generator, and using htmx with Go. | #​466 — June 27, 2023 Unsub | Web Version Together with Ardan Labs Go Weekly Go 1.21 Release Candidate — Despite

Random numbers in Go, version 2

Tuesday, June 20, 2023

Plus how and when to use Go pointers effectively, Mergo 1.0, and just how much Go is 'admired and desired.' | #​465 — June 20, 2023 Unsub | Web Version Together with Courier logo Go Weekly

You Might Also Like

Android Weekly #654 🤖

Sunday, December 22, 2024

View in web browser 654 December 22nd, 2024 Articles & Tutorials Sponsored Solving ANRs with OpenTelemetry While OpenTelemetry is the new observability standard, it lacks official support for many

😸 Our interview with Amjad Masad

Sunday, December 22, 2024

Welcome back, builders Product Hunt Sunday, Dec 22 The Roundup This newsletter was brought to you by AssemblyAI Welcome back, builders Happy Sunday! We've got a special edition of the Roundup this

C#537 Automating Santa's Workshop with NServiceBus

Sunday, December 22, 2024

Using event-driven architecture for effective gift delivery 🎄🎁 ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

The Race for AI Reasoning is Challenging our Imagination

Sunday, December 22, 2024

New reasoning models from Google and OpenAI ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

ScienceDaily/Minimalist lamp/Avocado tip

Sunday, December 22, 2024

Recomendo - issue #442 ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

Laravel VS Code Extension, Laravel 11.36, Wirechat, and more! - №544

Sunday, December 22, 2024

Your Laravel week in review ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

Kotlin Weekly #438

Sunday, December 22, 2024

ISSUE #438 22nd of December 2024 Announcements klibs.io JetBrains has introduced the alpha version of klibs.io – a web service that speeds up and simplifies discovering KMP libraries that best meet

Weekend Reading — Happy "That's a January Problem" week

Saturday, December 21, 2024

Can Christmas season start a little earlier this year Tech Stuff Ramsey Nasser fuck it happened i am in a situation where i do actually need to reverse a linked list Atuin I just learned about Atuin

Daily Coding Problem: Problem #1644 [Easy]

Saturday, December 21, 2024

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by IBM. Given an integer, find the next permutation of it in absolute order. For example,

🐧 Whatever Happened to Unix Workstations? — My Incredibly Cheap Alternative to a Soundbar

Saturday, December 21, 2024

Also: Here's Why More Games Need Expanded Difficulty Settings How-To Geek Logo December 21, 2024 Did You Know Lake Wendouree, an artificially created and maintained shallow urban lake in Australia,