Dominic St-Pierre

Dominic St-Pierre

Go system builder - entrepreneur. I've been writing software systems since 2001. I love SaaS, building since 2008.

Appears in 47 Episodes

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.

Broadcast by