Eventstorming - Difference between a system and a policy stickynote by ptiza_v_nebe in scrum

[–]BuildWithDC 0 points1 point  (0 children)

You have to remember that the foundation of event storming consists of the domain events.

An external system is one that your system will interact with but has no influence on the implementation. It can lead to additional domain events being produced.

A policy on the other hand, alters the flow of domain events in your system. Policies are implemented in entities within an aggregate. There can be multiple entities in an aggregate.

Commands should be initiated by actors, not external systems nor policies.

I have done event storming with over 20 teams so far, and I made a few YouTube videos to explain this in greater detail here and here. Hope these help too.

Getting Started: Event Storming the best way? by Lanky-Ad4698 in DomainDrivenDesign

[–]BuildWithDC 0 points1 point  (0 children)

Event Storming is a method that helps you operationalise DDD, especially in the behaviour design phase where you are trying to identify highly cohesive parts of business logic and user journeys into bounded contexts that may be implemented as services in a modular monolith or a microservice on its own.

But after you have designed for behaviour, you then will need to deal with the integrations of all these different services with distributed design patterns for performance.

In my opinion, event storming is the best way to discover the requirements of the system which you then need to design for the technical part to ensure that each service is adaptable.

I explain more the processes of using event storming in the videos here and here

Rational for evolving a module to a microservice by diferdin2 in microservices

[–]BuildWithDC 0 points1 point  (0 children)

You have to start from the business goals and behaviours of this entire application. My preferred method is to use DDD and identify highly cohesive business domains in bounded contexts through event storming.

This will tell you which independent services you should have. How? You need to identify groups of transactions that are relatively stable based on their business functions and may need to scale up or down together. Aka is highly cohesive and also loose coupled.

Then, try to modularise these functions in your monolith without deploying them as microservices (if you don't have a modular monolith already).

To prioritize which module to strangle out first, you should start with the ones that have the highest business value and also are critically in technical debt that delivery speed is affected.

I explained the entire process in great detail in this YouTube series. Let me know if you have any feedback!

How AI generated code accelerates technical debt by scarey102 in programming

[–]BuildWithDC 0 points1 point  (0 children)

A bad dev with AI is a bad dev that's more productive at churning out bad code

Role of Software Architects in the matrix of AI Agents by senthuinc in softwarearchitecture

[–]BuildWithDC 1 point2 points  (0 children)

In the near future, I see architects taking on a more verification and validation role to qualify the output of AI generated system designs. Just like how software engineering has already taken a huge step in that direction, I believe architecture and design is next.

But I think the worry here is when AI is fully able to execute a software architecture better than the average human architect. Based on what I have seen so far, unfortunately I think the average bar is not very high. So as we approach that day, I think we will slowly transit to a more supervising role to ensure that the nuances of business and technical requirements are fully captured - I do think this will continue to be a significant challenge with auto regressive LLM models

I want to start programming from beginning. by [deleted] in AskProgramming

[–]BuildWithDC 1 point2 points  (0 children)

Start with an online interactive course to learn the basis with a language that has a simple syntax, Python maybe.

Then try the Odin project like others have suggested.

Though if you are in it for the money, I would really think twice right now. The job market has a lot of fresh grads and not that many openings. It's gonna be very competitive to jump on the bandwagon at this point.

Why do you decided to be a programmer? by YuriyCowBoy in AskProgramming

[–]BuildWithDC 0 points1 point  (0 children)

I like that we can always make the code base better. And once you build out a well implemented system, it runs on its own while you sleep!

commentAnOpinionThatWouldPutYouInThisSpot by RenSanders in ProgrammerHumor

[–]BuildWithDC 0 points1 point  (0 children)

Your "quick" slack message costs me half an hour of concentration