#460 — May 16, 2023 |
|
Go Weekly |
The Go Developer Survey 2023 Q1 Results — Nearly 6,000 gophers took part in the latest developer survey, and now we have the results. Key takeaways include:
Alice Merrick / Go Team |
Go! Experts at Your Service — Do you need help filling skill gaps, speeding up development & creating high performing software with Go, Docker, K8s, Terraform and Rust? We’ll help you maximize your architecture, structure, tech-debt and human capital. Ardan Labs Consulting sponsor |
A Proposal for Less Error-Prone Loop Variable Scoping — After last week’s attempt to win us over with a new file extension for Go programs, Russ is back with a more serious proposal based on a long-standing desire to change the semantics around the scope of loop variables (but only in apps declaring a modern Go version in Russ Cox |
▶ Google's Gophers on Building More Secure Apps — Supply chain security is a pressing topic right now, so it’s neat to see folks on the Go team at Google (plus a member of the deps.dev team) tackle it head on both explaining the general problems and how Go and its ecosystem provide numerous tools and approaches to mitigating the problems. (18 minutes.) Cameron Balahan and Julie Qiu |
IN BRIEF:
|
How to Build a Serverless Discord Bot with OpenFaaS — A serverless chat bot? Don’t bots need to be long running processes? No, it’s possible for them to be stateless and triggered by events, and Alex shows us how to rig one up with Go atop the OpenFaaS platform (itself written in Go). Alex Ellis |
Producing a Go Scanner in 1,219 Bytes of Code — This is certainly quite the set of regexes.. Modern C |
▶ Video: Securely Deploy K8s Clusters with Machine ID and GitHub Actions — Learn about security best practices for assigning individual identities to humans & worker nodes without static credentials. Teleport | goteleport.com sponsor |
▶ A 9-Hour Go Course for Beginners — This epic, practical and project oriented video probably isn’t aimed at most Go Weekly readers, but you might find it useful as a refresher or to pass on to someone else in your team. Lane Wagner |
Stepping up Your Go App Testing Game with Testify — Testify is a popular suite of packages providing added structure, assertions, mocking, and similar niceties to testing in Go. Ukeje Chukwuemeriwo |
🛠 Code & Tools |
Gobot 2.0: A Framework for Robot, Drone and IoT Development — Before focusing on TinyGo, Ron Evans was best known for Gobot, a framework for using Go on robots and similar physical computing projects. Thomas Kohler now seems to be the main maintainer and v2.0 updates all sorts of things. The Hybrid Group |
BARF 1.0: A Framework for Building JSON-Based Web APIs — Not the most appealing name, but it stands for “Basically A Remarkable Framework” here 😆 It’s designed for building simple JSON-based APIs atop either REST or GraphQL. This week’s 1.0 release is the first to be “basically remarkable,” claims the author, which justifies the name I guess.. Perfection Loveday |
A Developer’s Guide to Getting Started with Temporal — Use this guide to see how Temporal’s open source delivers durable execution for your services and applications. Temporal Technologies sponsor |
wzprof: pprof-Based Profiling for Wazero — Collect CPU and memory profiles during the execution of WebAssembly modules through wazero. Stealth Rocket |
There's also a fantastic blog post to go along with this project that digs deeper into how it works. |
dinero.go: A Port of dinero.js to Go — Create, calculate, and format monetary amounts. Dustin J Silk |
|
|
🤔 An a-maze-ing Go program |
Amaze: A Program to Create, Solve and Draw Mazes — This is a bit of fun. It’s a Go program that can create, solve and draw mazes either in the terminal or as 2D or 3D graphics (powered by G3N and OpenGL). I like how the author also uses it as a way to promote his clap CLI argument parsing library :-) Fred X |