All Episodes
Displaying 31 - 54 of 54 in total
024: Do you understand this weird production behavior?
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 t...

023: Reaction to reddit post on null pointer error in Go
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...

022: What to answer to "Why Go?"
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...

021: Why I had to work 30h straight in 2002
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...

020: Discipline is required to build long-live software
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 comp...

019: Dependencies maintenance in Go
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 chang...

018: WebAssembly runner, a real-world use case
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.* ...

Help your OSS with GitHub CLI, Codespaces and linters
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 ...

016: What I'd hope WASM brought to web dev
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 p...

015: How do you put things in production?
It has been a rough last 4 months for me and I finally get a chance to restart publishing episodes. In this episode I talk a bit about what I've seen so far as process...

014: We should contribute more to open source
An ode to open source. I believe we should try to help more the projects & libraries we're using to build our software. Maintaining and contributing to open source pro...

013: Go's concurrency to the rescue
Real-world story about how Go's concurrency save a .NET performance issue I was having where I needed to call a process that takes 5 to 15 seconds to complete 6m times.

012: Concurrency isn't Go main selling point
Concurrency is hard, building concurrent systems is difficult. I don't think the major selling point of Go is its concurrency model. When trying to have a team adopt G...

011: Options where to deploy your Go servers
I talk about the three main options to deploy your Go web API. From managing your own server to PaaS to function-as-a-service.

010: internal package gotchas
I talk about how the internal package can be used wrongly. I recently had to expose a Go package that I never thought would be expose, hence I've heavily used the inte...

009: Set variables at build time with -LDFLAGS
I talk about how I'm using the -LDFLAGS to inject variables value at build time so it's easier to grab the exact Git commit hash that user are using when reporting iss...

008: The day my Go service got csharpify
I talk about a personal experience where a Go micro-service got csharpify via OOP design pattern and why I think C# / Java developers should approach Go with a much si...

007: Is Go's database/sql verbosity that bad?
I go over some choices and scenarios Go programmers have regarding options to talk to databases.

006: Build softwares that stand the test of time
I gave 3 reasons why I think Go is one of the best language to build long-live programs. Programs that need to run for 15-20+ years.

005: Spring arriving, so is Go 1.18 and Generics
Is Generics going to cause a fragmentation in the community? What's the big deal about it, I personally will appreciate less for-loop where it make sense to reduce ver...

004: Using interfaces for major refactor
I talked about a major refactor I did with StaticBackend adding PostgreSQL support into a tightly coupled MongoDB code base using interface to clean everything up.

003: Pointers or !Pointers, stack, and heap
What are pointers. When not to use pointers and are pointers an optimization vs. using variables.

002: Project structure & package name
I talked about project structure and why it's intimidating at first, coming from other languages with established structure & frameworks. However, it's OK not to have ...

001: Error handling in Go
I talk about error handling in Go, why I think it's good but after a little bit of time getting used to have error as values.
