
Cup o' Go
180 episodes — Page 3 of 4
Ep 79And now for something completely different, with Ran Bar-Zik & Gil Adda
Proposals🗜️ Accepted: Add new compress/zstd packagePreviously discussed in Episode 31🧼 Accepted: runtime: add AddCleanup and deprecate SetFinalizerPreviously discussed in Episode 73🗜️ Accepted: refuse to generate and/or use RSA keys smaller than 1024 bits🇮🇱 GopherCon Israel 2024, thoughts byy Shay Nehmad❄️ Blog post: New unique package by Michael KnyszekPreviously discussed in Episode 33 and Episode 38Go malware capable of cross-platform backdoor attacks🌩️ Lightning Roundgarble, Obfuscate Go codeecs, the Entity Component SystemPlease participate in the Go Developer Survey!Interview with Alice Merrick in Episode 73InterviewRan Bar-Zik https://x.com/barzikGil Adda https://www.linkedin.com/in/gil-adda-6117b9/CyberArk ★ Support this podcast on Patreon ★
Ep 78Do Androids Dream of Electric Gophers? New Go releases & interview with Elliott Minns
Go 1.23.1 & 1.22.7 released🚫 Proposal accepted: encoding/json: add omitzero optionEpisode 34: Interview with Joe Tsai about encoding/json/v2✍️ script v0.23.0Episode 56: Interview wit xiaq, author of Elvish Episode 21: Interview with John ArundelGo blog: Telemetry in Go 1.23 and beyond by Robert FindleyRunning Go on a Raspberry Pi (הרצת גו על רספברי פיי)🌩️ Lightning Round🚣♀️ river v0.10.0AriaSQLOn Reddit🍜 OpenTofu Registry gets a User InterfaceEpisode 30: Interview with Ohad Maislish about OpenTofuInterview with Elliott Minns from Dreams of CodeWatch the interview on YouTubeDreams of Code on YouTubeWeb site: dreamsofcode.io ★ Support this podcast on Patreon ★
Ep 77✄ To bisect or not to bisect? I guess the answer's in the middle with Jamie Tanna's step counter!
Thanks to Jamie Tanna for joining as Co-host!Our gracious patrons support this show. Consider joining as a member, too!Conferences roundup🇮🇱 GopherCon Israel Sep 9th https://www.gophercon.org.il/🇩🇪 Fyne Conf 2024 Sep 20th https://conf.fyne.io/🌐 GoFunc Oct 3rd https://gofunc.ru/🇰🇪 GopherCon Africa Oct 18th-19th https://nairobi.gophers.africa/🇸🇬 GopherCon Singapore https://2024.gophercon.sg/🇮🇹 GoLab Nov 11th-13th https://golab.io/Proposals✄ proposal: debug/bisect: publish x/tools/internal/bisect⚠️ proposal: errors: add All and AllAs iteratorsReleases🗃️ Cue 0.10.0 with experimental embed support⚡️ Lightning round🐣 You're not mature enough to release your first version as v1🏃 New release for FIT: Garmin watch protocol in Go💬 The most exciting part of Go 1.23🗺️ Open Source database diagram editor ★ Support this podcast on Patreon ★
Ep 76Where is the "Advanced Mode" switch?
🎉 Go 1.23 is here!Blog: Range Over Function Types by Ian Lance TaylorA look at the spec: Tree walking with range-over-func by Jonathan HallConferences & CFPs🇦🇺 GopherCon AU, Nov 7-8 Sydney, AustraliaCFP closes Sept 15🇺🇸 GoWest, Oct 25, Lehi, Utah, USAStill accepting lightning talksLane Wagnerboot.devLane Wagner on Cup o' GoJonathan Hall on Backend Banter🇸🇬 GopherCon SingaporeCFP closes Aug 26🇩🇪 FyneConf, Sept 20, Berlin, GermanyCFP closes today, Aug 23🇬🇧 GopherCon UK 2024 talks are now online!Proposal accepted: add Context method to testing.T🌩️ Lightning roundtimelinizeBlog: gRPC over HTTP/3 by Kevin McDonaldJonathan's wasmws fork & the original ★ Support this podcast on Patreon ★
Ep 75📊 While we wait for Go 1.23, we discuss the latest Stack Overflow survey results
For Patreon, Swag, past episodes, and more, visit 🔗 https://cupogo.dev/!🏛️ Go 1.22.6 & 1.21.13 released 🕵️ CVE-2024-24790 explained (and scored on Synk)🧪 Likely accept: add Context method to testing.T🧑💻 StackOverflow 2024 developer survey results ★ Support this podcast on Patreon ★
Ep 74🎮 BDFL but drop the FL, Game Development, and more!
For Patreon, Swag, past episodes, and more, visit https://cupogo.dev/!🫡 Leadership Transition in the Go Project🧑⚖️ ProposalsAccepted: Adding Text() to the crypto/rand libraryProposal (likely decline): add crypt(3) compatibility in the stdlibActive Proposal: Telemetry in Delve🤝 CommunityGopherCon EU 2024 videos have been uploaded online 🎮 GameDevNew minor version for ebitengineGo for RPG tutorial on YouTube by CodingWithSphere🏎️ Lightning round💰 Go & Money🔐 Quantum-Safe TLS🐑 New ollama release ★ Support this podcast on Patreon ★
Ep 73Don't skip the gym! 🏋️ And interview Alice Merrick, UX researcher on the Go team
📝 Go 1.23: Interactive release notesNew proposalsruntime: add AddCleanup and deprecate SetFinalizer👉 weak: new package providing weak pointers💪 Bufstream enters public betaLightning RoundProfiling in Go: A Practical Guide by Noam YadgarCogent Core initial releaseNew RansomHub Ransomware VersionInterview with Alice MerrickPrevious episode 59: All about community ★ Support this podcast on Patreon ★
Ep 72🇰🇪 yield(RC2, 1st GopherCon in Africa, LLMs, Dreams of code, and more)
News this week:🆕 rc2 is out Google Groups noticeThe actual Merge List🇰🇪 GopherCon Africa Oct 18-19Does Go benefit more from copilot than other languages?Range-over-func demystifiedZach Musgrave's post from dolthub; Go range iterators demystifiedJohn's take on it; First impressions of Go 1.23's range-over-func feature⚡️ Lightning round"This cli component was trickier to build than I thought" by Dreams of Code on YouTubeIntroducing Quartz: A Deterministic Time Testing Library for Go by Spike Curtisov - feature rich terminal pager release v0.35.0Want to support the show? Here are some ways to do it!Twitter (X. Ugh) techhub.social/@cupogoYouTubePatreon ★ Support this podcast on Patreon ★
Ep 71⏲️ ⚡️ That feeling when your timer returns the wrong time & new 🌩️ lightning round!
Conferences & CFPs🇮🇱 GopherCon Israel, Sept 9 @ Tel AvivCFP open until Jul 15🇦🇺 GopherCon AU, NoCFP open until Sept 15🇮🇳 GopherCon India, Dec 1 @ Jaipur🇩🇪 Fyne Conf, Sept 20 @ BerlinCFP open until Aug 16🇸🇬 GopherCon Singapore, October TBDCFP open until Aug 19Go 1.23 draft release notes⏲️ Blog: Resetting timers in Go by Anton Zhiyanov🌩️ Lightning RoundGeomys, A Blueprint for a Sustainable Open Source Maintenance Firm by Filippo Valsordagithub.com/openhue/openhue-go — A library for interacting with the Philips Hue smart lighting systems.github.com/frederikaverpil/neotest-golang — Reliable Neotest adapter for running Go tests in Neovim.github.com/AllenDang/giu — A rapid cross-platform GUI framework for Go.github.com/ergochat/ergo — A modern IRC server written in Go. ★ Support this podcast on Patreon ★
Ep 70The Go release that was completely Expected, conferences, and cookies! 🍪🍪🍪
Go 1.22.5 & 1.21.12 releasedConferences🇮🇱 GopherCon Israel, Sept 9 @ Tel AvivCFP open until Jul 15🇦🇺 GopherCon AU, NoCFP open until Sept 15🇮🇳 GopherCon India, Dec 1 @ JaipurNew proposal: include abandoned packages in list of deprecationsBlog post: gRPC: The Good Parts by Kevin McDonald🍪 New package: github.com/syntaqx/cookieFound on Reddit: How Go allowed us to send 500 million HTTP requests to 2.5 million hosts every day ★ Support this podcast on Patreon ★
Ep 69🎹 As simple as Do, Re, Mi, Go 1.23 (rc1), baby, you and me!
Visit our homepage - cupogo.dev - for links to our Patreon, Store, past episodes, and more.🚢 Releases1.23 RC1 released1.22.5 & 1.21.12 pre-release announcementProposals1️⃣ Accepted: cmd/gofmt: change -d to exit 1 if diffs exist🆕 Accepted: list deprecations and newer available dep versions 🪢 Accepted: spec: allow range-over-func to omit iteration variables Community⛈️ gRPC: The Bad Parts ★ Support this podcast on Patreon ★
Ep 68Cup o' Go Live from Amsterdam!
Thanks, Erik Dubbelboer, John Basila, Suchith, and Hiji, for co-hosting the episode!Which GUI library to choose?Caesar, a new Go Web Framework"How to prove I am good at Go apart from having work experience?""Where should I learn Go?"Learn Go with Tests ★ Support this podcast on Patreon ★
Ep 67🎮 Gaby, help me learn 5 tips about Game Development in Go and goreleaser them
Visit our homepage - cupogo.dev - for links to our Patreon, Swag Store, and more.Next week, on June 19th, we're doing a physical meetup! Join #amsterdam on the Gopher Slack to join up.🇩🇪 GopherCon Europe next week, June 17-20Can’t afford to attend online? Fill in this form: https://forms.gle/gcDGxnRJvjXbVPuZ6🎲 math/rand: make global seed a no-op📦 goreleaser v2 released📼 A few Go tools for production-level developer applications (Orca meetup Mar 2023)🎮 Why is Go not used for game development?GMTK Game Jam 2024 - Hosted by Game Maker's Toolkit🦾 gabyhelp - a new bot to help automate work in the Go issue tracker🧐 5 small tips I recently learned in Go ★ Support this podcast on Patreon ★
Ep 66“I don't have money, but I do have a very particular set of ~skills~ connectors” — Ashley Jeffs
Go 1.22.4 & 1.21.11 releasedProposalsNew: safer file open functionsgithub.com/google/safeopen alternativeopenat man pageNew: allow range-over-func to omit iteration variablesBlog: Flaky Tests Overhaul at UberBlog: Redpanda acquires Benthos to expand its end-to-end streaming data platformInterview with Ashley JeffsTwitterLinkedInGitHubAnnouncement discussion on Hacker NewsRedpanda Connect project pagePrevious Benthos interview in Episode 27Redneck language in RedHat, cerca 1998 ★ Support this podcast on Patreon ★
Ep 65Go, meet hugging face 🤗, interview with Riccardo Pinosio
Go 1.22.4 & 1.21.11 coming Tuesday, June 4Community eventsGolang Atlanta meetup, June 13Cup o' Go Meetup in Amsterdam, June 19Golang Tilburg meetup, June 20Proposal accepted and implemented: new iterator functions in maps package coming in 1.23Reddit: What software shouldn't you write in Go?Blog: Blazingly Fast Shadow Stacks for Go by Felix GeisendörfBlog: Abusing Go's infrastructure by Pedro VilaçaAd breakEpisode 15, interview with Adelina Simion about her book, Test-Driven Development in GoInterview with Riccardo PinosioHugging Facehugot on GitHubONNXKnights Analytics ★ Support this podcast on Patreon ★
Ep 64🕸️ With great power comes great responsibility, or why not to use the linkname directive 🔗
ProposalsAccepted: require Linux 3.17 kernel for Go 1.24Previous discussion: Episode 61Accepted: add encoding.AppendText and encoding.AppendBinaryPrevious discussion: Episode 62Accepted: add HostLayout directive type🪟 Accepted: Normalize line endings in example output comparisonsConference updates🇮🇱 GopherCon Isreael CFP open until June 30🔒 gosec v2.20.0 releasedIncluded in golangci-lint v1.58.2See also: govulncheckOpen issue: lock down future uses of linknameRelated blog post: Accessing Private Functions, Methods, Types and Variables in Go by Yarden LaifenfeldThanks to Miki for filling in!His new book, Effective Go Recipes ★ Support this podcast on Patreon ★
Ep 63This just in! When is a constructor that returns an interface appropriate? 🤔
Upcoming conferences🇯🇵 June 8: Go Conference 2024 @ Tokyo, Japan🇩🇪 June 17-20: GopherCon EU @ Berlin, Germany🇳🇱 June 19-21: DevOps Days @ Amsterdam, Netherlands🇷🇺 June 24-25: Golang Conf 2024 @ St. Petersburg, RussiaProposals👍 Accepted: go telemetry subcommandPrevious discussion on Episode 62⛔ Declined: Notify of new major dependency versionsPrevious discussion on Episode 62🆕 New: Make math/rand.Seed a no-opThe unique package has been implemented✅ Previous discussion on Episode 33Around the community🤔 Reddit: Is it idiomatic to create a constructor that returns an interface?GitHub CLI 2.49.1 includes contribution from Shay ★ Support this podcast on Patreon ★
Ep 62A quick tour of some proposals, and a long chat about OpenAPI with Jamie Tanna
Go 1.22.3 & 1.22.10 releasedProposalsAccepted: add binary.Append functionLikely accept: new `go telemetry` subcommandLikely decline: Notify about new major versions of dependenciesPackt book bundleInterview with Jamie TannaBlog: Creating a more sustainable model for `oapi-codegen` in the futureBlog: oapi-codegen is moving to its own orgon GitHub: github.com/deepmap/oapi-codegen ★ Support this podcast on Patreon ★
Ep 61🤹 Pick any number, but not like that! Bartek Nowotarski talks Go vulnerability research
Consider supporting the show by joining our Patreon!🆕 ReleasesGo 1.22.3 & 1.21.10 coming Tuesday🪇 ConferencesGopherCon Brazil, May 9 & 10GopherDay Taiwan, May 25🤹 Secure RandomnessBlog: Evolving the Go Standard Library with math/rand/v2Blog: Secure Randomness in Go 1.22 by Russ Coxnew proposal: Require Linux kernel 3.17 for Go 1.24🧑🔬 Interview with Bartek Nowotarski about Go vulnerability researchBlogHackerOneTwitterHTTP/2 RFC9133Luck ★ Support this podcast on Patreon ★
Ep 60🍪 Who stole the cookie from the cookie jar? Plus Paul Jolly talks about CUE
Proposals🍪 Accepted: support partitioned cookiesArticle: Prepare for thrid-party cookie restrictionsNew: add reflect.AssertToDeclined: builtin is[T any](any) boolMeetups & Conferences🇨🇿 Prague Go Meetup, April 23🇳🇱 Rotterdam Go Meetup, April 23🌐 Conf42 Golang, April 25, Online🇬🇧 GopherCon UK CFP closes May 17🇮🇹 GoLab CFP closes May 6Blog: Welcome to the Microsoft for Go Developers BlogBlog: Go performance from version 1.0 to 1.22 by Ben HoytInterview with Paul JollyCUE web siteTwitterLinkedIn ★ Support this podcast on Patreon ★
Ep 59All about community - Dev Survey, Meetup Roundup, and talking with Bill Kennedy
For more info, transcripts, and all the links, visit https://cupogo.dev.🗳️ 2024 Go Developer SurveyHugot, Huggingface pipelines for GoWhy is NPS bad? A blogpost by Jonathan🍕 Meetups🇺🇸 Denver 🇺🇸 Atlanta🇳🇱 Amsterdam🇮🇱 Israel🧙 An interview with Bill KennedyTwitter https://twitter.com/goinggodotnetLinkedIn https://www.linkedin.com/in/william-kennedy-5b318778/Ardan Labs https://www.ardanlabs.com/instructors/bill-kennedy/Hanna HatsThis show is supported by you! If you feel so inclined, please become a member of our Patreon: https://www.patreon.com/user?u=52571196 ★ Support this podcast on Patreon ★
Ep 58🌊 Avoid HTTP/2 floods, 🤐 don't log your secrets, and 🗣️ upcoming conferences
Go 1.22.2 & 1.21.9 releasedBlog: HTTP/2 CONTINUATION Flood by Bartek NowotarskiBlog: HTTP/2 CONTINUATION Flood: Technical Details by Bartek Nowotarski🗣️ Conferences & CFPsOfficial Go "Wiki" conferences list🏴 Go West, October TBD @ Lehi, UtahCFP🌐 Conf42 Golang, April 24 @ Online🇧🇷 GopherCon Brazil, May 9-10 @ Florianópolis, SCAround the community🤐 Blog: Prevent sensitive data from leaking by Willem SchotsReddit discussion: If you could redesign Go from scratch, what would you change?Ad break:Software you can love conference: https://sycl.it/ ★ Support this podcast on Patreon ★
Ep 57🚲 Bikeshedding about bikeshedding, and Go Community Roundup
Proposals(re)accepted: add slices.Repeat functionaccepted: report use of too-new standard library symbols with go vetFrom around the communityBlog: Context-induced performance bottleneck in Go by Gabriel AugendreNew community Q&A site: godev.com, powerd by Apache AnswerBlog: Go Enums Still Suck by Steven McCutcheonOn Reddit ★ Support this podcast on Patreon ★
Ep 56🚫 Computer says "No" 🧝 Plus one shell to rule them all with xiaq
🇮🇹 GoLab 2024 coming up Nov 11-13 in Florence ItallyCFP open through May 1Proposals🚫 Declined: time.Parse: letter-based formats🚫 Declined: support int(bool) conversions🗨️ Active: add builtin function is[T any](any) bool🚫 Declined: range over nil function should panicWork with Jonathan HallInterview with xiaq🧝 Elvish web sitezsh user manual ★ Support this podcast on Patreon ★
Ep 55What makes a first-class Go port? Plus 👸 OpenAPI tools fit for a princess, with quobix
🇬🇧 Manchester Go Meetup, April 3Proposals🕛 Declined: time: add "1136214245" as layout string for unix timestamp💪 Active: promote windows/arm64 to first class portGo Blog: More powerful Go execution tracesDesign document: Execution tracer overhaulNeovim plugin for gopls documentation linksOn Reddit👸 Interview with quobixPersonal sitePrincess B33f Heavy Industrieslibopenapiopenapi-changeswiretapvacuumJSON CrackOn YouTubeAPI Days conference ★ Support this podcast on Patreon ★
Ep 54🛡️ Focus on security & crypto w/ Filippo Valsorda
🛡️ Security releases. Upgrade now!Go 1.22.1 & 1.21.8google.golang.org/protobuf v1.33.0👭 Happy International Women's Day!Upcoming meetups & events🇬🇧 London Gophers, March 20🇮🇱 Go Israel, March 12🇬🇧 GopherCon UKConference, August 14-16CFP is open!Accepted proposals: Migrate x/crypto packages into the standard libraryAround the communityGo enums suck (hackernews discussion)Reddit: Why does Go have so many traps?Blog: for Loop Semantic Changes in Go 1.22: Be Aware of the ImpactInterview with Filippo ValsordaPersonal web site: https://filippo.io/cryptopals.com challengesStanford Cryptography course on courseraRecurse CenterRead/sign up for Filippo's newsletter/blogThe blog post that started it all: I'm now a full-time professional open source maintainer ★ Support this podcast on Patreon ★
Ep 53Gleefully announcing new releases and projects from around the 🌌 GopherVerse & GopherJS interview with Grant Nelson
🛡️ Security updates coming on TuesdayGo 1.22.1 & 1.21.8google.golang.org/protobuf and github.com/google/protobuf🧀 Open proposal: use SwissTable to improve hash map performanceRelated releasesGopherJS 1.19 beta1 with Go 1.19 support (w/o generics)TinyGo 0.31.0 with Go 1.22 supportAround the communityUpcoming Go Isreal Meetup, March 12 @ OrcaGopherVerse, AI-Gopher generator from Creative Fabrica🔭 GopherWatch, keep tabs on Go modulesCreated by Mechiel Lukkien, interviewed in episode 3Go Blog: Robust generic functions on slices by Valentin DeleplaceReddit: My experience with Go as a Python developer🎙️ glee🏄 Interview with Grant NelsonGopherJS on GitHubWorkivaGrant on GitHub ★ Support this podcast on Patreon ★
Ep 52🔁 Iterating through the week's news
Meet the hostsMeet Shay: 🇮🇱 Go Israel Meetup, March 12 @ OrcaMeet Jonathan: 🇳🇱 Go Amsterdam Meetup, Feb 27 @ Creative FabricaProposalsDeclined: 🤐 archive/zip: support for encrypted archivesAccepted: 🔁 iter: new package for iteratorsAccepted: 🗺️ maps: add iterator-related functionsLikely accept: 🍕 slices: add iterator-related functionsLikely accept: bytes, strings: add iterator forms of existing functionsBlog post: Questioning Go's range-over-func Proposal by Richard Ulmergo generate considered unsafe? ★ Support this podcast on Patreon ★
Ep 51slices.Pete and slices.Repeat sat on a fence, and interview with Daniel Martí
Proposals:new: add slices.Repeat functionaccepted: deprecate runtime.GOROOTFrom the Go blog: Routing Enhancements for Go 1.22How I write HTTP services in Go after 13 years by Mat RyerWeaveworks shutting downOn Reddit: Go 1.22 yielding a 18% regression in single-threading performanceOn YouTube: Why I Use Golang in 2024 by ThePrimeTimeInterview with Daniel MartíProjectsgofumptCUEshSocialGitHubBluesky ★ Support this podcast on Patreon ★

