
0:00-1:13:11
Streams straight from the publisher. podnod never proxies or re-hosts episode audio.
Interfaces are everywhere in Go. The basic error type is an interface, writing with the fmt package means you are probably using an interface, and there are countless other instances where they pop up. In this episode Mark, Mat, Johnny, and Jon discuss interfaces at length, exploring what they are, how they are using them in their own projects, as well as tips for how you can leverage them in your own code.
Changelog++ members support our work, get closer to the metal, and make the ads disappear. Join today!
Sponsors:
- Linode – Our cloud of choice and the home of Changelog.com. Deploy a fast, efficient, native SSD cloud server for only $5/month. Get 4 months free using the code
changelog2019ORchangelog2020. To learn more and get started head to linode.com/changelog. - The Brave Browser – Browse the web up to 8x faster than Chrome and Safari, block ads and trackers by default, and reward your favorite creators with the built-in Basic Attention Token. Download Brave for free and give tipping a try right here on changelog.com.
- Algorithms with Go – A free Go course where panelist Jon Calhoun teaches you how algorithms and data structures work, how to implement them in Go code, and where to practice at. Great for learning Go, learning about algorithms for the first time, or refreshing your algorithmic knowledge.
Featuring:
- Jon Calhoun – Website, GitHub, X
- Mat Ryer – GitHub, LinkedIn, Bluesky, X
- Johnny Boursiquot – Website, GitHub, X
- Mark Bates – Website, GitHub, X
Show Notes:
- Go Issue #20280 - An issue about a cancellable
io.Copy - Cancellable io.Reader example - An example of how to use interface chaining to create a cancellable
io.Reader. - io.TeeReader - A reader mentioned on the podcast that lets you write everything you read to an output.
- io.MultiWriter - A writer mentioned on the podcast that lets you write to multiple outputs.
- Buffalo plugins package - Interfaces and helper utilities for writing Buffalo’s Go plugins.
- Buffalo plugin implementations - Current plugin implementations for Buffalo.
Something missing or broken? PRs welcome!
Join the discussion
changelog.zulipchat.comChangelog++
changelog.comLinode
linode.comThe Brave Browser
brave.comBasic Attention Token
basicattentiontoken.orgchangelog.com
changelog.comAlgorithms with Go
algorithmswithgo.comWebsite
calhoun.ioGitHub
github.comX
x.comGitHub
github.comLinkedIn
linkedin.comBluesky
bsky.appX
x.comWebsite
jboursiquot.comGitHub
github.comX
x.comWebsite
metabates.comGitHub
github.comX
x.comGo Issue #20280
github.comCancellable io.Reader example
gist.github.comio.TeeReader
golang.orgio.MultiWriter
golang.orgBuffalo plugins package
github.comBuffalo plugin implementations
github.comPRs welcome!
github.com