Demystifying function parameters in Go

In this post we're going to talk about how (and why!) different types of function parameters behave differently in Go. If you're new (or even not-so-new) to Go, this can be a common source of confusion and questions. Why do functions generally mutate maps and slices, but not o...

People skills for developers

In the second part of this series on career skills for software engineers, we’ll look at how to deal with that trickiest of species: human beings.

Automating my hard-to-automate garage doors

This is how I automated my garage doors without using a BTN interface. Arriving home is always a pain, I have to open two garages, and disarm the alarm system. I wanted to make that experience better. Once I figured out the alarm part, I started looking into the garages. Usually,...

A Charm-ed life for Go CLI tooling

#​483 — November 7, 2023 Unsub  |  Web Version Go Weekly Charm Raises $6M to Build the Next Generation of the Command Line — Like much of the Go community, we’ve been huge fans of Charm’s approach to building useful Go-based to...

Integrating Alarm Systems with Homekit

This post documents my journey implementing a Homekit integration for my Intelbras AMT8000 alarm system. This particular alarm system is relatively common here in Brazil, as it can be found in Brazil for a decent price, and is surprisingly easy to install. The sensors, keyboard,...

People do change what a particular version is of a Go module

Some Go tricks and treats

#​482 — October 31, 2023 Unsub  |  Web Version Go Weekly Awesome Go: Thousands of Categorized Go Resources — A useful resource that continues to get frequent updates, and that's well worth revisiting in what has been a surprisingly...

Getting love for your open source project, aka, marketing?!

Twitter Spaces with some OSS developers: @caarlos0 @charmcli @jzmusings @meowgorithm @propeldatacloud @roxcodes Listen to it here.

ES Module imports in Node.js and the browser

For a recent project, I wanted to have some JS code (in multiple files) available for testing from the command-line with Node.js, but also to be able to load the same code into a web page to be invoked directly from a browser. I've encountered this same issue before …

Wishing the 'if err != nil's away..

#​481 — October 24, 2023 Unsub  |  Web Version Go Weekly ! 'Bang'-ing Errors in Go? — Criticisms of the verbosity of error handling in Go are common, but proposed solutions? Much less so. Ted suggests a syntax initially using excl...