Skip to content

Instantly share code, notes, and snippets.

View sageserpent-open's full-sized avatar
🏠
Working from home

Gerard Murphy sageserpent-open

🏠
Working from home
  • Seascale, England, United Kingdom
View GitHub Profile
@sageserpent-open
sageserpent-open / plutoniumIntroduction.md
Last active July 9, 2017 12:47
Living document describing the Plutonium bitemporal object system for Java.

Plutonium

Pardon?

No, you are not about to be invited to purchase some fissile material of any isotopic constitution whatsover.

Plutonium is a software component that:-

  • Stores data that models things in the real world; this is object oriented data, the sort that Java applications deal with. POJOs.
  • Does so in a way that tracks the historical evolution of those things in the real world, and the consequences. What things and what consequences? Say, your electricity consumption and the consequent bill; the location of a delivery van filled with boxes of your products, who is in possession of those products and whether sales have been realised; the contracts managed by a trading desk and how much money the desk might owe if the GBP/EUR FX rate might drop by 1%.
  • Tracks relationships between things that can change, and the consequences. For example, what accounts an electricity provider has on its books, what lorries are carrying what things, what trades are being managed in a portfolio.