
Go Time: Golang, Software Engineering
Your source for wide-ranging discussions from all around the Go community. Panelists include Mat Ryer, Jon Calhoun, Natalie Pistunovich, Johnny Boursiquot, Angelica Hill, Kris Brandow, and Ian Lopshire.
We discuss cloud infrastructure, distributed systems, microservices, Kubernetes, Docker... oh and also Go!
Some people search for GoTime or GoTimeFM and can't find the show, so now the strings GoTime and GoTimeFM are in our description too.
Latest episodes

Oct 14, 2021 • 59min
eBPF and Go
eBPF (7 years old) is a sandbox that can run code inside the linux kernel. It started as a technology to build firewalls, and has evolved over time to include a range of new features.
The panel discuss the origins of eBPF and how it works, as well as dig into some real-world use cases. While eBPF programs themselves aren’t written in Go (more like C), we will hear about how you can communicate with eBPF programs from your Go code.
Join the discussionChangelog++ members save 4 minutes on this episode because they made the ads disappear. Join today!Sponsors:Teleport – Securely access any computing resource anywhere. Engineers and security teams can unify access to SSH servers, Kubernetes clusters, web applications, and databases across all environments. Try Teleport today in the cloud, self-hosted, or open source at goteleport.com
Incident.io – Create, manage, and resolve incidents directly in Slack. Use the /incident command to create and manage incidents. This command lets you share updates, assign roles, set important links and more – all without ever leaving the incident channel. Each incident gets their own Slack channel plus a high-res dashboard at incident.io with the entire timeline from report to resolution. Learn more and sign up for free at incident.io — no credit card required.
Equinix Metal – If you want the choice and control of hardware…with low overhead…and the developer experience of the cloud – you need to check out Equinix Metal. Deploy in minutes across 18 global locations, from Silicon Valley to Sydney. Visit metal.equinix.com/justaddmetal and receive $100 credit to play.
Featuring:Grant Seltzer Richman – Website, GitHub, XDerek Parker – GitHub, XMat Ryer – Website, GitHub, LinkedIn, XJohnny Boursiquot – Website, GitHub, XShow Notes:
Learn more about eBPF on ebpf.io
Email thread on eBPF’s 7th Birthday
Package libbpfgo - libbpfgo is a Go library for Linux’s eBPF project (Apache License 2.0)
Tracee: Runtime Security and Forensics using eBPF - A project discussed in this episode (Apache License 2.0)
Liz Rice’s talks on eBPF
Something missing or broken? PRs welcome!

Oct 7, 2021 • 1h 19min
Gophers Say What!?
We’re celebrating our 200th episode with a crazy game of Gophers Say! Mat Ryer hosts two epic teams including Go Time OGs Carlisia, Erik, and Brian!
Join the discussionChangelog++ members save 4 minutes on this episode because they made the ads disappear. Join today!Sponsors:Teleport – Securely access any computing resource anywhere. Engineers and security teams can unify access to SSH servers, Kubernetes clusters, web applications, and databases across all environments. Try Teleport today in the cloud, self-hosted, or open source at goteleport.com
Incident.io – Create, manage, and resolve incidents directly in Slack. Use the /incident command to create and manage incidents. This command lets you share updates, assign roles, set important links and more – all without ever leaving the incident channel. Each incident gets their own Slack channel plus a high-res dashboard at incident.io with the entire timeline from report to resolution. Learn more and sign up for free at incident.io — no credit card required.
Equinix Metal – If you want the choice and control of hardware…with low overhead…and the developer experience of the cloud – you need to check out Equinix Metal. Deploy in minutes across 18 global locations, from Silicon Valley to Sydney. Visit metal.equinix.com/justaddmetal and receive $100 credit to play.
Featuring:Carlisia Thompson – GitHub, LinkedIn, XErik St. Martin – GitHub, XBrian Ketelsen – GitHub, XMark Bates – Website, GitHub, XJohnny Boursiquot – Website, GitHub, XNatalie Pistunovich – GitHub, XKris Brandow – GitHub, XAngelica Hill – GitHub, LinkedIn, XMat Ryer – Website, GitHub, LinkedIn, XShow Notes:Something missing or broken? PRs welcome!

