Golang Weekly - 'Cgo performance is good actually'

Plus how Go 1.21 enables truly reproducible builds. |

#​474 — September 5, 2023

Unsub  |  Web Version

Together with  Teleport logo

Go Weekly

Perfectly Reproducible, Verified Go Toolchains — Go 1.21 contains some significant features, but truly reproducible builds is a big deal and Russ goes (deep) into how it works here, complete with a walkthrough. The Go team has also built a tool, gorebuild, to prove the feature works as intended.

Russ Cox

Cgo Performance in Go 1.21Cgo makes it possible for Go packages to call C code and is commonly used to provide Go apps with access to the larger world of C-based libraries. Shane doesn’t want to argue about Cgo's pros and cons here but does make the case that its performance is good and the overhead is insignificant in most cases.

Shane Hansen

Certificate-Based MFA, RBAC, and SSO with Teleport — Implement industry best practices for Kubernetes access with minimal configuration. Easily enforce MFA, RBAC, and SSO using identity-based short-lived X.509 certificates for engineers and service accounts by starting your trial today.

Teleport | goteleport․com sponsor

A Closer Look at Go's Profile-Guided Optimization (PGO) — PGO offers compile-time optimization of binaries based on profile data of actual usage, which can genuinely change the performance characteristics. This is something you need to get into your build pipelines.

Yahya SayadArbabi

QUICK BITS:

Using Go to Write User Defined Functions (UDFs) — Less a tutorial and more an interesting example of how Seafowl, a Rust-powered analytics database, supports user defined functions provided as WebAssembly and how Go can be used to create such functions. Go's ever improving WebAssembly support will open up more use cases like this over time.

Patrick Skinner

Automated Cloud Provisioning from Your Go Code — Declare infrastructure in your Go program and get self-provisioning local, preview, and cloud environments (AWS/GCP).

Encore sponsor

Using Goquery for Data Parsing — If you’d like a jQuery-esque way of working with the DOM..

ZenRows

Building Scalable Apps Using Redis as a Message Broker
Tomas Fernandez

🛠 Code & Tools

Autostrada: A Codebase Generator for Go Projects — A site that lets you pick from a variety of options (webapp vs JSON API, SQLite vs Postgres – add auth, secure cookies, sessions, etc.) and then download a custom codebase built from those options to continue building an app with.

Alex Edwards

CLI Mate: Auto-Generate Go CLIs — Supports nested subcommands, global/local flags, help generation from godocs, typo suggestions, shell completion and more. Inspired by python-fire and powered by Cobra.

Vamsi Avula

Monitor, Test and Document your APIs with APIToolkit — A toolbox for building and maintaining APIs better than ever. Test and validate all API requests, and spot bugs faster.

APIToolkit sponsor

Logging in Go: A Comparison of 8 Libraries — With the introduction of a new core standard logging package (log/slog) in 1.21, are all open-source logging libraries obsolete? Ayooluwa looks at 7 of them (plus slog) and gives his opinion.

Ayooluwa Isaiah

LotusDB 2.0: A Key/Value Store Built in Go — A Go-native key/value store that boasts high read and write performance and combines the advantages of LSM and B+ trees. Docs are a little thin on the ground but there’s a complete example in the README and an introductory post on Medium.

LotusDB Labs

Expr 1.15.0: Expression Evaluation Within Go — Got expressions? Expr is an engine for evaluating them, whether it’s for arithmetic, business rules, or data filtering. GitHub repo.

Anton Medvedev

  • Pion TURN 3.0
    ↳ Toolkit for building TURN clients and servers in Go.

  • oapi-codegen 1.14
    ↳ Generate client/server boilerplate from OpenAPI specs.

  • go2rtc 1.7
    ↳ Camera streaming with RTSP, WebRTC, FFmpeg, RTMP, etc.

  • JuiceFS 1.1
    ↳ Distributed POSIX file system atop Redis & S3.

  • Miller 6.9
    ↳ Like awk, sed, cut, join, and sort for CSV.

  • DNSControl 4.3
    ↳ Synchronize DNS to multiple providers.

  • Fibratus 2.0 – Windows kernel exploration tool.

  • GoBGP 3.18 – BGP implementation in Go.

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

GotHub: An Alternative GitHub Frontend / Proxy — It’s not a typo, but a Go-powered alternative front-end for GitHub. It’s also looking for new maintainers.

Arya K

n

Older messages

'There will not be a Go 2 that breaks Go 1 programs.'

Tuesday, August 29, 2023

Plus RIP to AWS Lambda's Go runtime, a big TinyGo update, and an official introduction to 1.21's structured logging. | #​473 — August 29, 2023 Unsub | Web Version 👋 We're back! Well, almost

Go 1.21 released

Tuesday, August 8, 2023

Plus cross-platform sound from Go, a new dependency security tool, and we're off for a few weeks. | #​472 — August 8, 2023 Unsub | Web Version ⛱ I'm taking two weeks off and will be back on

The Go team's new project templating tool

Tuesday, August 1, 2023

Plus the Go survey is back, a 400 line Go git client, and Google Cloud Functions gets Go 1.21. | #​471 — August 1, 2023 Unsub | Web Version Together with Ardan Labs Go Weekly Experimenting with Project

The one where Go keeps getting better

Tuesday, July 25, 2023

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

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

You Might Also Like

Sunday Digest | Featuring 'The World’s 20 Largest Economies, by GDP (PPP)' 📊

Sunday, December 22, 2024

Every visualization published this week, in one place. Dec 22, 2024 | View Online | Subscribe | VC+ | Download Our App Hello, welcome to your Sunday Digest. This week, we visualized public debt by

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,