Speaker Details

Valentin Deleplace


I'm a developer of backends, cloud architecture, performance, algorithms (big-O), databases, and UX. I love coding in Go. I work as a Developer Advocate for Google Cloud Platform.

Swimming pool semaphores

Programming languages

There are 2 easy ways to implement a semaphore with a buffered channel, in order to limit the concurrent access to a resource. Let's illustrate this with a swimming pool!

Then, we'll see in a real use case how to extend sync.WaitGroup and errgroup.Group to leverage concurrency without hitting DB connections exhaustion errors.

The Bloom filter cartoon

Mind the Geek

"Space-efficient probabilistic data structures" can sound... a bit daunting. A Bloom filter is very compact, and is only able to answer "No" or "Maybe". Hashing and probabilities are nice in theory, but what does the Bloom filter really do, and why does it really work? Let's find out with a fun animated example in a nightclub. Did you see the bandit enter?

Talks by tracksTalks by session typesList of SpeakersSchedule