Ep 50🆕 Most of what you need to know about Go 1.22
New releases♬ Go 1.21.7 and 1.20.14 released🧹 golangci-lint 1.56.1 released, including support for `--show-stats` and John's bugfixConferences and Meetups🇮🇱 Go Israel March 2024 hosted by Orca SecurityGo 1.22 Feature RundownOfficial announcement, release notes, and download linkCool interactive release notes by Anton ZhiyanovThe Loopvar bug has been fixedRange over int is now supported with range over func iterators in experimental modeNew math/rand package, the first v2 to land in stdlibNew HTTP routing, with support for methods and wildcardsMuch to Shay's chagrin, Accepted: net/http: allow multiple spaces between method and path in mux patternsNew Slices package, including a great blog post about the Concat func from Carlana JohnsonBetter look for "trace" tool's web UIAd breakPatreon ★ Support this podcast on Patreon ★
Ep 49🧑🚀 For our 1st anniversary, we debate about (white)space in Muxers for a looooong time
Happy 1st anniversary to Cup o' Go! 🥳Proposalsgo build -json acceptedallow append(nil, arg) declined (playground link), because of existing alternativego vet: warn about recover in non-deferred function declined, because of lack of dataallow multiple spaces between method and path in mux: new proposalReleasesgofumpt 0.6.0go-elasticsearch v8.12.0 with OT supportCommunityByteByteGo's "How Disney Hotstar Captures One Billion Emojis!" (Medium article alternative)Ad breakPatreonGitting Things Done by Omer RosenbaumThis show is supported by you! Consider joining as a Patreon member to support the show. ★ Support this podcast on Patreon ★
Cup o' Go - Trailer
trailerPreview for the Cup o' Go podcast - keep up to date with the Go (golang) community in 15 minutes per week, with Jonathan Hall and Shay Nehmad! ★ Support this podcast on Patreon ★
Ep 48A bunch 🍇 of grape things are happening
This show is supported by you! Consider joining as a Patreon member to support the show.Go 1.22RC2 releasedTake the new Go developer surveyLearning Go, 2nd edition now available for e-purchase, print coming soonListen to our interview with the author in Episode 44GopherCon talk by Russ Cox: Go ChangesHighlighting toolsgoimportcycletypexReddit thread🍇 grapeReddit thread ★ Support this podcast on Patreon ★
Ep 47📐 ⓦide rąnge οf tøpics wíth Yarɗen Laifėnfeld as gµest hoʂt
This show is supported by you! Consider joining as a Patreon member to support the show.Thanks Yarden for coming on the show!ProposalsDeclined: ASCII output in Go tools, PowerShell investigation underwayLikely Accept: `-json` flag for go buildThe new Range syntaxGo Wiki: Rangefunc ExperimentRange over int, over func proposalGo 1.22 range functions with database/sqlBlog postsDebugging Go compiler performance in a large codebaseJaskaGO’s coordinated strike on macOS and WindowsError handling in Go web apps shouldn't be so awkward ★ Support this podcast on Patreon ★
Ep 46🤔 I think this IS a big deal & a whole bunch 🍇 of community projects
You can now sponsor the show directly, via Patreon!Go 1.21.6 & 1.20.13 releasedConferencesGoFunc 2024, March 14-15 online, in RussianFOSDEM, Go Devroom Feb 3-4 in Brussels, BelgiumGopherCon EU, Athens, Feb 6-8 in Athens, GreeceVideo/transcript of talk by Rob Pike: What We Got Right, What We Got WrongAround the communityGitHub's move to generated SDKsGo 1.22: Interactive release notes by Anton ZhiyanovMeet OpenBao, an Open Source Fork of HashiCorp VaultOpenTofu is going GAApache AnswerPocketbase ★ Support this podcast on Patreon ★
Ep 45🎉 A new year, and a 🎉 new pure-go SQLite library, with Ross Light
Go 1.22RC1 is outDraft release notesgolang.org/x/crypto/ssh vulnerability fixedCUE 0.7.0 releasedCUE web siteAnnouncing River: fast and reliable background jobs for GoReddit: Why is reinventing the wheel so prominent in Go?Reddit: Is it stupid to have a Go backend and NextJs frontend?SQLiteGitHub: Benchmarks for Golang SQLite Driverszombiezen.com/go/sqlite 1.0 releasedMarmotInterview with Ross LightAnnouncement: zombiezen.com/go/sqlite reaches 1.0Blog: Go and SQLite: when database/sql chafesBlog: What color is your function?Ross's blog: zombiezen.com ★ Support this podcast on Patreon ★
Ep 44🗓️ Go 1.22RC1 next week; 📈 show analytics year in review, and chat with Jon Bodner, 📕 author of Learning Go, 2nd Ed.
🐚 golang.org/x/crypto/ssh fix pre-announcement, upgrade Monday, December 18The Go wiki has moved!🗓️ Go 1.22RC1 coming Tuesday, December 19Proposals👎 declined: cmd/compile: allow compile-time override of constants👎 declined: cmd/go: add language localization support to go docGo blog: Finding unreachable functions with deadcode🐳 Docker whale-comes AtomicJar, maker of TestcontainersListen to previous interview with go-testcontainers maintainer Manuel de la Peña in episode 38📚 BooksLearn Concurrent Programming with Go by James CutajarLearning Go, 2nd Edition by Jon Bodner, coming January 2024Thanks to all our listeners for making the Cup o' Go podcast a success in 2023! We're looking forward to another great year of Going in 2024.Interview with Jon BodnerRead the pre-release of Learning Go, 2nd Edition from O'ReillyLinkedInJonathan's review of the 1st edition: Written, or Video ★ Support this podcast on Patreon ★
Ep 43Go developer survey says, everybody uses Linux! And discussion on data engineering in Go
Go 1.21.5 & 1.20.12 releasedGo Developer 2023H2 survey results are inProposalsaccepted: deadcode command is on the waynew: Add localization support to go docnew: Allow compile-time override of constantsBlog: Optimizing Go string operations with practical examples by Alex BledeaThis week's sponsor: Jonathan Hall's Fractional Gopher serviceInterview with Mickey ShnaidermanPrevious episode with Benthos interviewPrevious episode with debugging blog postReco ★ Support this podcast on Patreon ★
Ep 42🐳💐 DON'T PANIC! We have a bunch of good blogs for you, plus Sam Lown talks invoicing with Go
Announcements🔐 Go 1.21.5 & 1.20.12 pre-announcement🧊 Go 1.22 frozen, this time for realCommunity☕️ Mattproud's great Reddit answer for Java developers🐍 Another good blog post from Preslav about Python vs GoRich Hickey's talk about a similar subject🦪 Ralf Steube developed a really cool tool for shell completions🤫 Small Atom from Brandur about mixing a private function so external packages won't implement itInterview with Sam Lown, talking about the Go Business Language, dunking on XML, and marveling at the complexity of human society🦃 GOBL: https://gobl.org/⭐️ Star the repo: https://github.com/invopop🧾 Invopop: https://www.invopop.com/🐦 Sam's Twitter: https://twitter.com/samlown ★ Support this podcast on Patreon ★
Ep 41🐍 Shay has had it with these flippin' snakes on this flippin' show! + Canopy interview with Webb Morris
CFPs🇩🇪 GopherCon Europe, Berlin.Conference dates June 17-20, 2024CFP open until Feb 18, 2024Paged OutCFP open until Nov 25, 2023Proposals📖 accepted: cmd/doc: support 'go doc package@version' syntaxReleases🐍 cobra v1.8.0 releasedHugo v0.120.0vscode-go v0.40.0From around the communityNilAway: Practical Nil Panic Detection for Go🤖 Go-specific ChatGPT botsGopherBroMoss the Go ExpertGolang MentorMiki Shorts on Arden LabsInterview with Webb Morris, founder & CTO of Canopy, who leads development of their Remote Monitoring and Management (RMM) platform for smart hardware solutions.Canopy ★ Support this podcast on Patreon ★
Ep 40🦃 Giving thanks for the Go Rorschach test, and chat with Ultimate Go Tour translator, Lucio Moraes
Thank you to this week's sponsor, Backend Banter!Conferences & CFPs🇧🇪 FOSDEM '24, Feb 3&4 @ BrusselsGo Devroom CFP through December 1🇬🇷 GopherCon EU, Athens, Feb 6-8CFP Through November 19🇧🇷 Ultimate Go Tour from Arden labs now available in PortugueseThe original: A Tour of GoProposals❄️ Accepted: cmd/go: add support for dealing with flaky testsAccepted: x/tools/txtar: implement fs.FSCheck out the golang.org/x/tools/txtar package🦃 Proposal meetings on hold until November 29. Happy Thanksgiving everyone!Community UpdatesThere won't be a testify/v2Is it a gopher or a walrus, or General Grievous?Video: The Ultimate Go Blueprint LibraryVideo: Debugging Go core dumps[Sponsored] Backend Banter is the only podcast dedicated to backend development, technologies, and careers.Get 14% off Cup o' Go Merch with coupon code HAPPYBDAY14 through EOYInterview with Lucio MoraesThe Ultimate Go TourGitHub repoOn LinkedIn ★ Support this podcast on Patreon ★
Ep 39🎂 Happy birthday, Go! 🎂
Thank you to this week's sponsor, Backend Banter!🎂 Happy birthday, Go!Go was announced 14 years agoWatch Russ Cox's intro videoGo 1.21.4 & 1.20.11 released with important Windows security fixesProposalsMake deadcode a supported commandMemory arenas on hold indefinitelyReleases🦍 Gorilla v1.8.1sqlc v1.23.0Related: Announcing sqlc-gen-gosarama 1.42.0AWS SDK for Go Aligns with Go Release Policy on Supported Runtimes (Bye-bye Go 1.5 support)Around the communityReddit: What Go-related content creators do you follow?Awesome GoOn Rands Slack: discussion about Close() vs GCRequest an invitation to the Rands leadership slackGo Case Studies[Sponsored] Backend Banter is the only podcast dedicated to backend development, technologies, and careers. ★ Support this podcast on Patreon ★
Ep 38❄️ Be unique, just like everyone else & interview with 📦 testcontainers maintainer Manuel de la Peña
Thank you to this week's sponsor, Backend Banter!🛡️ Security pre-release announcementGo 1.21.4 and 1.20.11 coming on Tuesday, November 7Conferences🇮🇪 GopherCon Ireland yesterday🇸🇬 GopherCon Singapore ongoing, yesterday and today🇬🇧 Fyne Conf today🇦🇺 GopherCon AU, November 10-11🇨🇳 GopherChina, November 19🇮🇹 GoLab, Italy, November 19-21ProposalsAccepted: new package with unique.HandleBlog post: netaddr.IP: a new IP address type for Go by Brad Fitzpatrickℹ️ New: Standardize -help outputAlternate proposal: show the help when the --help/-h flag is passedNew: bytes: add Reader methods Buffered, Peek, and DiscardBenchmarks:On Hold: testing: add Keep, to force evaluation in benchmarksAccepted: testing: add testing.B.Loop for iterationBlog post: Unmasking a Go HTML Parser Bug with Differential Fuzzing by Maciej MionskowskiRelated project: radamsa, test case generator for fuzzingDiscussion: "Real" Go projects that would be considered idiomaticpex, a tool to make piping easierOn GitHubDemo videoPodcast: Security Cryptography Whatever[Sponsored] Backend Banter is the only podcast dedicated to backend development, technologies, and careers.📦 testcontainers interview with Manuel de la PeñaWeb site for Testcontainers for GoOn GitHubLatest release: v0.26.0Follow ManuelGitHubLinkedIn ★ Support this podcast on Patreon ★
Ep 37🏠 Home on the Range over ints and funcs & 🛡️ Go security with Juho Nurminen
Thank you to this week's sponsor, Backend Banter!ProposalsAccepted: spec: add range over int, range over funcRange over int targeted for Go 1.22Range over func targeted for Go 1.22 behind the GOEXPERIMENT=rangefunc flagAccepted: go/version: package for handling Go version stringsAccepted: io/fs, net/http: new interface for automatic ETag servingConferences🧭 GoWest happening TODAY in Lehi, Utah, and onlineReleasesgolangci-lint v1.55🛋️ Kivik v4.0📚 BooksLearn Go with Pocket Sized Projects (discount code)Jonathan's reviewGoBooks repository[Sponsored] Backend Banter is the only podcast dedicated to backend development, technologies, and careers.🛡️ Interview with Juho Nurminen of MattermostSocialTwitterMastodonBlog postscmd/go: go.mod toolchain directive allows arbitrary executionProposals mentionedos/exec: return ErrDot from LookPath when argument is relativehtml/template: full support for JS template literalshtml/template: rewrite JS parserhtml/template: use x/net/html for parsingResourcesPortSwiggerHackerOne ★ Support this podcast on Patreon ★
Ep 36🗠 gopls 0.14 with opt-in telemetry is coming! And Eliav Lavi talks about some challenges with JSON
Thank you to this week's sponsor, Koyeb!gopls v0.14.0-pre4 releasedPrevious discussion about opt-in telemetry in episode 12GopherCon BrazilConference: May 9, 2024 in Florianópolis, SCCFP open until December 15, 2023"Forward compatibility" painsGo modules initialised by go1.21.1 cannot be built using go1.20.8Using go mod tidy on v1.21+ breaks usage of older Go modThird-party compression library: github.com/klauspost/compressNew book: gRPC Microservices in Go by Hüseyin BabalGo Blog: Everything You Always Wanted to Know About Type Inference — And a Little Bit More by Robert GriesemerFyne community contributionsfyne-streamer: Audio/Video WidgetDiagramWidgetAnd don't forget about Fyne Conf coming November 3 in Edinburgh[Sponsored] Get $50 in free Koyeb credit by filling out a 2-second form, with code cupogo: https://form.typeform.com/to/HcwWKsAzEliav Lavilunar.devTwitter: @eliavlavi ★ Support this podcast on Patreon ★
Ep 35🛡️ HTTP/2 security fix, 🚫 no more untyped zero, and hacking 🧬 DNA in Go with Timothy Stiles
Thank you to this week's sponsor, Koyeb!Go 1.21.3 and 1.20.10 releasedProposalsRetracted: untyped builtin zeroAccepted: Move wiki to x/websiteRelated discussion (closed for now): Should the Go project stop importing GitHub PRs?Ongoing discussion: encoding/json/v2Checkout last week's episode for related interview with Joe TsaiViper v1.17 released with slog supportConferences and eventsGo Israel meetup, November 7Go Amsterdam meetup, November 21 (tentative)Around the communityReddit: What problem did Go solve for Google?Blog: A Deep Look Into Golang Profile-Guided Optimization (PGO) by Yahya Sayad ArbabiRelated interview from episode 31 with Peeter Seebach aka Seebs[Sponsored] Koyeb new feature alert: Built-in Observability to Monitor Your Apps PerformancesFind the show on YouTube now. "Like and subscribe!"🧬 Interview with Tim Stiles about Poly, a Go package for engineering organisms.PolyGitHub Profile ★ Support this podcast on Patreon ★
Ep 34Clothe your returns 👕 and all about encoding/json/v2 with Joe Tsai
Thank you to this week's sponsor, Koyeb!Go 1.21.2 & 1.20.9 released. Upgrade yesterday!💻 Hacktoberfest is happening nowHow to participateGo projects participatingProposals🔀 Accepted: testing: shuffle seed should be different when -shuffle=on and -count flag is setPreviously discussed in episode 32🧮 Accepted: math/rand/v2: revised API for math/randPreviously discussed in episode 20 and episode 28👕 New: gofumpt: Clothe naked returnsDiscussion: encoding/json/v2Relevant Go JSON benchmarksNew from the Go team:New in Go 1.21: WASI supportOrganizing a Go moduleAdelina's book: Test-Driven Development in Go[Sponsored] Koyeb new feature alert: Built-in Observability to Monitor Your Apps Performances🎙️ Interview with Joe TsaiGitHub profileFind the experimental packageGoDocGitHubJoin us on Slack! #cup-o-go on the Gopher Slack. ★ Support this podcast on Patreon ★
Ep 33🤖 ☕ Your job is safe from AI and interns, & interview with Ian Smith: a new way to write Go microservices
Thank you to this week's sponsor, Koyeb!Go 1.21.2 & 1.20.9 to release Oct 5Conferences🇺🇸 Go West Conference, Lehi, Utah, USA & Online, October 27🌐 Go-perf Meetup, CFP closes Oct 7, event early NovemberProposals & Bug Reports☕ Active: Add intern package🏎️ Closed: cmd/go: 1.21 regression in test times with -raceBlog posts⚒️ Forward Compatibility and Toolchain Management in Go 1.21Deconstructing Type Parameters[Sponsored] Koyeb new feature alert: Built-in Observability to Monitor Your Apps PerformancesInterview with Ian Smith🥖 Parigot@iansmith ★ Support this podcast on Patreon ★
Ep 32🔀 Shuffle your tests, 🔠 WHY IS YOUR CAPSLOCK ON? and interview with Wilken Rivera of GDN
Thank you to this week's sponsor, Koyeb!🇺🇸 GopherCon, San Diego, CA, USA, September 25-28OpenTofu (formerly OpenTF) officially joins the Linux FoundationBlog post: OpenTF is NOT the fork🔀 Proposal: testing: shuffle seed should be different when -shuffle=on and -count flag is setBlog posts➿ Go blog: Fixing For Loops in Go 1.22Go blog: Backward Compatibility, Go 1.21, and Go 2Thoughts on slogtest, by Peter Aronoff🔠 Capslock: What is your code really capable of?[Sponsored] Koyeb new feature alert: Built-in Observability to Monitor Your Apps PerformancesInterview with Wilken Rivera of the Go Developer Network (GDN)About GDN on GitHubGDN on MeetupSign up to be a sponsorSign up to be a speakerBlog Post: So You Want To Start a Meetup by Paul BaloghUpcoming GopherCon Events in San DiegoGopherCon meetup for meetup-orgranizers, Sept 26GopherCon community day mentorship Sept 26United Go Meetup, Sept 28👩 Women Who Go Meetup, Sept 26Neurospicy Meetup, Sept 27🌈 Rainbow Alliance Meetup, Sept 27Slack channels for meetup organizers#meetup-organizers on the Gophers Slack#gdn-meetups on the Gophers Slack ★ Support this podcast on Patreon ★
Ep 31Conferences galore for Q4, Alien Abduction 🛸, and interview with Peter Seebach aka Seebs on Go performance
Thank you to this week's sponsor, Koyeb!So many conferences!🇺🇸 GopherCon, San Diego, CA, USA, September 25-28🎟️ Tickets still available🏨 Hotel discount extended to Monday, September 18🇮🇪 GopherCon Ireland, Dublin, November 2🏴 Fyne Conf, Edinburgh, November 3CFP open until October 6🇸🇬 GopherCon Singapore, November 2-3🇦🇺 GopherConAU, Sydney, November 8-10🇮🇹 GoLab, Florence, Italy, November 19-21Proposalsencoding: add AppendText and AppendBinarycmd/go: add support for dealing with flaky tests🗜️ compress/zstd: implement support for compressing and decompressingBlog post: CGO Performance In Go 1.21 by Shane Hansen🛸 Gopher Slack update: #general and #random were temporarily abducted by aliensVarious Localization issues and proposalsProposal: Localization support in Go & x/text: localization supportProposal: cmd/go: add language localization support to go docShare your thoughts on #cup-o-go[Sponsored] Koyeb new feature alert: Built-in Observability to Monitor Your Apps PerformancesInterview with Peter Seebach aka SeebsGitHub ★ Support this podcast on Patreon ★