3 ms·
Rather than just looking at the home page for Crux (which has a lot of impressive tech jargon), I recommend that you watch the related video, “Temporal Database
by adamkl 6y ago
Rather than just looking at the home page for Crux (which has a lot of impressive tech jargon), I recommend that you watch the related video, “Temporal Databases for Streaming Architectures”, on YouTube which I found did a much better job of explaining things.
I read a quote the other day where somebody suggested that the Clojure ecosystem feels like it’s filled with a bunch of tools from the year 3000, and I think that Crux is a good example of that. It looks very cool.
[0] https://youtu.be/ykbYNBE-V3k https://youtu.be/ykbYNBE-V3k
- yogthos 6y agoAnd here's a talk from JUXT (company developing Crux) about it https://www.youtube.com/watch?v=3Stja6YUB94 https://www.youtube.com/watch?v=3Stja6YUB94
- refset 6y agoThe Strange Loop 2019 talk linked by the GP is more recent and contains more technical details, but yes the Clojure/north talk is a nice bit of history showing the unveiling :) My personal favourite is the talk from ClojuTRE by the main architect behind Crux, which looks under the hood a lot more and discusses many of the key design trade-offs during initial implementation: https://youtu.be/YjAVsvYGbuU https://youtu.be/YjAVsvYGbuU
- yogthos 6y agoAh I haven't watched the ClojuTRE talk, thanks for the link. :)
- lukashrb 6y agoI wonder what stop people adopting those tools/tech. E.g. a database like crux sounds pretty compelling to use for me.
- refset 6y agoWell, I think Postgres will remain a very safe default choice in new projects for most organisations for a long time yet, because the skills to work with it are common and relatively cheap. However, Crux is much easier to justify with stakeholders if you have a complex problem revolving around ad-hoc graph joins or bitemporal queries & audit requirements. Or if you simply have high single-threaded transaction throughput requirements. Postgres in particular doesn't have pleasant answers to this intersection of problems. I think the tables will inevitably turn against currently-safe choices life Postgres though, as systems like Crux are going to continue to be able to take advantage of the latest and greatest ideas, relatively unencumbered by decades of antiquated design decisions and legacy code. This is where the whole Clojure philosophy really shines in Crux, as all the layers interact through clean and composable Clojure protocols that facilitate new kinds of database modularity. These protocols allow the community to take advantage of whatever wonderful cloud services they might want to use, without any additional ceremony to interact with the core development team. EDIT: Finally, as new generations of developers emerge the pressure for the industry to standardise on a better relational query language will build. Fingers are crossed for Datalog!