What is this “product” you speak of?

We talk about “software products” and “product teams.” What does this even mean, “product?” It is not the definition I learned in school. Economics 101: the output of the economy is “goods and services.” Goods, also called “products,” are physical items that you can buy, take home, and have. Like, if you buy a rug, …

Read moreWhat is this “product” you speak of?

a fire hydrant is sideways on the ground.

Run an OpenTelemetry Collector locally in Docker

This is an experience report for my future reference (and yours). The OpenTelemetry Collector is useful for receiving trace data in whatever format and exporting it to the back-end of your choice for storage and querying. For instance, I wanted to receive traces over HTTP/JSON from this sneaky browser extensionLINK and send them to Honeycomb. …

Read moreRun an OpenTelemetry Collector locally in Docker

Better coordination, or better software?

TL;DR: When different parts of an organization need to coordinate, it seems like a good idea to help them coordinate smoothly and frequently. Don’t. Help them coordinate less — more explicitly, less often. Software systems get big, and they have lots of parts, and those parts need to talk to each other. Maybe we’re building …

Read moreBetter coordination, or better software?

Project to Product asks more of our software, and more of us

TL;DR: Projects ask teams do what is asked of them; Products ask teams to invent their work. This requires a different way of seeing the world, and not everyone can do it yet. Software is not an up-front investment that pays off over its use. Software is an ongoing concern, an intricate piece of a …

Read moreProject to Product asks more of our software, and more of us

All Paradigms Converge in Domain Driven Design

This is a keynote, first for DDD xChange 2021. Video: Keynote: The Best of Everything in DDD (Domain-Driven Design eXchange 2021) – YouTube Abstract In the last decade, I’ve journeyed through OOP, functional programming, TDD, microservices, DevOps, etc etc etc. They all have their crucial contributions to how we write software, but one stands at …

Read moreAll Paradigms Converge in Domain Driven Design