Good videos, with context.
Lucas Cavalcanti & Edward Wible - Exploring four hidden superpowers of Datomic

Lucas Cavalcanti & Edward Wible - Exploring four hidden superpowers of Datomic

ClojureTV
1 HN recommenders · discussed 2015–2024
Open YouTube ↗

About this video

A Clojure/conj 2014 talk by Lucas Cavalcanti and Edward Wible on four uses of Datomic. They cover HTTP caching, audit trails, mobile database sync and authorization, drawing on the immutable transaction log.

Why it appears in the archive

HN cites it as Nubank's account of building a bank on Datomic and Clojure, and for what Datomic's temporal model enables.

AI-generated summary and labels from the source dataset; verify important details against the video. Source & credits.

From the Hacker News discussion

sgrove · 2015-07 · rec

It's worthwhile watching Nubank's talk on how they manage these things with Datomic on the backend [0] - providing a "complete" (filtered) database to the client, http caches for queries based on tx-time, and syncing mobiles data via transactions-since. Takes care of said concerns nicely - I'm just implementing this stuff today however, so I'm not sure how well it'll work in practice. [0] - [VIDEO]

Read original comment ↗
dmix · 2015-01 · reference

Not mentioned in the article but most interesting to me this year is how these guys are "building a bank from scratch in Brazil with Datomic and Clojure": [VIDEO] The future looks bright for the language, especially with applications like this.

Read original comment ↗
onetom · 2015-09 · reference

nadam said 10 seconds, not minutes. we are using the starter version combined with dynamodb in production and we found the payment structure very clear; no obfuscation whatsoever, unlike a microsoft or adobe pricing matrix ;) (it's made by the same guy who made the very open source clojure programming language, btw, and he is very much against obfuscation) anyway, it's a competitive advantage for those guys' who are building a bank on top of it in brazil ( [VIDEO] ). we feel we can avoid writing a lot of authorization and audit log code by using datomic, maybe u can save such work too.

Read original comment ↗
hardwaresofton · 2018-08 · reference

I do remember Datomic and I think it's a great tool but I fell out of love with the Clojure ecosystem and JVM-based languages as a whole and don't think I'll be getting back into it/them. I do remember wanting to check out Datomic (I believe after seeing a talk on how it was being used at a bank in southern america?[0]), but I found it unreasonably hard to find and download/experiment with the community edition -- compare this to something like Postgres which is much more obvious, more F/OSS compliant (I understand that they need to make money) and Datomic doesn't really look that appealing to me these days. At this point in my learning of software craftmanship I can't do non-statically type-checked/inferenced languages anymore -- I almost never use JS without Typescript for example. Typed clojure was in relatively early stages when I was last actively using clojure, and I'm sure it's not bad (probably way more mature now), but it's a staple in other languages like Common Lisp (the declare form IIRC). The prevailing mood the clojure community seemed to be against static type checking and I just don't think I can jive with that anymore. Thinking this way right now Datomic wouldn't be a good fit for me pesonally but I believe that it is probably high quality paradigm. [EDIT] - I found the talk: [VIDEO] [0]: [LINK]

Read original comment ↗
Chyzwar · 2021-09 · reference

1. High performance read/write of Scylla/Cassandra with high availability[1]. It has some limitations for OLTP workloads and require careful planning. Postgres without Citus is not really HA and even then companies would often invent custom sharding/cluster management system. 2. Powerful graph query language like Cypher. It might not perform well in real life, but my personal experience left me amazed[2]. There is a number of issues with SQL that could be addressed[3], but current standard is way too much prevalent. 3. Zero impedance mismatch between database and application representation. In database like Smalltalk GemStone it is really seamless experience for developer to write database code and application code[4]. To some extent, MongoDB success can be attributed to this aspect. 4. Datomic temporal capabilities[5]. It is hard to maintain temporal tables in postgres. There are some use cases where you really want query in point of time. Strictly not an OLTP feature, but I can see this be usefully in many scenarios. [1] [LINK] [2] [LINK] [3] [LINK] [4] [LINK] [5] [VIDEO] Edited: independence -> impedance

Read original comment ↗
stuarthalloway · 2024-05 · reference

Ed Wible is a founder of Nubank and chose Datomic. He and Lucas Cavalcanti gave a talk on it at Clojure/conj 2014. [VIDEO]

Read original comment ↗