Michael Hunger wrote:
You are a genius. Putting all strings together like this. Great thinking and +1 from me of course. Such a perfect development. I was thinking about the stuff Greg talks about for a while now and found it very promising in almost any kind of application.

Yeah, that's what I've been thinking too. He's been repeating the same thing over and over, and it's starting to make a lot of sense. I think the main problem with his "detractors" on the DDD list is that they need to validate and rationalize why they are doing it the way they do with RDBMS's, rather than actually thinking about what he's saying.

And as qi4j is our sandbox / playground we now can try out how this works and see if we run into any issues. What we mustn't forget in the process is performance and optimization possibilities (at least think about them / point them out).

Agree.

Idempotence of operations / replay / projections of state ... Also the whole SCM (darcs, git, svn) issue where we can learn tons of thing about this kind of working or the use of logs of changes from the financial industry (accounts) can surely help us a lot.

Yeah. As you know, in StreamFlow (GTD for Swedish government) there is a ton of such requirements. I had a long architectural meeting yesterday with the customer, and it was all centered around auditing, logging, backups, security, data integrity, etc. I think what we are doing here with EventSourcing and using BASE principles fit right into that line of thinking.

What we also talked about is how this relates to versioning and retrieving older versions of our entity state (WORLD). Or having certain changes excluded from the projected version (i.e. discarded changes from auditing) or whatever.

What there would perhaps be interesting is to get some more meta information about the UseCase at prepare. The ES may ignore that OR use it internally for auditing (user, time, context).

Agree. As I said on the DDD mailing list yesterday, it is important that we can attach metainfo on both UoW and Usecase, and then use that for various purposes.

What is also interesting then is to publish changes to Entities as an atom feed. You have all the information there ...

Yeah, I think there will be lots of atom feeds coming out of this. For the server, for one, but then also split up into individual entities too. On the domain side, I need feeds for all changes done to objects related to a particular customer. All sorts of funky stuff. But it all becomes so much easier in a BASE world...

/Rickard


_______________________________________________
qi4j-dev mailing list
[email protected]
http://lists.ops4j.org/mailman/listinfo/qi4j-dev

Reply via email to