Savoia Regency Hotel - Bologna
November 1st, 2026
November 3rd, 2026

Schedule

We've been working tirelessly for months to bring the best and brightest minds in the industry to GoLab.

This version is not definitive: from now to November there will be some minor changes or some additions but these are going to be the main features of the conference.

See you there!

November 1st, 2026

Day 1
Savoia Regency Hotel

Via del Pilastro, 2
40127 Bologna
Italy

09:00
Registration desk
Networking time

Registration

Register your ticket and collect your conference badge

09:30
GoLab Workshops IV
180
min
workshop

Make your Go server observable in half a day (Workshop)

A Go server is running. Everything looks fine. Then something breaks.

Latency jumps. CPU climbs. Memory starts behaving in ways you didn’t expect. And now you need answers fast.

In this workshop, we take a real Go application behind Caddy and turn it into something you can actually understand in production.


LEVEL: Introductory and Overview

GoLab Workshops III
180
min
workshop

Knowing much, saying little - How to manage Personally Identifiable Information with Go (Workshop)

In recent years new laws in the UK and EU have imposed an obligation on internet services to protect the privacy of their users, and to restrict access to adult content based on age. Legislators have mandated outcomes, but they haven't provided a roadmap for developers to get there. So where does someone without a background in cryptography and data security turn for insight?

I've been a researcher in the field of Digital Identity for more than twenty years now, and in secure communications of one form or another for over thirty. There are plenty of commentators who'll share their opinions with you, I share code.


LEVEL: Intermediate

GoLab Workshops II
360
min
workshop

Ultimate Practical AI (Workshop)

This is a hands-on, full-day workshop where you'll build a complete AI-powered application in Go — from first prompt to production-ready system.

You'll start by connecting your Go application to a language model and grounding its responses in real data using Retrieval-Augmented Generation (RAG).
Then you'll give it the ability to act on the world through Tool Calling, Function Execution, and the Model Context Protocol (MCP).
With the core system working, you'll learn the advanced optimization techniques that separate prototypes from production - speculative decoding, semantic caching, and intelligent model routing.
Finally, you'll harden everything against the security threats unique to LLM-powered systems, from prompt injection to data exfiltration.

Each part builds on the last.

By the end of the day, you won't just understand these concepts - you'll have built, optimized, and secured a working system that retrieves, reasons, and acts.


LEVEL: Intermediate

GoLab Workshops I
360
min
workshop

Ultimate Local AI (Workshop)

Running inference against LLM models that run on your own local hardware means no API costs, no data leaving your machine, and no vendor lock-in. Having the ability to do this with Go has traditionally been painful.

In this workshop, Bill will introduce Kronk, a Go SDK that lets you embed local model inference directly into your Go applications with full GPU acceleration — no CGO required. Whether you are building chat, vision, audio, embedding, or tool calling applications, Kronk gives you the same power as a model server without needing one.
To prove it, Bill built a model server using the Kronk SDK, complete with caching, batch processing, and agent support. You'll see live demos from writing your first chat app to driving a coding agent with a local model.


LEVEL: Advanced

11:00
Catering Area
Networking time

Coffee break

13:00
Catering Area
Networking time

Lunch

15:00
GoLab Workshops IV
180
min
workshop

Create your Proxy Server using Go (Workshop)

GoProxy is an open source library to create a customized HTTP/HTTPS proxy server using Go.
The proxy itself is simply a net/http handler, so you can add multiple middlewares, and It can be easily integrated with any existing Go code (e.g. you can even call external APIs).
Are you ready to write your custom proxy server?


LEVEL: Intermediate

GoLab Workshops III
180
min
workshop

Mechanical sympathy in Go (Workshop)

Go is designed to be simple, but the runtime is complex. To write truly high-performance code, you need Mechanical Sympathy—an understanding of how your code actually hits the metal.

This hands-on workshop pulls back the curtain on the Go compiler and runtime. We will move beyond "tips and tricks" to explore the underlying mechanics of Memory Allocations, Stack vs. Heap, and Goroutine Scheduling.