Sep 30, 2021 • 1h 10min
Go on hardware: TinyGo in the wild
In this episode, we will be exploring the tiny world of Go and Hardware. We are joined by three gophers, Vladimir Vivien, Tobias Theel, and Ron Evans, who will be discussing the use of Linux API (V4L2) to control video hardware and capture image data in realtime, programming Bluetooth devices, working on WiFi communication using an Arduino Nano 33 IoT NINA chip, and much more.
Join the discussionChangelog++ members save 4 minutes on this episode because they made the ads disappear. Join today!Sponsors:Sourcegraph – Move fast, even in big codebases. Sourcegraph is universal code search for every developer and team. Easily search across all the code that matters to you and your organization: find example code, explore and read code, debug issues, and more. Head to info.sourcegraph.com/changelog and click the button “Try Sourcegraph now” to get started.
FireHydrant – The reliability platform for teams of all sizes. With FireHydrant, teams achieve reliability at scale by enabling speed and consistency from a service deployment to an unexpected outage. Try FireHydrant free for 14 days at firehydrant.io
Honeycomb – Guess less, know more. When production is running slow, it’s hard to know where problems originate: is it your application code, users, or the underlying systems? With Honeycomb you get a fast, unified, and clear understanding of the one thing driving your business: production. Join the swarm and try Honeycomb free today at honeycomb.io/changelog
Fastly – Our bandwidth partner. Fastly powers fast, secure, and scalable digital experiences. Move beyond your content delivery network to their powerful edge cloud platform. Learn more at fastly.com
Featuring:Ron Evans – Website, GitHub, Mastodon, XVladimir Vivien – GitHub, XTobias Theel – GitHub, LinkedIn, XNatalie Pistunovich – GitHub, XAngelica Hill – GitHub, LinkedIn, XShow Notes:
TinyGo’s website
Video for Linux API
cgo Go Package
GDN Event: Tiny Go Technology and Hardware
Hyper Text Coffee Pot Control Protocol RFC
Astro Playground
Suborbital Website
WebAssembly for Proxies (ABI specification)
WebAssembly for Proxies (Go SDK)
Vecty (Front-end of Go Gitbhub)
WASM-4 Website
xship (A shoot’em up built with tinygo for the pygamer)
Learning Go by Example: Create a Game Boy Advance (GBA) game in Go
Learning Go Programming by Vladimir Vivien
Creative DIY Microcontroller Projects with TinyGo and WebAssembly: A practical guide to building embedded applications for low-powered devices, IoT, and home automation by Tobias Theel
The eigenvector of “Why we moved from language X to language Y” by Erik Bernhardsson
Something missing or broken? PRs welcome!

Sep 23, 2021 • 1h 6min
The little known team that keeps Go going
Ever wonder how new features get added to the go command? Or where tools like gopls come from? Well, there’s an open team that handles just those things.
Just like the programming language itself, many of the tools that Go engineers use everyday are discussed and developed in the open. In this episode we’ll talk about this team, how it started, where it’s going, and how you can get involved.
Join the discussionChangelog++ members save 5 minutes on this episode because they made the ads disappear. Join today!Sponsors:Sourcegraph – Move fast, even in big codebases. Sourcegraph is universal code search for every developer and team. Easily search across all the code that matters to you and your organization: find example code, explore and read code, debug issues, and more. Head to info.sourcegraph.com/changelog and click the button “Try Sourcegraph now” to get started.
LaunchDarkly – Ship fast. Rest easy. Deploy code at any time, even if a feature isn’t ready to be released to your users. Wrap code in feature flags to get the safety to test new features and infrastructure in prod without impacting the wrong end users.
Honeycomb – Guess less, know more. When production is running slow, it’s hard to know where problems originate: is it your application code, users, or the underlying systems? With Honeycomb you get a fast, unified, and clear understanding of the one thing driving your business: production. Join the swarm and try Honeycomb free today at honeycomb.io/changelog
FireHydrant – The reliability platform for teams of all sizes. With FireHydrant, teams achieve reliability at scale by enabling speed and consistency from a service deployment to an unexpected outage. Try FireHydrant free for 14 days at firehydrant.io
Featuring:Daniel Martí – Website, GitHub, LinkedIn, XPaul Jolly – Website, GitHub, XMarwan Sulaiman – GitHub, XIan Cottrell – LinkedInKris Brandow – GitHub, XShow Notes:Join us and some old friends LIVE to celebrate episode #200!
Go Tools Working Group Wiki
Shared Google Calendar for Tools Working Group monthly meetings
#tools group on Gopher Slack
Golang-tools mailing list
Our episode on SIV and the V2+ problem
Something missing or broken? PRs welcome!

