The four groups
Classical concurrency primitives
MUTEX · SEMAPHORE · MONITOR · BARRIER
Async/concurrency value types
PROMISE · FUTURE · TASK · COROUTINE
JS Promise, Java/C++ Future, .NET Task, Python/Kotlin coroutine.
Go concurrency keywords
CHANNEL · GOROUTINE · SELECT · DEFER
Words paired with LOCK
SPIN · READ-WRITE · DEAD · DOOR
Why this puzzle works
Three legit-concurrency categories plus a wordplay group all colliding on 'locks and threads'. MONITOR is the trap for the SOLID/OOP-trained player who thinks of it as a class; here it's the classical mutex-style synchronization primitive (Hoare/Brinch Hansen monitors). DEAD belongs in the wordplay group (deadlock) — easy to mis-shelve next to a concurrency-bug-flavored category if one existed.
How to read a Connectle without solving it
A code-themed grouping puzzle rewards counting as much as recognition. Start by listing every plausible group, then notice which tiles appear in two lists. Whichever group has exactly four unambiguous members is your anchor — solve it first and the rest of the board collapses by elimination. The hardest tier (purple) is almost always wordplay: tiles that share a prefix or suffix, not a concept. If a tile feels orphaned, ask whether the same word could follow or precede a common engineering word like root, stack, cache, or queue.