Mathias Verraes

verraes.net · Personal blog · on HN since 2014

Mathias Verraes writes about domain-driven design, event sourcing, distributed systems patterns and software design principles, mostly in a PHP context.

What HN saysHN commenters repeatedly cite his post 'DRY Is about Knowledge' as a clear explanation of the principle, and also link his Erlang 'Let It Crash' post.
21HN people shared it
5linked it in comments
21stories submitted
296story points
1 year agolast shared
2014people per year2026

Most-shared posts

  1. 1
    The Wall of Technical Debt
    4 people · 9 points · first shared 2020 · 1 comments on HN
  2. 2
    DRY Is about Knowledge
    4 people · 1 points · first shared 2020 · discussion on HN
  3. 3
    Higher Order Programming in PHP
    2 people · 10 points · first shared 2014 · discussion on HN
  4. 4
    Patterns in Distributed Systems
    2 people · 7 points · first shared 2019 · discussion on HN
  5. 5
    Domain-Driven Design
    1 people · 251 points · first shared 2021 · 191 comments on HN
  6. 6
  7. 7
  8. 8
    Pre-merge Code Reviews
    1 people · 2 points · first shared 2016 · discussion on HN
  9. 9
    Software design is just theory
    1 people · 2 points · first shared 2015 · discussion on HN
  10. 10
    Practical Event Sourcing (2014) [video]
    1 people · 2 points · first shared 2018 · discussion on HN
  11. 11
  12. 12
    Domains and Bounded Contexts Don't Map 1 on 1
    1 people · 2 points · first shared 2025 · discussion on HN
  13. 13
    Domain-Driven Design is Linguistic
    1 people · 1 points · first shared 2014 · discussion on HN
  14. 14
    Managed Technical Debt [2013]
    1 people · 1 points · first shared 2016 · discussion on HN
  15. 15
    Critically Engaging with Models
    1 people · 1 points · first shared 2022 · discussion on HN

What HN people wrote when they linked it

bojanz · 2024-05-30
Couldn't agree more. There's a great decade-old blog post by Mathias Verraes which illustrates this well, I keep coming back to it: https://verraes.net/2014/08/dry-is-about-knowledge/
Aeolun · 2024-05-30
I was going to say you were talking nonsense, but then realized I’d replaced the original post in my mind, by this much nicer post that someone else linked in this thread: https://verraes.net/2014/08/dry-is-about-knowledge/ They essentially say the same thing, but one is better than the other.
mathiasverraes · 2021-09-27
The definition is highly summarised, which (like many definitions) makes it only useful if you already understand the concept, and you need a way to remember it. Or the definition can be a framework for explaining it to others, which is how I use it in workshops. A more real world story of DDD in practice is this blog post: https://verraes.net/2021/09/design-and-reality/
jchook · 2020-07-21
Some good resources about DRY: > DRY is about knowledge. Code duplication is not the issue. https://verraes.net/2014/08/dry-is-about-knowledge/ > Every piece of knowledge must have a single, unambiguous, authoritative representation within a system https://wiki.c2.com/?DontRepeatYourself
cmrdporcupine · 2020-06-17
Yes, after a few years of Java we all end up there. Frankly it's a good argument for the Erlang "Let It Crash" philosophy. https://verraes.net/2014/12/erlang-let-it-crash/ If IOException on a read is truly happening, and it isn't just a case of a missing file, there are serious issues that aren't going to be fixed with a catch-and-log, or be able to be handled further up the call stack.

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close