Thomas Much's Avatar

Thomas Much

@thmuch

Technical Coach. Occasional Speaker. Pair Programming, Mob/Ensemble/Team Programming, Modern Agile, modern Java. DevSecOpsUxQa...Customer! Posts in English and German.

463
Followers
433
Following
155
Posts
27.08.2023
Joined
Posts Following

Latest posts by Thomas Much @thmuch

Preview
How to debug a team that isn’t working: the Waterline Model A guide to solving team problems (without always blaming the people)

"Snorkel before you scuba. Start at the top, always. Snorkeling means checking the shared systems first—goals, roles, and decision-making—before you start diagnosing personalities."

06.03.2026 07:30 👍 2 🔁 1 💬 0 📌 0
Post image

I usually kick off my tactical DDD training with this flipchart exercise, because there's a misconception I run into time and again: people confusing monoliths with big balls of mud.
...

25.02.2026 11:47 👍 4 🔁 1 💬 1 📌 0
Post image

⭐ #JavaLand 2026 Top Speaker Session

"API-Tests, Contract-Tests, Consumer-driven Contract-Tests – alles dasselbe?" mit Thomas Much

👉 Weitere Informationen & Vortrag merken: scomp.ly/Bm4oez4

24.02.2026 08:59 👍 2 🔁 1 💬 0 📌 0
Pattern card: Distributed Monolith (Architecture). Stats: Latency 95/100, Pain 99/100, Maintain 5/100, Resume HIGH. Quote: "Why call a method locally when you can send a synchronous HTTP request across three availability zones?". Special ability: Cascading Failure - If one service fails, the entire cluster throws 500s. Stack trace size: 400MB.

Pattern card: Distributed Monolith (Architecture). Stats: Latency 95/100, Pain 99/100, Maintain 5/100, Resume HIGH. Quote: "Why call a method locally when you can send a synchronous HTTP request across three availability zones?". Special ability: Cascading Failure - If one service fails, the entire cluster throws 500s. Stack trace size: 400MB.

# Analysis
The result of taking a spaghetti codebase and throwing it across the network. Driven by the cargo cult of "Microservices," architects often slice a highly coupled system into smaller pieces without actually establishing bounded contexts or autonomous data ownership. 

You haven't decoupled your domains; you've merely decoupled your deployment artifacts. By doing so, you have successfully replaced highly optimized, in-memory local function calls with unreliable network hops, JSON serialization overhead, and eventual inconsistency.

**The Reality:**
To deploy a single, trivial feature, four different teams must orchestrate their releases in a highly specific, coordinated sequence, essentially recreating Waterfall over a CI/CD pipeline. Local development is practically impossible unless developers are issued laptops with 64GB of RAM to run 15 interdependent containers via `docker-compose`. 

When a user clicks "Checkout", the system initiates a fragile, synchronous HTTP chain reaction across six different services. If just one sidecar proxy hiccups, the entire transaction collapses, leaving the database in an inconsistent state and generating a distributed stack trace large enough to trigger your logging provider's billing alerts. You traded a simple `NullPointerException` for a `504 Gateway Timeout`.

# Analysis The result of taking a spaghetti codebase and throwing it across the network. Driven by the cargo cult of "Microservices," architects often slice a highly coupled system into smaller pieces without actually establishing bounded contexts or autonomous data ownership. You haven't decoupled your domains; you've merely decoupled your deployment artifacts. By doing so, you have successfully replaced highly optimized, in-memory local function calls with unreliable network hops, JSON serialization overhead, and eventual inconsistency. **The Reality:** To deploy a single, trivial feature, four different teams must orchestrate their releases in a highly specific, coordinated sequence, essentially recreating Waterfall over a CI/CD pipeline. Local development is practically impossible unless developers are issued laptops with 64GB of RAM to run 15 interdependent containers via `docker-compose`. When a user clicks "Checkout", the system initiates a fragile, synchronous HTTP chain reaction across six different services. If just one sidecar proxy hiccups, the entire transaction collapses, leaving the database in an inconsistent state and generating a distributed stack trace large enough to trigger your logging provider's billing alerts. You traded a simple `NullPointerException` for a `504 Gateway Timeout`.

