Messaging vs RPC (rpc is blocking and messaging non-blocking not necessary btw, messaging could also be blocking).
Kerry explains previous episode, why messaging, what is serialization and why do we need it and what he did in terms of homework.
Rinat explains that technology is completely irrelevant. Business processes and business models are more important. We are capturing some parts of the real world in words and in our case words are messages. Words is how we think, how we talk to each other. Message is something that describes intent. Examples from home work's domain.
Good example how important is to capture real world words, so for instance "Change product quantity" is a valid sentence, but we don't use it in the mentioned domain, we use "remove product" or "add product", word "change" came from computer science. In the real world people don't change elaborate on this a little bit more, it's probably too generic word.
Explanation that it might not sound hacky, but however it's a good approach. Since we are modeling domain mb talk about what is domain modeling, why do we need it and how and when it applies, meaning for instance that DDD doesn't apply everywhere.
Kerry asks do you literally mean that messages are words and specifies what wards we are talking about.
It's really important to understand that code should be a reflection of some real world. That's why we are starting this course from this, since it the most important thing. (DDD)
Explanation what command is and what event is. Product basket example.Kerry double checks definition of Command and Event.
Disconnected scenarios explanation. Example about telegraph.
Explanation on Factory example, domain entities definition, cars, office, workers. feels like could be simplified, I get lost in this example couple of times. Translation example to implementation like application services.
Kerry clarifies this translation (workers are application services receiving commands and producing events, etc).
Reporting not sure it's necessary to discuss reporting in the context of this episode
Stuff that we have talked about is a foundation of Event Sourcing an other things. Next episode we will learn how to model this.
Again about expressive and self explanatory code.
Other benefits of that is an ability to easily split work between team members.
Ubiquitous language also thing that should be moved to another episode or at least to the beginning of this one.