A Daml-based application seems to be an ordinary state machine. Sure, the application UI only displays the current state of the system and the transition options. But the unique feature of a Daml ledger is that it stores not only the state of the system but also the state transitions. For explaining the idea of Daml ledgers and the story told by a specific ledger (and for audit, graph neural network based fraud detection, etc.), it’s a good idea to show the full picture.
This is the extended version of my former forum post with nicer visualization, using the Neo4j graph database.
I also elaborate on the difference between the causality graph explained in the Daml docs and the event graph I visualize here.
Very nice project and post @gyorgybalazsi . I think there’s a lot of value in visualizing causality chains like this to get a better understanding of how contracts interact in practice, and where contention-driven bottlenecks occur.
Eg visualizing the same settlement workflows in an account-based Daml model with high contention on account totals vs in a purist UTXO Daml model with fine-grained individual tokens might go a long way to illustrate and teach contention and its impact on performance.