datalog

2020-08-28T07:02:01.028500Z

@ramblurr have a look at #rum

Casey 2020-08-28T07:03:24.030700Z

Isn't rum a frontend lib? This particular use case has nothing to do with rendering ui, it's all just data processing.

2020-08-28T07:04:26.031400Z

Fulcro is not necessarily pathom, although pathom was born from it. Fulcro parses the eql query that your view components compose to and helps with (de)normalizing a data into your local db.

2020-08-28T07:04:58.032Z

Yes it is a front-end lib, sorry misinterpreted that your game logic was tied to UI somehow

Casey 2020-08-28T07:07:28.034700Z

No worries, I see the value of EQL when it comes to rendering UIs, but in this case it is just data processing on inter-related data, and need an expressive way to query and change the data

2020-08-28T07:07:54.035200Z

as for migration, in general I see the recommendation that you only add to schemas, and use namespacing to avoid api breakage.

2020-08-28T07:08:51.035800Z

in that case datalog sounds good to me 🙂

2020-08-28T07:09:26.036200Z

pathom might still offer value to you, it also deals with mutations

Casey 2020-08-28T07:12:26.037800Z

I found an https://github.com/mpdairy/posh/pull/18/files#diff-04e213e7f0ad90afa2c9a82635644f5fR8 to Posh that has some simple logic for validating and applying datascript schema migrations, refactored it a bit to not care about datomic, and it seems to work in my limited testing

Casey 2020-08-28T07:12:59.038500Z

So it seems I could use datascript for this after all and be able to alter the schema as I go

2020-08-28T07:13:55.039500Z

when still developing something I'd break the schema all the time, part of the process. Datascript is supposed to be "lightweight" in the sense that you can rebuild it with a different schema quite easily.

2020-08-28T07:19:22.040800Z

in case you never saw it before: https://www.youtube.com/watch?v=oyLBGkS5ICk I think the point of accretion in software is quite enlightening.

Casey 2020-08-28T08:18:40.041600Z

Yup, that's a classic. Been awhile since I've watched it

Johnny 2020-08-28T11:33:50.045900Z

I'm currrently building an app that lets you opt into different kinds of notifications when you make a certain request. For example, you can be notified via email or a message on Discord. Now I'm trying to figure out how to model this. I have a request entity, but a fixed attribute for each notification method makes this very static and hard to query if everything is optional

Johnny 2020-08-28T11:44:43.047Z

I've been thinking about making a separate "notification" entity or something but this seems like a very SQL-style approach, is there something else I could do?