Sep 16, 2021 • 1h 18min
Books that teach Go
Natalie sits down with Go book authors Bill Kennedy & Sau Sheong Chang to discuss the ins and outs of writing (and reading) books about Go!
Join the discussionChangelog++ members save 4 minutes on this episode because they made the ads disappear. Join today!Sponsors:Sourcegraph – Move fast, even in big codebases. Sourcegraph is universal code search for every developer and team. Easily search across all the code that matters to you and your organization: find example code, explore and read code, debug issues, and more. Head to info.sourcegraph.com/changelog and click the button “Try Sourcegraph now” to get started.
LaunchDarkly – Ship fast. Rest easy. Deploy code at any time, even if a feature isn’t ready to be released to your users. Wrap code in feature flags to get the safety to test new features and infrastructure in prod without impacting the wrong end users.
Honeycomb – Guess less, know more. When production is running slow, it’s hard to know where problems originate: is it your application code, users, or the underlying systems? With Honeycomb you get a fast, unified, and clear understanding of the one thing driving your business: production. Join the swarm and try Honeycomb free today at honeycomb.io/changelog
Featuring:Bill Kennedy – Website, GitHub, XSau Sheong Chang – GitHub, XNatalie Pistunovich – GitHub, XShow Notes:
Go Recipes
Sao Sheong’s writings
Something missing or broken? PRs welcome!

Sep 9, 2021 • 1h 12min
Building actually maintainable software
Building software is difficult and time consuming, but the maintenance of software is where we spend the majority of our time. In this episode, Ian and sam join Johnny and Kris to discuss how to build actually maintainable software, the features of Go that make it good for writing maintainable software, and different ways that we might define the term “maintenance”.
Join the discussionChangelog++ members save 4 minutes on this episode because they made the ads disappear. Join today!Sponsors:Teleport – Teleport Access Plane lets you access any computing resource anywhere. Engineers and security teams can unify access to SSH servers, Kubernetes clusters, web applications, and databases across all environments. Try Teleport today in the cloud, self-hosted, or open source at goteleport.com
LaunchDarkly – Ship fast. Rest easy. Deploy code at any time, even if a feature isn’t ready to be released to your users. Wrap code in feature flags to get the safety to test new features and infrastructure in prod without impacting the wrong end users.
Equinix Metal – If you want the choice and control of hardware…with low overhead…and the developer experience of the cloud – you need to check out Equinix Metal. Deploy in minutes across 18 global locations, from Silicon Valley to Sydney. Visit metal.equinix.com/justaddmetal and receive $100 credit to play.
Featuring:sam boyer – GitHub, XIan Lopshire – GitHub, XKris Brandow – GitHub, XJohnny Boursiquot – Website, GitHub, XShow Notes:
Uber’s Go Style Guide
Why smart engineers write bad code
Rant about “performant”
Something missing or broken? PRs welcome!

Sep 2, 2021 • 1h 9min
To build, or to buy, that is the question
To build or to buy, that’s a constant question we ask ourselves as software engineers. In this episode we dig into the nuance of these options and the space between them with an eye toward both the building of software and its eventual maintenance.
Join the discussionChangelog++ members save 4 minutes on this episode because they made the ads disappear. Join today!Sponsors:Teleport – Teleport Access Plane lets you access any computing resource anywhere. Engineers and security teams can unify access to SSH servers, Kubernetes clusters, web applications, and databases across all environments. Try Teleport today in the cloud, self-hosted, or open source at goteleport.com
LaunchDarkly – Ship fast. Rest easy. Deploy code at any time, even if a feature isn’t ready to be released to your users. Wrap code in feature flags to get the safety to test new features and infrastructure in prod without impacting the wrong end users.
Equinix Metal – If you want the choice and control of hardware…with low overhead…and the developer experience of the cloud – you need to check out Equinix Metal. Deploy in minutes across 18 global locations, from Silicon Valley to Sydney. Visit metal.equinix.com/justaddmetal and receive $100 credit to play.
Featuring:Kris Brandow – GitHub, XJohnny Boursiquot – Website, GitHub, XAngelica Hill – GitHub, LinkedIn, XShow Notes:Something missing or broken? PRs welcome!