For some weekend fun:

🚨 WoB PATTERN: Distributed Monolith

"Why call a method locally when you can send a synchronous HTTP request across three availability zones?"

worstofbreed.net/patterns/dis...

#worstofbreed #SoftwareArchitecture #MaintenanceNightmare #TechHumor

21.02.2026 14:09 👍 4 🔁 3 💬 0 📌 0
Preview
java.evolved Code Snippets | java.evolved A collection of modern Java code snippets. Every old Java pattern next to its clean, modern replacement — side by side.

java.evolved – Every old Java pattern next to its modern replacement, side by side.

javaevolved.github.io

16.02.2026 18:18 👍 57 🔁 18 💬 1 📌 1
Rebecca’s Web – Flow Focused Testing Strategies After evaluating the Test Pyramid and alternative testing suite shapes, we present an alternate system testing strategy and first version of a testing pattern language centered around flows.

Friday reading...another patterns paper I co-authored with Karl Evard and presented at PLoP25: on flow-focused testing strategies: wirfs-brock.com/rebecca/pape...

13.02.2026 22:33 👍 6 🔁 2 💬 0 📌 0
Preview
The Agile Manifesto at 25 – The Most Talked-About Unread Document In Software Feb 11th 2001 – exactly 25 years ago – was the first day of a 3-day meeting at the Snowbird ski resort in Utah that gave birth to the Manifesto for Agile Software Development. Like all …

It's 25 years to the day that proponents of iterative, "lightweight" development methodologies came together in Utah to work on their ski tans and pen the Manifesto for Agile Software Development.

I have thoughts, which I've typed out to make them visible.

codemanship.wordpress.com/2026/02/11/t...

11.02.2026 11:19 👍 20 🔁 13 💬 2 📌 2
Post image

I'll be doing a livestream on the anniversary of the manifesto meeting:
Feb 11,
6pm Europe time
noon US Eastern time.
I'll have about 10 guests asking questions, the thing will be recorded for later viewing and also livestreamed.
: www.youtube.com/@totheralist... is the link

09.02.2026 22:00 👍 2 🔁 1 💬 0 📌 0
Preview
Stop generating, start thinking - localghost Instead of wanting to learn and improve as humans, and build better software, we’ve outsourced our mistakes to an unthinking algorithm.

I've been on a bit of a social media hiatus, but I've written a new post about something that's been on my mind a lot lately localghost.dev/blog/stop-ge...

08.02.2026 20:34 👍 167 🔁 31 💬 17 📌 12
Post image Post image Post image Post image

Despite all challenges, problems & things gone wrong: I like to remember (and turn up) the good things, as it helps me stay sane in this ever faster spinning world 🌍🌎🌏

31.12.2025 09:39 👍 0 🔁 0 💬 0 📌 0
Post image Post image Post image Post image

Looking back at 2025, personally: A year of changing perspectives, of turning some worlds upside down, of celebrating nature & arts, of enjoying the moments.

See you in 2026! 🥂🎉

31.12.2025 09:39 👍 1 🔁 0 💬 1 📌 0
Preview
Wrapstodon 2025 for Thomas Much See how Thomas Much used Mastodon this year!

Over at Mastodon, they made a nice little wrap-up of "my" year 2025: mastodon.social/@thmuch/wrap...

29.12.2025 10:56 👍 0 🔁 0 💬 0 📌 0

Conferences 2026 confirmed so far:
@javaland.bsky.social (10.03.)
#DevLand (13.03.)
#ScrumMasters HH (21.05.)

29.12.2025 10:56 👍 0 🔁 0 💬 1 📌 0
Post image Post image Post image

Looking back at 2025, professionally: Again a year of speaking at conferences, writing, talking, listening ... Thank you for being part of my journey 😊

One of the highlights: 1st time programme chair of a conference – on Tech Excellence 🤩

Here's to the next 12 months 🤓🎉🚀🦄

29.12.2025 10:56 👍 2 🔁 0 💬 1 📌 0
A brightly decorated Christmas tree

A brightly decorated Christmas tree

Happy Holidays & Merry Christmas! 🎄✨⭐️

25.12.2025 11:45 👍 3 🔁 0 💬 0 📌 0
Post image Post image Post image Post image

