Dev Day
Notes and learnings from development conferences and workshops
Below is a complete index of all available notes and documentation, organized by project. Click on any title to view its full content.
Two generators run in sequence against a single OpenAPI spec:
| Generator | Owns | Output |
|---|---|---|
oapi-codegen |
Types, enums, nested structs, optional pointers | generated/types.go |
gen/main.go |
Per-tag interfaces, route registration, strict glue | generated/interfaces.go, routes.go, routes.go, requests.go |
The result is a clean boundary: generated code you never touch, and handler files you fully own.
make install-tools
Installs oapi-codegen into $(go env GOPATH)/bin.
spec/
api.yaml ← source of truth, edit this
cfg/
types.yaml ← oapi-codegen config (types only)
gen/
main.go ← custom splitter — generates per-tag interfaces + routes
generated/ ← never edit, safe to delete and rebuild
types.go
interfaces.go
routes.go
requests.go ← strict mode only
server/
middleware/ ← hand-written
handlers/ ← hand-written, implement generated interfaces
server.go ← wires router + middleware + handlers
Makefile
Handlers receive *gin.Context directly. Full manual control.
Why architecture docs fail:
| Problem | Why it happens |
|---|---|
| Too much too early | Spec written before code — outdated by first sprint |
| No time during development | Devs skip it under pressure, never catch up |
| No ownership | Nobody is explicitly responsible → everyone assumes someone else does it |
| Unclear scope | “What actually goes in there?” — no shared answer |
Solution framing: Don’t ask “how do we document everything?” — ask “what and how do we document?” Less is more. Document decisions and context, not implementation details the code already tells you.
Last updated: 2026-05-05Website: https://www.esdm.io/
Core idea: Domain-first modeling language (YAML) that captures DDD, CQRS, and Event Sourcing building blocks in a machine- and human-readable format.
Talk about domain first — technology is secondary.
Common mistake: teams jump to “we’ll use Kafka / PostgreSQL / microservices” before defining what the system actually does. ESDM flips this:
This makes conversations with domain experts productive — they don’t need to understand Kafka to participate.
Last updated: 2026-05-05Balance: Not too much, not too little. Every metric and log must answer a real operational question.
Use Icinga (as already deployed in your infrastructure) and focus on:
Question every metric: If this threshold fires, can we do something about it in 30 seconds? If not, it’s noise.
Last updated: 2026-05-05Rollout date: 18. Mai
Spring releases a batch of security fixes discovered via the Mythos vulnerability check. All branches up to Spring 2.7 are affected.
| Term | Meaning | Examples |
|---|---|---|
| Extensional | Represents external reality — maps things from outside the domain | DTOs, API models, database rows |
| Intensional | Expresses domain concepts from within — gives things meaning | Value Objects, Entities, Aggregates |
The goal: code that reads like the domain language, not like database schema.
Last updated: 2026-05-05