Fallthrough [Extended]

Package Hell

Subscribers Only
Another week, another Kris & Matt duo episode! This week, we're digging into Go codebase structure, package design, and why the community keeps struggling with the same problems. The conversation starts with a Gopher Slack discussion about how to arrange Go code, moves through package hell and dependency cycles, and ends with a look at community health. As always, we've got supporter content! This week that includes Go's missing project boundary and why internal is a blunt instrument, real world package design patterns, and how modules broke the elegant simplicity of Go's database/sql driver pattern. Not a supporter yet? Fix that today by heading over to https://fallthrough.fm/subscribe ( https://fallthrough.fm/subscribe ) where you'll get not only extra content but also higher quality audio. Sign up today! If you prefer to watch this episode, you can view it on YouTube. This week's episode of Break continues the conversation. Kris and Matt dissect the magic underscore imports in database/sql, argue you should just test against a real database, and then spend the back half debating where Go lands in Bryan Cantrill's "Complexity of Simplicity" quadrant framework. Watch it on YouTube or listen with your favorite podcasting app! Learn more by going to https://break.show/ep/29 ( https://break.show/ep/29 ). Thanks for tuning in and happy listening! Table of Contents: * Prologue (00:00:00) * Chapter 1: Catching Up: Snow, Life, and Episode 60 (00:00:57) * Chapter 2: The Go Repository Structure Problem (00:05:50) * Chapter 3: Package Hell and Dependency Cycles (00:10:19) * Chapter 4: Go's Missing Project Boundary [Extended] (00:16:51) * Chapter 5: Real-World Package Design Patterns [Extended] (00:22:33) * Chapter 6: The Go 1 Compatibility Promise (00:26:58) * Chapter 7: Plugin Design Patterns [Extended] (00:35:06) * Chapter 8: The database/sql Side-Effect Problem [Extended] (00:42:30) * Chapter 9: The Community Must Lead (00:48:17) * Chapter 10: The Dying Gopher Slack and Community Fragmentation (00:59:56) * Chapter 11: "You're Holding It Wrong" (01:07:23) * Chapter 12: GopherCon vs. RustConf: The Energy Gap (01:15:36) * Epilogue (01:21:43) Host: Kris Brandow Co-Host: Matthew Sanabria Beats: Breakmaster Cylinder Fallthrough is produced by Kris Brandow. Socials: * Website ( https://fallthrough.fm/ ) * Bluesky ( https://bsky.app/profile/fallthrough.fm ) * Threads ( https://www.threads.net/@fallthroughfm ) * X/Twitter ( https://x.com/fallthroughfm ) * LinkedIn ( https://linkedin.com/company/fallthrough ) * Instagram ( https://www.instagram.com/fallthroughfm/ )