-
api request -> stack of transformations -> sent to application logic back and forth
-
this allows older apis to transform up the stack into a modern server
-
when distributing: need compatibility of multiple schemas
-
what would it look like to have good tools for handling distributed systems in a systematic way? (shotgun parsing - parsing by if statements - riddling code with little tests and hoping things stick. tools like protobuf in the long term means only adding optional fields, and eventually the data schema has entirely optional types - how do you know what's still relevant at all?)
-
manage schema compatibility separate from application logic!
-
provide data transformations; 'bidirectional lenses' - one transformation for the whole schema, as written in a DSL.
-
graph of connected schemas and associated lenses. show how the schemas connect with those lenses
-
-
cambria then:
-
automatically translates data at runtime
-
provides ts type definitions as well as JSON schemas for your code. json's checkable at runtime as needed!
-
integration with Automerge CRDT
-
-
what is the pushpin architecture (from ink and switch?)
- Open document (Hedgedoc) at https://doc.anagora.org/cambria
- Video call (Jitsi) at https://meet.jit.si/cambria