Making of 🎬️👨‍🍳 ...

23.12.2025 22:02 👍 0 🔁 0 💬 0 📌 0
Post image Post image Post image Post image

Gingerbread house no. 13 – a father & son production since 2013 😍🎄✨️

I celebrate every year we're still committed to creating this treat together 😊

23.12.2025 22:02 👍 4 🔁 0 💬 2 📌 0

My favorites this year follow on from my selection last year pretty well: bsky.app/profile/thmu...

15.12.2025 07:27 👍 0 🔁 0 💬 0 📌 0

All of these books address collaboration and shared understanding from different perspectives and on different levels.

Quite a challenge again to select only four books 🙃

15.12.2025 07:27 👍 0 🔁 0 💬 1 📌 0
Post image

Most relevant IT books 2025, IMHO:
📕 "Architecture for Flow" by @suksr.bsky.social
📗 "User Needs Mapping" by @richallen.info
📘 "Frictionless" by @nicolefv.bsky.social and Abi Noda
📙 "Code Health Guardian" by Artie Shevchenko

Thank you for sharing your experience 🙏

15.12.2025 07:27 👍 13 🔁 3 💬 1 📌 0
Post image Post image Post image

Gestern Abend beim DevTalk@TK: @reabmax.bsky.social zeigt, wie man vom strategischen #DomainDrivenDesign zum taktischen #DDD kommt – und führt die wichtigsten Patterns mit Live-Coding vor. Ein schöner Einstieg und Überblick! 😊

www.meetup.com/de-de/devtal...

09.12.2025 07:43 👍 4 🔁 1 💬 0 📌 0
Post image

Good progress so far 😊

02.12.2025 20:38 👍 0 🔁 0 💬 0 📌 0

🙃 useful for solving the coding puzzles – and decorated by a most wonderful advent calendar 😊

01.12.2025 22:17 👍 2 🔁 0 💬 0 📌 0
Post image

Advent of Code 2025 starts today 🎉🎄

adventofcode.com

Thanks to @was.tl for once again providing us with funny and educational coding challenges in the weeks before Christmas – for more than 10 years now 🤩. Much appreciated! 🙏

#AdventOfCode

01.12.2025 20:31 👍 8 🔁 0 💬 2 📌 0
Release banner for v1.0

Release banner for v1.0

🚀 #ApproveJ v1.0 ("ONE-POINT-ZERO") was just released! 🎉🥳🍾

🧹 all deprecated methods have been removed
🪲 approving by file is now also possible in parameterized tests
📖 minor updates in the manual

github.com/mkutz/Approv...

#approvaltesting #snapshottesting #java #kotlin #unittesting #release

01.12.2025 14:44 👍 4 🔁 2 💬 0 📌 0
Post image

Hier sind die Folien zu meinem Vortrag "Coaching-Modelle für Technical Agile Coaching" beim ScrumTisch Darmstadt: thomas-much.de/presentation...

Vielen Dank für die klasse Diskussion hinterher – das ist der Grund, warum man zu Meetups geht 😊

19.11.2025 21:41 👍 3 🔁 0 💬 0 📌 0

Will be back at JavaLand 2026 next year 🤩

12.11.2025 07:12 👍 2 🔁 0 💬 0 📌 0
Preview
Coderetreat A free community event to practice professional software development

More information about coderetreats and Global Day of Coderetreat: www.coderetreat.org

07.11.2025 21:32 👍 0 🔁 0 💬 0 📌 0

We did a classic coderetreat with Conway’s Game of Life, Test-driven Development (TDD) and Social Programming with pairs and teams of three (Pair Programming and small Team Programming). And of course we suggested some constraints for the kata, for deliberate practice.

07.11.2025 21:32 👍 3 🔁 0 💬 1 📌 0
Post image Post image Post image Post image

This weekend is Global Day of Coderetreat 2025! We hosted an internal event today, our first GDCR event actually – and more than 30 developers from 3 company divisions (not only IT!) showed up 🤩

That was a very promising start! Looking forward to next year 😃

🤓🤖👾

#coderetreat #gdcr2025

07.11.2025 21:32 👍 3 🔁 0 💬 1 📌 0