Skip to main content

Build Event-Driven Applications like a pro

Did you hear about Event-Driven programming but don't know where to start?

Join our training to learn the best Event-Driven patterns in Go.

I'm interested

Building Event-Driven Applications is not easy

Event-Driven patterns are a key part of distributed systems. Microservices using just synchronous communication are like a distributed monolith.

It's not trivial to get started with Event-Driven programming. But once you get to know the patterns, many things in your system become simple.

We're authors of Watermill, a Go library for building event-driven applications. We've been successfully using it in our projects since 2019.

After Go in One Evening, this is another training running on our interactive learning platform. Sign up to help us measure the demand. We'll let you know once it's ready.


You will learn about



Transactional Events




Error handling

How to split






Created by

Robert Laszczak & Miłosz Smółka

Three Dots Labs logo Three Dots Labs founders

We've been coding together for more than 13 years. In 2016, we fell in love with simplicity and pragmatism of Go. In our daily work we're building complex financial and healthcare solutions in Go.

You may know us from the Three Dots Labs blog, the Watermill library, or our e‑book: Go With The Domain: Building Modern Business Software in Go".

When we meet in our free time, we like to cook and eat some steaks and burgers.

Get fast feedback using your favorite editor and a terminal

Many courses feature a web editor you can use to solve exercises. We don't do that.

Using a web IDE skips the initial burden of installing tools. But it's not what you'll be using writing your applications. After finishing our training, you will use the same setup to build real projects.

You will work using your favorite code editor and a terminal. You don't need to worry about downloading snippets and running exercises. Our CLI takes care of it. You can just focus on learning.

I'm interested