Discovergo podcast()
go podcast()
Claim Ownership

go podcast()

Author: Dominic St-Pierre

Subscribed: 38Played: 303
Share

Description

15 minutes news, tips, and tricks on the Go programming language.
35 Episodes
Reverse
A follow-up episode on last week episode. We go a little bit deeper into Encore with André Eriksson. Encore can do a lot for your Go project and infrastructure. It allows your team to focus on your product and provides local development and DevOps tooling that help your team go faster.Links:Encore.dev - websiteEncore on GitHubAndré on TwitterHow to support the show:Share and talk about it.Purchase my courses: Build SaaS apps in Go and Build a Google Analytics in Go (50% off for listeners of the show).Want to join as a guest, pitch me your idea via Twitter @dominicstpierre.
This week I'm joined by Bill Kennedy. Bill makes me discover Encore which can handles service-to-service communication while programmers focus on their application. We talk about domain design in Go and how to architect an isolated system following the 3-tier layer design.Links:Encore GitHub repoArdan Labs Encore GitHub repoArdan Labs Service GitHub repoBill on TwitterArdan LabsAs always if you enjoy the show consider sharing it / talking about it. If you'd want to support the effort the best way is by purchasing my courses, Build SaaS apps in Go and Build a Google Analytics in Go. Those links have a 50% discount coupon applied to them for listeners of the show.
My upcoming SaaS product at first wasn't suppose to be rolled out as a product, but was for my own usage. Turns out as I was using it and selling my online courses that it appears to me as being fairly usefull and could compete against existing course selling platform.The hic is that it wasn't built as a SaaS in mind, so I have to deploy one application per customer. It's completely multi-tenant. To help with automating the deployment of a new tenant, I wrote and orchestrator with agents to facilitate the deployment of a new application. I thought this part could be interesting to hear about as it's written in Go.Want to support the show? The best way is by purchasing my courses Build SaaS apps in Go and Build a Google Analytics in Go. Listeners of this show get a 50% discount on all store product.
In this episode I talk with John Arundel about cryptography in Go. John wrote a great book on the subject called Explore Go: Cryptography.Security is a growing concerns and you should up your game as a Go programmer. We're lucky to have such a solid crypt package in the standard library. I'd encourage you to get familiar with it if you haven't yet.Links:Explore Go: CryptographySubscribe to John's contentJohn on TwitterAs always, if you want to support this show the best way (other than talking about it) is by purchasing my courses: Build SaaS apps in Go and Build a Google Analytics in Go, here's a 50% direct discount for listeners of this podcast.
In 2021 Twilio sent a termination email on their Fax services. I was consulting as the CTO in a credit bureau that was in the start of an acquisition process with Equifax Canada. There was just no time to "waste" on changing provider and rewriting this part of the system to satisfy the new provider API.Would have been grand if the provider would have offered a shim that replicated Twilio's API and map that to their own API. Imagine how many companies needed to rewrite this part at the same time. Offering this as the provider that receives X thousands new customers would have been a superb engineering experience.So maybe we can apply this concept internally as well. When a team needs to introduce breaking changes, a good solution might be for them to provide a shim over the old API so no other teams need to do anything.This is obviously a tad dangerous and might introduce some technical debt. But as everything, it depends.
I receive Chris Shepherd and we talk about gRPC in Go. If you're building systems with lots of micro-services, gRPC is a good way to provide strong contracts between your services and improve communications.Links:Chris on TwitterThe Buf CLIExample protobuf registryThe best way to support this show, other than talking about it, is by purchasing my online courses on Go: Build SaaS apps in Go and Build a Google Analytics in Go. Here's a direct link with a special discount for the pod listeners.
This episode was supposed to be focussing on templ, the tempalte library, but as I was going in details I found it hard not to explain the back story of why I started looking for something to help html/template be more "fun" to build rapid side projects, you know, CRUD heavy web application.Links:templ: https://templ.guide/The lib I forgot the name during the episode: https://github.com/Masterminds/sprigIf you'd like to support this show the best way is to puchase my courses, I've one call Build SaaS apps in Go and another one called Build a Google Analytics in Go. Here's a direct discount for listener of this show.
Quick solo episode on TDD and when I experienced it was used best and when I personally not use it but use an approach of writing a bit of code, than tests, thant another bit of code, etc.Buying my courses is the way to support this show, here's a direct discount for listeners.
I chatted with Matt Boyle about debugging Go code. Matt is creating a course about this topic and discussing debugging as a tool you may add to your toolbelt.LinksThe Ultimate Guide to Debugging With GoDomain-Driven Design with GolangMatt on Twitter aka XGoland Insiders (Go Twitter community)As always, if you'd like to support this podcast the best way is to purchase my courses / talk about them. I have 2 courses on Go and here's a direct discount for podcast listeners.
I believe we can do better regarding software engineer interviews and this entire process (also including onboarding). I think companies that will be mediocre at those two aspects will have a hard time with younger programmers, which I fully support.
Iterators are going to be useful to process large amount of data without having to load an entire slice or maps in memory but instead create iterators that can be used from a for item := range myIterators().If you'd like to support this show and/or are interested in Go courses I have, here's a direct discount link specially for listeners of this show.
Something absurd happened in 2024 for one of my consulting client's production web application, and this code for a time. The time zero value is behaving differently than it has been since 2018.{{if .TimeField}}    Date has a value: {{ .TimeField }}{{else}}    No date, zero value{{end}}I launched my new course Build a Google Analytics in Go, if you're interested and/or want to support this show that's how to do it.
I react to the post on the Go subreddit of last week talking about a null pointer error occuring in production for a Go program.This is the YouTube video I made.If you'd want to support this podcast, I have Go courses available for purchase here, I just launch my latest course Build a Google Analytics in Go with a 50% discount for listener of this show.
Typical reasons to use Go might sounds exciting for us used to Go, but might not be as attractive for people that haven't experienced Go yet and might not realize they have some small heritants that Go fixes/improves.I've pre-launched my new course call Build a Google Analytics in Go, as listener to this podcast you're getting a 50% off during pre-sale, the course is due to launch before the end of December.If you want to support this show, purchasing the course is the best way, also talking about it ;).
Things were very different when I started as a junior developer. This is a story of an out of the ordinary day where worked from ~9h am to 11am (the next day), the two of us that were in charge of everything at a small financial company.This one has nothing to do with Go, but I thought it was worth telling as a story.I'm soon to launch (pre-launch) my next course Build a Google Analytics in Go. If you're interested make sure to sign-up for the newsletter on my store. https://store.dominicstpierre.com/
As we're building more and more of distributed systems I believe that one trait / culture successful team will require is discipline. Personal opinion, we tend to complicate our lives in the last decade compare to what things were before. But without an extra attention to some details, it will be a nightmare to maintain systems in the long run.As always, if you'd like to support the show the best way is to purchase my course. Sharing it also very much appreciated.
I talk about dependencies management in Go. How to keep your dependencies up-to-date and how to check if there's any updates available. What to do when a package change their major version.List all packages and latest versions:$ go list -m -u allUpdate all packages to their latest minor versions:$ go get -u ./...If you'd like to support this podcast consider buying a copy of my course Build SaaS apps in Go.
I was toying with the idea of using WebAssembly runner as a plugin / extension mechanism from a Go (host) program to extend the capabilities of a program at runtime.* min/max bult-ins coming in 1.21: https://tip.golang.org/ref/spec#Min_and_max* wazero: https://github.com/tetratelabs/wazero* wasmr: https://github.com/wasmerio/wasmer-go* StaticBackend: https://github.com/staticbackendhq/core
I'm trying to make my open source backend API project StaticBackend as easy as possible to contribute.Couple of things I've added lately was worth mentionning. GitHub Codespaces is helpful and nicely done. It goes 1-step further than Docker and make contributing to an open source project a simple task, especially for small and quick 1-time contribution.This couple with GitHub CLI, which I admit, have just starting using it. And linters to make sure the quality of the code is as high as it can be.StaticBackend website | GitHub repoIf you'd want to support this podcast, the best way is to talk about it, sponsor my open source project or purchase my course Build SaS apps in Go.
I talk about what I'd love to see coming to web development. While WebAssembly can be used as an alternative to JavaScript, I believe we're not looking into the real problems related to building web application.
loading
Comments 
loading
Download from Google Play
Download from App Store