datahike

https://datahike.io/, Join the conversation at https://discord.com/invite/kEBzMvb, history for this channel is available at https://clojurians.zulipchat.com/#narrow/stream/180378-slack-archive/topic/datahike
cjsauer 2019-10-30T02:12:14.039700Z

Can the keys in an OR-map be arbitrary values, or must they be keywords?

cjsauer 2019-10-30T02:23:01.040800Z

Similar question for user-id and crdt-id, must they be UUIDs?

whilo 2019-10-30T20:02:03.043Z

I designed them to be UUIDs because they should not accidentally clash globally while being compact identifiers (because we send them around a lot). hasch.core/uuid can map values to unique UUIDs. user-id is supposed to refer to an external identity system that can be used to authenticate users, like e-mail.

whilo 2019-10-30T20:04:57.044400Z

I have a playground here to synchronize hitchhiker-trees with Clojure: https://gitlab.com/replikativ/index-sync/blob/master/src/index_sync/core.clj. The idea was to use it as a general building block for replikativ and then define CRDT semantics for datahike so we have a better programming model for distributed systems.

whilo 2019-10-30T20:06:05.045Z

I have tried to present the overall goal here: https://www.youtube.com/watch?v=A2CZwOHOb6U

whilo 2019-10-30T20:07:09.045500Z

(feedback and discussion is very welcome 🙂 )

whilo 2019-10-30T20:08:12.046600Z

Regarding the or-map, keys can be non-uuid. If you are interested in using it I can help you. I think the current interface is not optimal.

whilo 2019-10-30T20:11:03.047500Z

@cjsauer tightrope looks interesting. Are you aware of https://github.com/metasoarous/datsync?

whilo 2019-10-30T20:13:19.048700Z

We are currently working on import utilities from Datomic to datahike. In particular @konrad.kuehne is thinking about how to do so in a correct way.

whilo 2019-10-30T20:15:23.050600Z

And @niko963 is working on 3DF which we want to couple to datahike experimentally to allow a reactive, differential frontend programming model (DataScript's eager queries quickly slow down frontends once you get many updates into your client state and have to rerun the queries).

whilo 2019-10-30T20:19:06.053600Z

A problem is to prioritize things and getting some help 😉. We are still a small community with a bit of contracting to help our open-source work, but we have big goals. In particular datopia is supposed to make services permissionless in our ecosystem and we collaborate with https://www.oicos.org/ who have the next-level game theory to build complicated markets and infrastructure, e.g. distributed smart energy grids where batteries and power plants can trade with each other.

🤯 1