https://skillsmatter.com/skillscasts/8082-stop-over-engineering

230 views
Skip to first unread message

Douglas Gugino

unread,
Aug 14, 2016, 12:57:41 PM8/14/16
to DDD/CQRS
best thing about Greg is he can speak to the domain expert point of view.  Greg for president!  Say no to "imagination land" - give the humans the "crazy edge cases".  Vilfredo Pareto would be proud of him.


  Vilfredo Pareto.jpg



Douglas Gugino

unread,
Aug 14, 2016, 12:59:39 PM8/14/16
to DDD/CQRS
manual intervention required !

Douglas Gugino

unread,
Aug 14, 2016, 1:02:24 PM8/14/16
to DDD/CQRS
if fact - don't they have a resemblance ?

Andrew Siemer

unread,
Aug 15, 2016, 10:54:51 PM8/15/16
to ddd...@googlegroups.com
Whats odd - over engineering doesn't seem to happen to me nearly as much once I stopped doing everything in C#/.net.  In node/docker/lambda - everything just sort of gets super simple.   Single responsibility all the things...no need for crazy patterns and IoC.  "Best practices" really have to be questioned.
 


On Sun, Aug 14, 2016 at 12:02 PM, Douglas Gugino <doug....@realgy.com> wrote:
if fact - don't they have a resemblance ?

--
You received this message because you are subscribed to the Google Groups "DDD/CQRS" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dddcqrs+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Greg Young

unread,
Aug 16, 2016, 3:31:28 AM8/16/16
to ddd...@googlegroups.com
Almost nothing technical is talked about in the presentation (different kind of overengineering). C#/.net is not alone there Java tends to be quite similar btw.
--
Studying for the Turing test

Douglas Gugino

unread,
Aug 16, 2016, 6:27:07 AM8/16/16
to DDD/CQRS

To my view, that is the point  stay less technical, less magical with the techniques ... also the point on handling errors, do the 'first normal distribution' work and organize well, that which doesn't fit.  Then the next work can be cost justified.

Greg Young

unread,
Aug 16, 2016, 9:41:40 AM8/16/16
to ddd...@googlegroups.com
To be specific you seem to be talking about this type of overengineering https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition which is not what the talk is about.

On Tue, Aug 16, 2016 at 3:54 AM, Andrew Siemer <andrew...@gmail.com> wrote:

Peter Hageus

unread,
Aug 16, 2016, 11:19:52 AM8/16/16
to ddd...@googlegroups.com
Enjoyed the talk, two points:

1. In a system using a relational database you can always handle the 1% cases by just fixing it in the database.

In an eventsourced system this is a lot harder.

What are some strategies people use? I’ve done one-off utils so far (a cli or baked them into a system tool). 
Have been considering adding a scripting interface for interaction (executing commands and inserting events), but it feels a bit overkill…

2. There really should be a talk with the same title, about the technical side. Like transactional message busses etc.

/Peter


On 16 Aug 2016, at 09:31, Greg Young <gregor...@gmail.com> wrote:

Almost nothing technical is talked about in the presentation (different kind of overengineering). C#/.net is not alone there Java tends to be quite similar btw.
On Tue, Aug 16, 2016 at 3:54 AM, Andrew Siemer <andrew...@gmail.com> wrote:
Whats odd - over engineering doesn't seem to happen to me nearly as much once I stopped doing everything in C#/.net.  In node/docker/lambda - everything just sort of gets super simple.   Single responsibility all the things...no need for crazy patterns and IoC.  "Best practices" really have to be questioned.


On Sun, Aug 14, 2016 at 12:02 PM, Douglas Gugino <doug....@realgy.com> wrote:
if fact - don't they have a resemblance ?

--
You received this message because you are subscribed to the Google Groups "DDD/CQRS" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dddcqrs+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "DDD/CQRS" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dddcqrs+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Studying for the Turing test

--
You received this message because you are subscribed to the Google Groups "DDD/CQRS" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dddcqrs+u...@googlegroups.com.

Douglas Gugino

unread,
Aug 16, 2016, 12:22:29 PM8/16/16
to DDD/CQRS

Hi Peter ... from my perspective being event-centric (stealing from the title of the as yet to be released book :)) makes this so much easier.

AND I've given myself permission to not event-source the state of all my aggregates .... to me the big opportunity is for GetEventStore and mongoDb (the non-enterprise version) to be used harmoniously.

Not sure I'm on point here .. but below is a snip of some commentary I've left to myself in my business method documentation.


Input Data streams (are appended to); GES is one option

         Could be considered Process document collections ….

Log streams (are projected from) in support of read models

Service streams allow aggregates/process manager state to be event-sourced

         compare the use of a “Process document

Message transport between services

jarchin

unread,
Aug 17, 2016, 4:14:41 AM8/17/16
to DDD/CQRS
Peter, there was a brief discussion recently about something like a correction stream.

My perception of that concept was that every stream has a correction stream associated with it.
Before loading the actual aggregate, this correction stream (CS) is loaded. In that stream you manually insert events with info regarding events in the AR stream, like id and how you want it to be modified. The CS is loaded into a piece of code (a class) that will interpret these rules and apply them to the events in the AR stream.
So, first load the CS stream (the modification settings), then load the AR stream and pipe the events through the modifying code.

Voila, the bug event can now be handled, and a buggy handled bug event can also be handled, since you can always insert new rules into the CS.

jarchin

unread,
Aug 17, 2016, 4:25:28 AM8/17/16
to DDD/CQRS
The modifications would be like Skip or Change (passing property name and new value).

