Skip to content

The chapter about DDD is superficial, presents a limited perspective #38

@jsynowiec

Description

@jsynowiec

I wanted to offer some feedback regarding the chapter on Domain-Driven Design (DDD).

The section comes across as somewhat superficial and could be misinterpreted as advocating against the use of DDD altogether. This might unintentionally discourage readers from exploring its benefits. Both strategic and tactical tools from DDD have their place and can be incredibly valuable when applied appropriately (and not necessarily together!). For example, strategic DDD concepts like Bounded Contexts help teams establish clear boundaries in complex systems, while tactical patterns like Aggregates or Value Objects address specific implementation challenges. Strategic DDD is often used alongside other tools like Wardley mapping and the Team Topologies approach to reduce the cognitive load. As usual, it depends on the context and application.

It might be helpful to expand this section to clarify when and where DDD is most applicable, highlighting its strengths without implying it is universally required. Providing examples of contexts where DDD tools can make a significant impact, as well as scenarios where simpler approaches might suffice, could also help the audience better understand its nuanced applicability.

Nevertheless, I agree that "writing code in DDD" misses the point, but it is in itself an indicator of a different problem—limited experience, lack of understanding, and superficial knowledge of those implementing such an approach. It is typically rooted in various "DDD explained in 5 minutes" videos and posts.

Thanks again for sharing your thoughts—I hope this feedback is helpful in refining the chapter!

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions