Be WET between modules, DRY within modules
DRY (Don't Repeat Yourself) WET (Write Everything Twice)
DRY has been an admirable rule, but the most significant application of it had meaning 2-3 decades ago when everybody had to care about the result size of the source code.
But still, it is a good practice in SOME PLACES. Like, you have a class and an implementation that repeats a few times in this class. This is a sign that you should apply the DRY.
Check out my simple diagram what is the goal and importance od the WET.
HermesJS 🫒🌿
You like Node.js. You like TypeScript.
But you miss a lot of things in this ecosystem. You miss a chassis.
Hermes PostgreSQL and Hermes MongoDB are part of the initiative that delivers to you a foundation of a reliable system.
It is a library, not a framework, which relies on PostgreSQL's Logical Replication / MongoDB Change Stream.
It implements the Outbox pattern. You can span a database transaction over persisting an entity and publishing a message.
Go to the docs!
Give a start on the GitHub!
But you miss a lot of things in this ecosystem. You miss a chassis.
Hermes PostgreSQL and Hermes MongoDB are part of the initiative that delivers to you a foundation of a reliable system.
It is a library, not a framework, which relies on PostgreSQL's Logical Replication / MongoDB Change Stream.
It implements the Outbox pattern. You can span a database transaction over persisting an entity and publishing a message.
Go to the docs!
Give a start on the GitHub!