Obvioisly limited in cases where there's a projection or subscribers to the event. They would need to be aware of the correction stream concept too.

An entry to the CS could look like:

Type: Skip,
Target: [event id],
Reason: [arbitrarily long and descriptive explanation of why this needs to be done]

Kijana Woodard

unread,
Aug 17, 2016, 11:43:20 AM8/17/16
to ddd...@googlegroups.com
Proxy Domain Experts - A term I've been looking for. Thanks.

Greg Young

unread,
Aug 17, 2016, 3:31:32 PM8/17/16
to ddd...@googlegroups.com
aka business analysts (done wrong)

On Wed, Aug 17, 2016 at 4:42 PM, Kijana Woodard
<kijana....@gmail.com> wrote:
> Proxy Domain Experts - A term I've been looking for. Thanks.
>
> On Wed, Aug 17, 2016 at 3:25 AM, jarchin <jarch...@gmail.com> wrote:
>>
>> The modifications would be like Skip or Change (passing property name and
>> new value).
>>
>> Obvioisly limited in cases where there's a projection or subscribers to
>> the event. They would need to be aware of the correction stream concept too.
>>
>> An entry to the CS could look like:
>>
>> Type: Skip,
>> Target: [event id],
>> Reason: [arbitrarily long and descriptive explanation of why this needs to
>> be done]
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "DDD/CQRS" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to dddcqrs+u...@googlegroups.com.
>> For more options, visit https://groups.google.com/d/optout.
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "DDD/CQRS" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to dddcqrs+u...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.



Kijana Woodard

unread,
Aug 17, 2016, 3:40:24 PM8/17/16
to ddd...@googlegroups.com
Yes. Faced it many times. Struggled to explain the phenomenon. Proxy Domain Experts sums it up well.

At the end of the talk, I noticed many people trying to ask "...but *how* do you have this conversation"?

Developers are so used to being told "what's what" and not pushing back. 
Also, Proxy Domain Experts and Proxy Executives don't like push back because it quickly exposes the lack of value they provide.

On Wed, Aug 17, 2016 at 2:31 PM, Greg Young <gregor...@gmail.com> wrote:
aka business analysts (done wrong)

On Wed, Aug 17, 2016 at 4:42 PM, Kijana Woodard
<kijana....@gmail.com> wrote:
> Proxy Domain Experts - A term I've been looking for. Thanks.
>
> On Wed, Aug 17, 2016 at 3:25 AM, jarchin <jarch...@gmail.com> wrote:
>>
>> The modifications would be like Skip or Change (passing property name and
>> new value).
>>
>> Obvioisly limited in cases where there's a projection or subscribers to
>> the event. They would need to be aware of the correction stream concept too.
>>
>> An entry to the CS could look like:
>>
>> Type: Skip,
>> Target: [event id],
>> Reason: [arbitrarily long and descriptive explanation of why this needs to
>> be done]
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "DDD/CQRS" group.
>> To unsubscribe from this group and stop receiving emails from it, send an

>> For more options, visit https://groups.google.com/d/optout.
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "DDD/CQRS" group.
> To unsubscribe from this group and stop receiving emails from it, send an

> For more options, visit https://groups.google.com/d/optout.



--
Studying for the Turing test

--
You received this message because you are subscribed to the Google Groups "DDD/CQRS" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dddcqrs+unsubscribe@googlegroups.com.

Douglas Gugino

unread,
Aug 17, 2016, 6:16:43 PM8/17/16
to DDD/CQRS
Greg explains things that resonate with me and I am not a developer.  However the flip side of the proxy domain expert is the developer who thinks he can impose a different model because he is so smart.  LOL.  aka - go ahead and "throw" a "manual intervention required" push/pop error ! 

I'm looking to hire someone who knows as much about business and business methods as I do about software development philosophy and techniques.  We would conquer the world (or at least the retail energy marketing domain).  Lot of money here fellows.



On Wednesday, August 17, 2016 at 3:40:24 PM UTC-4, Kijana Woodard wrote:
Yes. Faced it many times. Struggled to explain the phenomenon. Proxy Domain Experts sums it up well.

At the end of the talk, I noticed many people trying to ask "...but *how* do you have this conversation"?

Developers are so used to being told "what's what" and not pushing back. 
Also, Proxy Domain Experts and Proxy Executives don't like push back because it quickly exposes the lack ogf value they provide.

On Wed, Aug 17, 2016 at 2:31 PM, Greg Young <gregor...@gmail.com> wrote:
aka business analysts (done wrong)

On Wed, Aug 17, 2016 at 4:42 PM, Kijana Woodard
<kijana....@gmail.com> wrote:
> Proxy Domain Experts - A term I've been looking for. Thanks.
>
> On Wed, Aug 17, 2016 at 3:25 AM, jarchin <jarch...@gmail.com> wrote:
>>
>> The modifications would be like Skip or Change (passing property name and
>> new value).
>>
>> Obvioisly limited in cases where there's a projection or subscribers to
>> the event. They would need to be aware of the correction stream concept too.
>>
>> An entry to the CS could look like:
>>
>> Type: Skip,
>> Target: [event id],
>> Reason: [arbitrarily long and descriptive explanation of why this needs to
>> be done]
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "DDD/CQRS" group.
>> To unsubscribe from this group and stop receiving emails from it, send an

>> For more options, visit https://groups.google.com/d/optout.
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "DDD/CQRS" group.
> To unsubscribe from this group and stop receiving emails from it, send an

> For more options, visit https://groups.google.com/d/optout.



--
Studying for the Turing test

--
You received this message because you are subscribed to the Google Groups "DDD/CQRS" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dddcqrs+u...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages