#384 — October 22, 2021 |
Go Weekly |
Introducing sqlcomment: Database Perf Analysis with Ent and Google's Sqlcommenter — Ent is an entity framework that acts as an ORM for modeling and querying data in and from Go. It’s worth investigating on its own merits, but this post looks at an interesting next step using Google’s Sqlcommenter tool to bridge the gap between ORM and understand database performance by way of usefully verbose SQL comments. Amit Shani (Ent) |
▶ Discussing eBPF and Go — eBPF provides a sandbox that can run code inside the Linux kernel and it’s pretty awesome – we’ve linked to tutorials about using eBPF from Go before, but this is an hour-long chat about the possibilities. Go Time Podcast podcast |
The DevSecGuide to Infrastructure as Code — Research on the state of IaC security, practical steps for building a DevSecOps culture, and tips for embedding security throughout the DevOps lifecycle. Bridgecrew sponsor |
Building Rich CLI Apps with Go's Built-in Templating — How the developers of a CLI tool extend the Barak Amar |
You Don't Need a Library for File Walking in Go — Before 1.16, walking file trees incurred a level of overhead that led to multiple open-source packages trying to solve the problem, but now Go’s shoes are better made for walking. Ben Boyter |
QUICK BITS:
|
|
How to Schedule a Task at a Specific Time in Go — I’ve never needed to do this at this level, but it’s nice to have the option.. Stephen AfamO |
Build Serverless Apps with Go and Custom Handlers on Azure — An 8-unit tutorial on creating Azure Functions using Go. The units are short, though, so this is quickly consumable. Microsoft |
Why You Should Use Dedicated Constructors in Go — Go’s aim for simplicity can, sometimes, lead to problems as a codebase grows. This tip will definitely keep your structs flexible and your future self less frustrated. Lukas Lukac |
Why Network Engineers Should Learn Go
|
🛠 Code & Tools |
Toxiproxy 2.2: A TCP Proxy to Simulate 'Chaotic' Network and System Conditions — A tool you can use to see how your app copes with outages in third party APIs, databases, network accessible caches, etc. It’s written in Go but there are client libraries for numerous languages to use it from test suites. Shopify |
panicparse: A Panic Stack Trace Parser and Debugging Tool — “Crash your app in style”(!) This tool, which you’d use to help in debugging crashes and deadlocks in heavily parallelized processes, has just been updated to support Go 1.17. M-A |
Slug 1.11.0: URL-Friendly Slug Creator with Multiple Language Support — For example: GoSimple |
Build Video for Your Go App That Just Works Mux sponsor |
UUID 4.1.0: A Pure Go Implementation of UUIDs — Create and parse UUIDs as defined in RFC-4122 covering versions 1, 3, 4 and 5. The Go Commune |
RoadRunner 2.5: A High Perf PHP Application Server and Load Balancer — A PHP app server, load balancer and process manager. Includes a PSR-7/17 compatible HTTP and HTTP/2 server and can replace a Nginx+FPM setup. Spiral Scout |
MacDriver 0.2: Native Mac API Access for Go — A toolkit for working with Apple/Mac APIs and frameworks in Go formed of both bindings for Objective C and wrapped versions of certain frameworks. Jeff Lindsay |
Chroma 0.9.4: A Pure Go General Purpose Syntax Highlighter — Brings most of the features of Pygments to Go. Alec Thomas |
sqlhooks 2.0: Attach Hooks to Any Gustavo Chaín |
pgmetrics 1.12: Collect and Display Stats from Running Postgres Servers — Written in Go, and here’s an example of its output. v1.12 adds Postgres 14 and PgBouncer 1.16 support, including collecting new PG14 specific stats. GitHub repo. RapidLoop |
go-imap 1.2: An IMAP4 Library for Clients and Servers
|