med-mastodon.com is one of the many independent Mastodon servers you can use to participate in the fediverse.
Medical community on Mastodon

Administered by:

Server stats:

362
active users

#DDDesign

0 posts0 participants0 posts today
Vaughn Vernon 🟦 🟨 🟧 🟪<p>When sense giving, such as advice on software design such as <a href="https://mastodon.social/tags/DDDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>DDDesign</span></a> and architecture, the idea should be to encourage (force!) sense readers to think about making their own decision within a set of principles with options. That's far better than you making a rule—possibly arbitrary or without depth of thought on your part (e.g. your preference)—that will tend to prevent their thought in favor of following your "expert rule."</p><p>1/n</p>
Vaughn Vernon 🟦 🟨 🟧 🟪<p>In the term critical thinking, the word critical, (Greek κριτικός = kritikos = "critic") derives from the word critic and implies a critique; it identifies the intellectual capacity and the means "of judging", "of judgement", "for judging", and of being "able to discern."</p><p><a href="https://mastodon.social/tags/CriticalThinking" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CriticalThinking</span></a> <a href="https://mastodon.social/tags/DDDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>DDDesign</span></a> <a href="https://mastodon.social/tags/StrategicDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>StrategicDesign</span></a></p><p><a href="https://en.m.wikipedia.org/wiki/Critical_thinking" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">en.m.wikipedia.org/wiki/Critic</span><span class="invisible">al_thinking</span></a></p>
Gien<p>There are so many good proposals for <span class="h-card" translate="no"><a href="https://m.aardling.social/@dddeu" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>dddeu</span></a></span> again this year! We have over 450 submissions and it is an honour to be part of the team that creates the program for our first Antwerp edition. 😀 <a href="https://mastodon.social/tags/domaindrivendesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>domaindrivendesign</span></a> <a href="https://mastodon.social/tags/dddesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>dddesign</span></a> <a href="https://mastodon.social/tags/dddeu" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>dddeu</span></a></p>
Vaughn Vernon 🟦 🟨 🟧 🟪<p>From <a href="https://mastodon.social/tags/EventStorming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>EventStorming</span></a> to tactical <a href="https://mastodon.social/tags/DDDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>DDDesign</span></a> in 16 minutes. <a href="https://mastodon.social/tags/EventSourcing" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>EventSourcing</span></a> is up next.</p><p><a href="https://mastodon.social/@VaughnVernon/114074508138424853" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">mastodon.social/@VaughnVernon/</span><span class="invisible">114074508138424853</span></a></p>
Vaughn Vernon 🟦 🟨 🟧 🟪<p>Design Accelerator: Events-First Discovery and Modeling—EventStorming to <a href="https://mastodon.social/tags/DDDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>DDDesign</span></a> Tactical Design</p><p>What is Events-First and how can it lead to innovative discoveries that can be implemented using tactical Domain-Driven Design (DDD)?</p><p><a href="https://youtu.be/I-cqa6moMBQ" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">youtu.be/I-cqa6moMBQ</span><span class="invisible"></span></a></p>
Vaughn Vernon 🟦 🟨 🟧 🟪<p>A very untapped area of R&amp;D is the effects of DDD <a href="https://mastodon.social/tags/DDDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>DDDesign</span></a> on <a href="https://mastodon.social/tags/UX" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>UX</span></a> and <a href="https://mastodon.social/tags/UI" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>UI</span></a>. Way back, I was heavily invested in UI because with desktop apps, it was centric.</p><p>Wish I had time to return to UI with UX as the overarching guide. I've been stewing on that for a long time and have even had the opportunity to dabble a bit:</p><p>domorobo.to</p>
Anton Stöckl ✅<p>Hey folks!<br>I‘m looking for new professional opportunities from February 25 on!<br>If your org is hiring or you have recommendations … shoot me a message, please! 🙂</p><p><a href="https://mastodon.social/tags/dddesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>dddesign</span></a> <a href="https://mastodon.social/tags/golang" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>golang</span></a> <a href="https://mastodon.social/tags/hexagonal" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>hexagonal</span></a> <a href="https://mastodon.social/tags/eventsourcing" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>eventsourcing</span></a> <a href="https://mastodon.social/tags/cqrs" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cqrs</span></a> <a href="https://mastodon.social/tags/eventdriven" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>eventdriven</span></a> <a href="https://mastodon.social/tags/tdd" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>tdd</span></a></p><p>Reposts very much appreciated! 💛</p>
Asbjørn Ulsberg<p><span class="h-card" translate="no"><a href="https://sfba.social/@williampietri" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>williampietri</span></a></span> You are quite correct, and this is why the idea of software development being a “sociotechnical” practice is gaining traction. <span class="h-card" translate="no"><a href="https://hachyderm.io/@trondhjort" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>trondhjort</span></a></span>, <span class="h-card" translate="no"><a href="https://hachyderm.io/@nick_tune" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>nick_tune</span></a></span>, and others in the <a href="https://icosahedron.website/tags/DDDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>DDDesign</span></a> community writes and talks a about this in length. It’s a tough nut to crack, though. </p><p>Software development is still being seen and marketed as a masculine, technical skill that can (eve must) be done successfully in isolation from the people the software is being built to serve. </p><p>This view alienates the very people our field of work need more of to prosper, and locks us into a dark spiral of negative reinforcing toxic masculinity of what I like to call “technical masturbation”.</p><p>An important realization of being a software developer is to acknowledge that since software development is a very young and social science, we understand perhaps even less of what we do than economists do of economics. </p><p>We are mere alchemists throwing ingredients into a cauldron hoping it will turn into gold.</p>
Nick Tune<p>There's quite a few DDD people on Bluesky so I created a list: <a href="https://bsky.app/profile/did:plc:rckvbasit6ovva2bg7dvafdp/lists/3l7y76qe5vz2u" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">bsky.app/profile/did:plc:rckvb</span><span class="invisible">asit6ovva2bg7dvafdp/lists/3l7y76qe5vz2u</span></a></p><p>If you know anyone who should be on the list, let me know.</p><p><a href="https://hachyderm.io/tags/ddd" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ddd</span></a> <a href="https://hachyderm.io/tags/domainDrivenDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>domainDrivenDesign</span></a> <a href="https://hachyderm.io/tags/ddDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ddDesign</span></a></p>
Anton Stöckl ✅<p>I'm searching for a new professional opportunity from February on, an earlier start is possible but I'm not in a rush!<br>I bring along 25+ years of experience as a software developer, architect, team lead, learning designer (trainer).</p><p>Please share! :-)</p><p>Some of my skills and interests:<br><a href="https://mastodon.social/tags/golang" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>golang</span></a> <a href="https://mastodon.social/tags/dddesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>dddesign</span></a> <a href="https://mastodon.social/tags/hexagonal" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>hexagonal</span></a> <a href="https://mastodon.social/tags/portsandadapters" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>portsandadapters</span></a> <a href="https://mastodon.social/tags/collaboration" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>collaboration</span></a> <a href="https://mastodon.social/tags/agile" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>agile</span></a> <a href="https://mastodon.social/tags/eventsourcing" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>eventsourcing</span></a> <a href="https://mastodon.social/tags/cqrs" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cqrs</span></a></p>
Nick Tune<p>Our next DDD London meetup has been scheduled.</p><p>On Tuesday 19th November, Tim Mortimer will be talking about Executable Specifications.</p><p>See you there.</p><p><a href="https://hachyderm.io/tags/dddLondon" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>dddLondon</span></a> <a href="https://hachyderm.io/tags/ddDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ddDesign</span></a> <a href="https://hachyderm.io/tags/domainDrivenDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>domainDrivenDesign</span></a> <a href="https://hachyderm.io/tags/bdd" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>bdd</span></a></p><p><a href="https://www.meetup.com/dddlondon/events/303976744/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">meetup.com/dddlondon/events/30</span><span class="invisible">3976744/</span></a></p>
Nick Tune<p>Architecture modernization anti-pattern: accessing another subdomain's data from the legacy system* </p><p>When building something new outside the legacy, you might be tempted to go direct to the legacy system to read/write data that you require (via the DB, CDC, or EDA).</p><p>If that data does not conceptually belong to the subdomain that is accessing it, you are breaking encapsulation: you are going via the backdoor to access another subdomain's data</p><p>1/3</p><p><a href="https://hachyderm.io/tags/architectureModernization" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>architectureModernization</span></a> <a href="https://hachyderm.io/tags/ddDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ddDesign</span></a></p>
Nick Tune<p>Our conceptual understanding of a business domain plays a fundamental role in how we architect our software systems.</p><p>For example, when we have specialised versions of a general concept - do we treat the variability as an attribute or specialized entities?</p><p>See the attached image: if we consider a dealership to be one single entity with different shapes of profile, we might lean more towards a profiles subdomain.</p><p>1/2</p><p><a href="https://hachyderm.io/tags/softwareArchitecutre" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>softwareArchitecutre</span></a> <a href="https://hachyderm.io/tags/ddDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ddDesign</span></a> <a href="https://hachyderm.io/tags/domainDrivenDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>domainDrivenDesign</span></a></p>
Nick Tune<p>With finest-grained events you would have around 100 event types, whereas only 8 with coarsest-grained events (and there are many variations in-between).</p><p>Your choice could have a massive impact on the complexity and evolvability of your architecture, both for you and the consumers of your events.</p><p>I judge every event on a case-by-case basis, but here are some things I look out for:</p><p>- do consumers have to consume a high volume of events they are not interested in?</p><p>2/3</p><p><a href="https://hachyderm.io/tags/ddDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ddDesign</span></a> <a href="https://hachyderm.io/tags/eda" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>eda</span></a></p>
Nick Tune<p>Event granularity is often a very tricky aspect of event-driven architecture. It usually requires a very deep understanding of your business domain and product strategy.</p><p>Imagine a company with a product that:</p><p>- has 8 lifecycles steps (e.g. started, cancelled, closed)<br>- has 3 variations<br>- is sold in 4 countries (customised to each)</p><p>1/3</p><p>**<a href="https://hachyderm.io/tags/eventDrivenArchitecture" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>eventDrivenArchitecture</span></a>** **<a href="https://hachyderm.io/tags/softwareArchitecture" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>softwareArchitecture</span></a>** **<a href="https://hachyderm.io/tags/ddDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ddDesign</span></a>** **<a href="https://hachyderm.io/tags/domainDrivenDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>domainDrivenDesign</span></a>**</p>
Nick Tune<p>Sometimes it’s best not to overdo the "DDD" when shaping the boundaries in your software architecture.</p><p>Using techniques like EventStorming you might achieve a clear conceptual model with well defined subdomains that domain experts agree with.</p><p>But it’s also important to analyse data flows: What information does a subdomain need from other subdomains to apply rules and make decisions?</p><p>Recently I hit this scenario...</p><p>1/2 </p><p>**<a href="https://hachyderm.io/tags/ddDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ddDesign</span></a> <a href="https://hachyderm.io/tags/ddd" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ddd</span></a> <a href="https://hachyderm.io/tags/swArch" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>swArch</span></a> <a href="https://hachyderm.io/tags/eda" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>eda</span></a>**</p>
Nick Tune<p>Where should you put the anti-corruption/translation layer when migrating from a legacy system?</p><p>1. in the legacy<br>2. in new code<br>3. a dedicate translator service</p><p>A benefit of 1: fully encapsulate the legacy model and prevent it leaking</p><p>A benefit of 2: teams don't have to make PRs in multiple codebases for the same feature (when the ACL needs to change)</p><p>1/2</p><p><a href="https://hachyderm.io/tags/architectureModernization" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>architectureModernization</span></a> <a href="https://hachyderm.io/tags/legacyMigration" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>legacyMigration</span></a> <a href="https://hachyderm.io/tags/softwareArchitecture" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>softwareArchitecture</span></a> <a href="https://hachyderm.io/tags/ddDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ddDesign</span></a> <a href="https://hachyderm.io/tags/domainDrivenDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>domainDrivenDesign</span></a></p>
Nick Tune<p>If you are looking for top-notch conferences to speak at then check-out Explore DDD which is held in Denver in April.</p><p>The CFP is open until the end of this month.</p><p>I've been to the conference numerous times and I'm always very happy to fully endorse Paul Rayner and his team for putting on a great event and treating speakers outstandingly well.</p><p>It's a community of enthusiastic learners and nice people.</p><p><a href="https://exploreddd.com/cfp/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">exploreddd.com/cfp/</span><span class="invisible"></span></a></p><p><a href="https://hachyderm.io/tags/ddd" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ddd</span></a> <a href="https://hachyderm.io/tags/ddDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ddDesign</span></a> <a href="https://hachyderm.io/tags/domainDrivenDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>domainDrivenDesign</span></a> <a href="https://hachyderm.io/tags/softwareArchitecture" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>softwareArchitecture</span></a></p>
Nick Tune<p>When modernizing your legacy systems, be careful not to automatically assume that the language your business and domain experts use is correct and should be reflected in your new architecture.</p><p>Their language might be influenced by your legacy systems and not an accurate reflection of the concepts in your domain.</p><p>Here is the kind of conversation I've had many times...</p><p>1/3</p><p><a href="https://hachyderm.io/tags/ddDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ddDesign</span></a> <a href="https://hachyderm.io/tags/domainDrivenDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>domainDrivenDesign</span></a> <a href="https://hachyderm.io/tags/softwareArchitecture" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>softwareArchitecture</span></a> <a href="https://hachyderm.io/tags/architectureModernization" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>architectureModernization</span></a> <a href="https://hachyderm.io/tags/archModernization" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>archModernization</span></a></p>
Nick Tune<p>- are there any business rules or calculations that span all of this data? </p><p>- does all of this data need to always be consistent?</p><p>If you answer "no" to both, you should consider aggregating the data in the UI or a BFF.</p><p>But you may also need to do advanced searching across the combined data. This could push you towards a single subsystem although a separate search-oriented subsystem is a common option (especially as you need to search across more diverse data).</p><p>2/2</p><p><a href="https://hachyderm.io/tags/ddd" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ddd</span></a> <a href="https://hachyderm.io/tags/ddDesign" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ddDesign</span></a> <a href="https://hachyderm.io/tags/swArch" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>swArch</span></a></p>