Low-hanging fruit of DDD: replace primitive data types in domain code with small typed shells (constructor enforces legal values, meaningful to_string). Makes parameters explicit (e.g., Year instead of int), prevents illegal values, and produces readable test output. Heimeshoff recommends eliminating primitives (strings, ints, booleans with Hungarian notation) from domain code.