---
date: 2024-03-20
topic: Domain-Driven Design
guests:
  - Rob Allen
transistor:
  id: 0de0b405
links:
  - - Rob's blog
    - https://akrabat.com
  - - Nineteen Feet
    - https://19ft.com
talking_points:
  - Rebuild vs. rewrite.
  - Writing good commit messages.
  - Are code comments useful?
  - Technical Design Documents and ADRs.
  - Ubiquitous language and Domain-Driven Design.
  - PHP UK, PHP South West, conferences and user groups.
  - DDD in Drupal?
  - DRY and YAGNI.
  - When to refactor?
quotes:
  - I quite like legacy projects because i think they've already proved their worth in the marketplace. (RA)
  - I general, I think that rewriting the wrong approach nearly every single time. (RA)
  - Things are so impermanent. The only things you can trust are in the source code and what's in the revision history of that source code.
  - We have the "what" but we don't have the "why". (OD)
  - As you do this for longer, I think you start picking up on what you wish you'd written in the past. (RA)
  - I think nearly everything related to software development that really matters is invariably about communication. (RA)
  - Nearly everything that results in good quality software is because good communication works. (RA)
  - Ubiquitous language is using the same language the specialists are using. (RA)
  - An awful lot about DDD is trying to get the communication right. (RA)
  - If you pretend it's not happening, it doesn't mean it's not happening - just that you're ignoring the problem. (RA)
  - It's cheaper to fix things earlier in the process. (RA)
  - User groups are such a good community resource. We get to try thing (talks) out. (RA)
  - A conference gives you a focused block of time to learn something. (RA)
  - I think the tenets of DDD can are important regardless (of the size of the project). (RA)
  - We can refactor our way out, but now the overall time is longer. (RA)
  - Time spent upfront is tangible effect on the time spent later. (RA)
  - The biggest one [benefit of DDD] is that you end up with a project that's fit for purpose.
  - You're way more likely to deliver a project that does what the customer needs if you have listened and understood what they said. (RA)
  - It's in the customer's best interest for you to get it right the first time. (OD)
  - You have to be proactive. It doesn't happen by default. (RA)
chapters: []
---

This week, Oliver discusses Domain-Driven Design with PHP UK speaker, Rob Allen.