Aug 26, 2021 • 59min
Don't forget about memory management
Bryan Boreham (Grafana Labs) and Jordan Lewis (Cockroach Labs) join Mat and Jon to talk about memory management in Go. We learn about the heap, the stack, and the garbage collector. There are also some absolute gems of wisdom scattered throughout this episode, don’t miss it.
Join the discussionChangelog++ members save 3 minutes on this episode because they made the ads disappear. Join today!Sponsors:Sourcegraph – Sourcegraph is universal code search for every developer and team. Easily search across all the code that matters to you and your organization: find example code, explore and read code, debug issues, and more. Head to info.sourcegraph.com/changelog and click the button “Try Sourcegraph now” to get started.
Equinix Metal – If you want the choice and control of hardware…with low overhead…and the developer experience of the cloud – you need to check out Equinix Metal. Deploy in minutes across 18 global locations, from Silicon Valley to Sydney. Visit metal.equinix.com/justaddmetal and receive $100 credit to play.
LaunchDarkly – Ship fast. Rest easy. Deploy code at any time, even if a feature isn’t ready to be released to your users. Wrap code in feature flags to get the safety to test new features and infrastructure in prod without impacting the wrong end users.
Fastly – Our bandwidth partner. Fastly powers fast, secure, and scalable digital experiences. Move beyond your content delivery network to their powerful edge cloud platform. Learn more at fastly.com
Featuring:Bryan Boreham – XJordan Lewis – Website, GitHub, LinkedIn, XMat Ryer – Website, GitHub, LinkedIn, XJon Calhoun – Website, GitHub, XShow Notes:Local meet-up shout-at
Miriah Peterson (captainnobody1 on Twitter) says hello on behalf of the Utah Go User Group, as well as Women Who Go Utah.
Some things mentioned on the show
Statsviz gives you an instant live visualization of your Go application runtime statistics (GC, MemStats, etc.) in the browser
sync.Pool helps you reduce allocations by keeping objects around when they might otherwise be garbage collected
From the Go blog: The Journey of Go’s Garbage Collector
Viewcore
The viewcore tool is a command-line tool for exploring the state of a Go process that has dumped core.
Jordan says:
It’s complicated because it still doesn’t work out of the box, you need my branch which isn’t merged:
https://github.com/jordanlewis/debug/tree/fix-bugs… (my branch)
https://github.com/golang/debug/tree/master/cmd/viewcore… (the upstream)
https://go-review.googlesource.com/c/debug/+/321736… (the CL that isn’t merged yet)
Something missing or broken? PRs welcome!

Aug 19, 2021 • 59min
Caddy V2
Matt Holt joins Jon Calhoun to discuss Caddy, its history, and the process of creating a v2 of the popular web server. In the episode they discuss some of the challenges encountered while building the v2, reasons for doing a major rewrite, and more.
Join the discussionChangelog++ members save 3 minutes on this episode because they made the ads disappear. Join today!Sponsors:Sourcegraph – Sourcegraph is universal code search for every developer and team. Easily search across all the code that matters to you and your organization: find example code, explore and read code, debug issues, and more. Head to info.sourcegraph.com/changelog and click the button “Try Sourcegraph now” to get started.
Equinix Metal – If you want the choice and control of hardware…with low overhead…and the developer experience of the cloud – you need to check out Equinix Metal. Deploy in minutes across 18 global locations, from Silicon Valley to Sydney. Visit metal.equinix.com/justaddmetal and receive $100 credit to play.
Changelog++ – You love our content and you want to take it to the next level by showing your support. We’ll take you closer to the metal with no ads, extended episodes, outtakes, bonus content, a deep discount in our merch store (soon), and more to come. Let’s do this!
Fastly – Our bandwidth partner. Fastly powers fast, secure, and scalable digital experiences. Move beyond your content delivery network to their powerful edge cloud platform. Learn more at fastly.com.
Featuring:Matt Holt – Website, GitHub, XJon Calhoun – Website, GitHub, XShow Notes:
Caddy - A web server written in Go with automatic HTTPS by default.
Caddy v2
Something missing or broken? PRs welcome!

Aug 12, 2021 • 1h 4min
Data streaming and Benthos
Mihai and Ashley join Jon to discuss data streaming. What is it, why is it being used, and common mistakes developers make when setting up. They also discuss some of the tools in the ecosystem, including Benthos, a tool created by Ashley Jeff’s to make the plumbing part of data streaming easier to get right.
Join the discussionChangelog++ members save 3 minutes on this episode because they made the ads disappear. Join today!Sponsors:Teleport – Teleport Access Plane lets you access any computing resource anywhere. Engineers and security teams can unify access to SSH servers, Kubernetes clusters, web applications, and databases across all environments. Try Teleport today in the cloud, self-hosted, or open source at goteleport.com
LaunchDarkly – Ship fast. Rest easy. Deploy code at any time, even if a feature isn’t ready to be released to your users. Wrap code in feature flags to get the safety to test new features and infrastructure in prod without impacting the wrong end users.
Equinix Metal – If you want the choice and control of hardware…with low overhead…and the developer experience of the cloud – you need to check out Equinix Metal. Deploy in minutes across 18 global locations, from Silicon Valley to Sydney. Visit metal.equinix.com/justaddmetal and receive $100 credit to play.
Featuring:Mihai Todor – GitHub, LinkedIn, XAshley Jeffs – Website, GitHub, XJon Calhoun – Website, GitHub, XShow Notes:
Benthos - a data streaming tool created by guest Ashley Jeff’s.
Materialize - a tool for making data streams with sql queries.
Something missing or broken? PRs welcome!