Golang Weekly - Go 1.23 gets another step closer

Plus making a regex engine in Go, how to think about channels, and Bleve gets vector support. |

#​512 — June 25, 2024

Unsub  |  Web Version

✈️ I've produced this issue a day early due to being en-route to the AI Engineer World's Fair, so any last minute news may be missed. If you're there, come and say hi, but you can also watch from afar through the livestreams that will be on YouTube this Wednesday and Thursday. See you again next week!
__
Peter Cooper, your editor

Together with  Frontend Masters logo

Go Weekly

Three Ways to Think About Channels — Channels seem trivial on the surface, but actually using them requires an understanding of Go's entire concurrency ecosystem. With such an understanding, you can pick the right primitives for your use case and not end up trapped in a world of deadlocks.

Max Hoffman (DoltHub)

Go 1.23 Release Candidate 1 Released — A simple announcement for the first release candidate of the upcoming, and rather exciting, 1.23 release. Perhaps more usefully, the draft Go 1.23 release notes have been fleshed out a bit more.

The Go Team

Master the Basics of Go — Join Maximiliano Firtman for this detailed video course covering the fundamentals of all things Go. You'll gain a thorough understanding of structures, goroutines, channels, async API calls, and much much more.

Frontend Masters sponsor

Making a Regex Engine from Scratch in Go — Over eleven posts, Lewis walks through the fundamentals of working with regular expressions without leaning on any existing regex engines, complete with helpful visualizations and examples.

Lewis Metcalf

▶  How Things Get Done on the Go Team — Go Time’s host Angelica was joined by Cameron Balahan, Sameer Ajmani and Russ Cox from the Go team to discuss how things get done on the Go team and how they decide what to improve. (63 minutes.)

Go Time Podcast podcast

How to Sign, Notarize and Staple a Go App for Outside Mac App Store Distribution — A quick guide to the hoops you need to jump through to signing and notarizing a Go app in such a way that it can run on other people’s Macs without lots of scary messages.

Rubi Jihantoro

A Pragmatic Guide to Go Module Updates“I thought I would share some quick bits about how to do go.mod version bumps.”

Carlos Becker

Shameless Green: TDD in Go — The latest in a series of posts on test-driven development in Go.

John Arundel

📰 Classifieds

Hookdeck: A serverless queue to reliably send, receive, transform, filter, and route events across your event-driven apps.


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.

📄 Rust's Concurrency Model vs Go's: Stackless vs Stackful Coroutines Sylvain Kerkour

📄 On Testing Go Code using the Standard Library Henrique Vicente

📄 Seven Common Interface Mistakes in Go Andrei Boar

🛠 Code & Tools

Walk: A Terminal-Based File Manager“Why another terminal navigator? I wanted something simple and minimalistic. Something to help me with faster navigation in the filesystem; a cd and ls replacement.” With fuzzy searching, too.

Anton Medvedev

Bleve: A Modern Text Indexing Library — Bleve has been around for many years and is a well used, mature library, but it now has support for vectors too (as are increasingly becoming important, nowadays).

bleve

Stop Worrying About Your Auth. Let FusionAuth Handle It — Flexible deployment. Advanced features like MFA, SSO, and more. Check out the Go SDK.

FusionAuth sponsor

Caesar: A New Go Web Framework Inspired by Traditional Frameworks — Where ‘traditional’ means things like Rails, Laravel or Django. Caesar takes their focus on solid tooling and conventions and brings it into the Go realm.

Valyent et al.

gomplate 4.0: A Flexible CLI Tool for Template Rendering — A template renderer that supports a wide array of sources, such as JSON, YAML, AWS EC2 metadata, Hashicorp Consul and Hashicorp Vault secrets. Worth looking at the examples in the README.

Dave Henderson

n

Older messages

A quick Go quiz

Tuesday, June 18, 2024

Plus debates about Go 1.23 iterators, anti-patterns, and another Go web framework. | #​511 — June 18, 2024 Unsub | Web Version Together with Dragonfly Go Weekly Why People are 'Angry' Over Go

Errors, errors, and errors again

Tuesday, June 11, 2024

Plus another success story for profile-guided optimization. | #​510 — June 11, 2024 Unsub | Web Version Together with Frontend Masters logo Go Weekly An Applied Introduction to eBPF with Go — eBPF is a

Generating Go boilerplate from OpenAPI specs

Tuesday, June 4, 2024

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

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

You Might Also Like

💡 Can Renters Have a Smart Home? — Getting the SteamOS Beta on Steam Deck

Saturday, September 28, 2024

Also: Your Google Doc Can Now Have a Stylish Cover, and More! How-To Geek Logo September 28, 2024 Did You Know If Johnny Depp hadn't been available to play Willy Wonka in Charlie and the Chocolate

Meta's new empire: VR, AR and AI - Sync #486

Saturday, September 28, 2024

Plus: Mira Murati leaves OpenAI; Microsoft to revive a nuclear plant for its AI data centre; bioengineered trees that capture more carbon; stem cell therapy for diabetes; and more! ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

The Paywall’s Final Frontier 🔒

Saturday, September 28, 2024

Could CNN's planned paywall be a harbinger for free online news? Here's a version for your browser. Hunting for the end of the long tail • September 28, 2024 The Paywall's Final Frontier

Feature | The Best Visualizations from September on Voronoi 🏆

Saturday, September 28, 2024

See the most popular, most discussed, and most liked visualizations on our new data storytelling app Voronoi from September View Online | Subscribe In December 2023, we publicly launched Voronoi, our

Daily Coding Problem: Problem #1570 [Medium]

Saturday, September 28, 2024

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Epic. The "look and say" sequence is defined as follows: beginning with the

Will Data Centers Ruin Your Neighborhood?

Saturday, September 28, 2024

Top Tech Content sent at Noon! A dev conference with discussions, workshops, and 1:1 feedback sessions Read this email in your browser How are you, @newsletterest1? 🪐 What's happening in tech today

🐍 New Python tutorials on Real Python

Saturday, September 28, 2024

Hey there, There's always something going on over at Real Python as far as Python tutorials go. Here's what you may have missed this past week: Python Virtual Environments: A Primer In this

ALERT - Critical Linux Printing System Flaws Could Allow Remote Command Execution

Saturday, September 28, 2024

THN Daily Updates Newsletter cover [Watch LIVE] Building a Successful Data Security Posture Management Program Learn From the Leaders: Early DSPM Adopters Reveal Their Data Security Success Secrets

Monitor Your Heart Health Every Day

Saturday, September 28, 2024

Withings is reducing the price of BPM Connect to $99.95 in the US, reaffirming our dedication to accessible health tech. With nearly half the adult population affected by high blood pressure, we're

📧 Breaking It Down: How to Migrate Your Modular Monolith to Microservices

Saturday, September 28, 2024

​ Breaking It Down: How to Migrate Your Modular Monolith to Microservices Read on: m​y website / Read time: 9 minutes The .NET Weekly is brought to you by: Integrate e-signatures into your workflows