LEVEL: Advanced

16:30
Catering Area
Networking time

Coffee break

November 2nd, 2026

Day 2
Savoia Regency Hotel

Via del Pilastro, 2
40127 Bologna
Italy

08:45
Registration desk
Networking time

Registration

Register your ticket and collect your conference badge (if you didn't yet).

09:15
Main Hall
Networking time

Conference presentation

09:30
Main Hall
45
min
talk

Keynote#1

TBA

10:15
Catering Area
Networking time

Welcome coffee

10:45
Golab #1
45
min
talk

Generics: the aftermath

5 years after the first working proposal, what changed in the ecosystem? What can be achieved with modern Go?

From iterators, to type-safe testing, to a pure-Go RPC library with no code generation, this session will delve into all things achievable in Go thanks to its generics implementation.


LEVEL: Advanced

Golab #2
45
min
talk

Hacking the Kernel with Go: a practical introduction to eBPF

What would happen if your Go program could "see" every network packet, every file opening, and every Linux system call in real time, without altering a single line of kernel code? Welcome to the world of eBPF. In this talk, we'll demystify how Go can be used to orchestrate this revolutionary technology, enabling the creation of ultra-low latency security and monitoring tools.


LEVEL: Introductory and Overview

11:30
Golab #1
45
min
talk

Beyond benchmarks: systematically tuning Go with the Taguchi Method

In this talk, we introduce a Go framework implementing the Taguchi method, enabling structured experimentation in systems engineering workflows. The framework uses orthogonal arrays to efficiently sample parameter spaces, reducing the number of experiments while preserving the ability to extract meaningful structure from results.

Through a concrete example: tuning a parallel workload by varying goroutine count, workload characteristics, and execution configuration - we explore how parameter interactions surface in practice, including trade-offs between concurrency, scheduling, and infrastructure such as multi-core scaling versus isolated-core execution.


LEVEL: Intermediate

Golab #2
45
min
talk

TBA #1

TBA

12:15
Golab #1
45
min
talk

Green Tea GC: the insight behind Go's new garbage collector

Green Tea's insight is elegant: scan spans, not objects. But how do you actually implement that? What data structures track which objects are marked vs. scanned? Why does the ownership protocol use three states? And how did span-based scanning unlock SIMD optimizations that were impossible before?


LEVEL: Advanced

Golab #2
45
min
talk

How and Why to build compilers and language servers in Go

In this talk, we'll explore why Go has become our platform of choice for developer tooling. We'll start with the fundamentals: what language servers are, what problems they solve, and the core data structures that power them. From there, we'll examine where tooling based on other software stacks have fallen short as codebases scale: limited shared-memory parallelization, unpredictable JIT performance, and mounting memory pressure.

We'll then show how Go addresses each of these challenges: Through goroutines and channels for safe parallel execution, a type system that maps naturally onto AST structures, and binary compilation that delivers raw, predictable performance across platforms - even on the web via WASM. Finally, we'll introduce an open source framework we've built to encapsulate these capabilities and make high-performance tooling more accessible.


LEVEL: Intermediate

13:00
Catering Area
Networking time

Lunch

14:45
Golab #1
45
min
talk

Your tests pass, but do they work? Mutation testing in Go

Continuous Integration has become a standard practice in modern development, and Go provides a rich set of tools to support it: go vet, unit tests, benchmarks, and fuzz testing. Building a CI pipeline that maintains a baseline of quality is straightforward.
But how do we know we're writing good tests? A test that calls a function and discards the result still contributes to coverage. You can hit 100% coverage with zero assertions.


LEVEL: Intermediate

Golab #2
45
min
talk

TBA #2

TBA

15:30
Golab #1
45
min
talk

How to instrument Go without changing a single line of code

Zero-touch observability for Go is finally becoming real. In this talk, we’ll walk through the different strategies you can use to instrument Go applications without changing a single line of code, and what they cost you in terms of overhead, stability, and security.


LEVEL: Intermediate

Golab #2
45
min
talk

TBA#3

TBA

16:30
Catering Area
Networking time

Coffee break

17:00
Golab #1
45
min
talk

Go data compression

With the compression changes introduced in Go 1.27 get to know all the details on when and how to select the best compression options for your Go application.

We will look at the overall picture of different algorithms and how each trades off size, cpu, memory and compatibility so you can make the best decision on which suits the needs you may be looking at.


LEVEL: Intermediate

Golab #2
45
min
talk

No OS? No problem! Writing firmware in pure Go

You can write firmware in vanilla Go.

TamaGo is a Go distribution capable of producing bare-metal binaries, while retaining compatibility with existing libraries and most tooling.

I wrote a completely self-contained FIDO2 USB token implementation (think Yubikey) running off a USB Armory Mk. II without a single line of C.


LEVEL: Intermediate

19:00
TBA
Networking time

Social Event (TBA)

November 3rd, 2026

Day 3
Savoia Regency Hotel

Via del Pilastro, 2
40127 Bologna
Italy

08:45
Registration desk
Networking time

Registration

Register your ticket and collect your conference badge (if you didn't yet).

09:30
Main Hall
45
min
talk

Keynote #2

TBA

10:15
Catering Area
Networking time

Welcome coffee

10:45
Golab #1
45
min
talk

Yes, it runs Doom: building a WebAssembly VM in Go from scratch

In this talk, I’ll show how Go’s tooling, profiling, and fast iteration helped me build a WebAssembly VM from scratch, then push it far enough to run Doom, covering the internals like parsing, execution, memory, debugging, and performance tuning.


LEVEL: Intermediate

Golab #2
45
min
talk

Observability-driven development: why 99.9% uptime doesn't mean your product works

Your users are leaving before you know they had problems. A slow signup flow, a failing payment endpoint, or a broken onboarding step. By the time you hear about it from support tickets, you've already lost trust and revenue.

Most Go applications start with great intentions: fast iteration, clean code, and rapid shipping. But without the right observability foundations from day one, teams end up flying blind. Metrics live in one place, logs in another, and there's no way to connect a spike in error rates to actual user impact.
In this talk, I'll share hard-won lessons from building production systems at scale and show you how to instrument Go applications with user journeys at the center. You'll learn how to build a minimal, effective observability stack using OpenTelemetry, connect technical signals to business outcomes, and establish SLOs that Product and Engineering can co-own.
This is not a talk about adding more dashboards. This is about shipping fast with confidence.


LEVEL: Intermediate

11:30
Golab #1
45
min
talk

Avoiding pitfalls with Postgres and Go

PostgreSQL is probably the most loved database to work with Go, for good reasons!
As someone helping to scale many terabytes-large postgres environments, some seemingly innocent choices like using session variables or savepoints end up being silent bottlenecks limiting the database possibilities.

In this talk we will discuss less common tips on how to keep your postgres running happy with your go application.
The goal is to guide you on how to stay flexible and prevent you from getting stuck in a position that would prevent you from scaling postgres in the future.


LEVEL: Intermediate

Golab #2
45
min
talk

Securing Go for production: best practices, supply chain, testing

Security in Go is mission-critical for production systems. I'll share a real example: my single-line auth bug that gave admin powers to every user, caught by fuzz testing before exploitation.

The talk covers secure coding practices, supply chain protection with govulncheck and Go sumdb, and fuzz testing for critical endpoints.

You'll leave with a production-ready Go security checklist and CI templates.


LEVEL: Intermediate

12:15
Golab #1
45
min
talk

Go performance under pressure: debugging production bottlenecks

Your dashboard says everything is fine. Average latency: 100ms. QPS: stable. Error rate: 0.1%. But users are complaining the app is slow - and they're right.
In this talk, we'll investigate three real production bottlenecks in Go services: a memory issue that caused an OOM kill by Thursday, a goroutine leak invisible to standard metrics, and the deceptive nature of average latency. 


LEVEL: Introductory and Overview

Golab #2
45
min
talk

SQLC deep dive: how SQL becomes type-safe Go code

SQL-compiler or sqlc generates type-safe Go code from SQL migrations and queries. Most developers use it as a black box, but understanding how it works matters because great engineers don’t just use tools — they understand them, question them, and get better by knowing what’s happening under the hood.

We are going trace the compilation pipeline inside sqlc: how it delegates parsing to PostgreSQL’s own parser via pg_query_go, builds an in-memory schema catalog, performs query analysis and type inference across joins, CTEs, and subqueries, and finally generates Go code for PostgreSQL and pgx driver.


LEVEL: Intermediate

13:00
Catering Area
Networking time

Lunch

14:45
Golab #1
45
min
talk

SLog in Anger: production patterns for testable and concise structured logging

The `log/slog` package has been part of the standard library since v1.21 (Aug 2023). Yet, many Go projects are still scratching the surface of its potential. Are you truly making use of all its features?

This talk moves beyond the basics of `Logger` and `Handler` to explore how `slog` transforms logging from a tedious chore into a powerful, maintainable, and testable system. We’ll quickly review `slog`'s robust stack, then dive deep into practical, production-ready patterns.


LEVEL: Intermediate

Golab #2
45
min
talk

TBA#4

TBA

15:30
Golab #1
45
min
talk

Trust nothing: how to audit third-party Go binaries securely

Received a Go binary with no source?

Learn to audit Go binaries without source via eBPF tracing and static analysis. We will cover a practical workflow to spot unexpected HTTP, filesystem, or network activity and explain how Go's binary structure aids analysis. We will briefly use Ghidra to visualize internal structures without deep reverse engineering skills.


LEVEL: Introductory and Overview

Golab #2
45
min
talk

Full Stack Go: from native mobile app to REST backend

Go on the backend? Check
Go on the web frontend? Check*
Go on the desktop GUI frontend? Check
Go on the mobile frontend? Without web and webviews? Check

Follow me on my crazy adventure of putting Go at every level of my stack because I'm a monomaniac gopher.

* with WASM


LEVEL: Intermediate

16:30
Catering Area
Networking time

Coffee break

17:00
Golab #1
45
min
talk

Dashcam to Timelapse: a concurrent pipeline in Go

My dashcam records road trips as hundreds of 1 minute MP4 clips. A recent 9 hour road trip across Western Canada produced 540 tiny files and inspired me to create a timelapse video. That’s far too many clips for any video editor to handle so I built a tool in Go to turn them into timelapses automatically.

This started as a simple ffmpeg wrapper but after some nerding away it turned into a real world coding problem: I needed to validate all 540 video files, detect trip boundaries from the metadata, and orchestrate a multi-stage processing pipeline, ideally without taking a full 30 minutes to run.


LEVEL: Intermediate

Golab #2
45
min
talk

Creating a full desktop environment with Go!

## Setting the scene - 3min

## Technologies and Architecture - 5min

## Implementation of the basics - 8min

## Integrations - 6min

## App suite for our desktop - 5min

## Try it out and contribute - 3min


LEVEL: Intermediate

18:00
Main Hall
Networking time

Goodbye Gophers!

Farewell and thanks to all Gophers, some news about the next edition

GoLab is a conference made by Develer.
Develer is a company based in Campi Bisenzio, near Florence. Our motto is : "Technology to give life to your products". We produce hardware and software to create exceptional products and to improve industrial processes and people's well being.
In Develer we have passion for the new technologies and we offer our clients effective solutions that are also efficient, simple and safe for the end users. We also believe in a friendly and welcoming environment where anybody can give their contribution. This passion and this vision are what we've been driven to organize our conference "made by developers for developers".


Subscribe to our newsletter

We hate spam just as much as you do, which is why we promise to only send you relevant communications. We respect your privacy and will never share your information with third parties.
©2026 GoLab | The international conference on Go in Italy-Design & devCantiere Creativo-Made withDatoCMS