3 ms·
Very interesting! Good luck! 1- Why did you choose Clojure? 2- Last I checked, Roam founder here on HN said something along the lines that "the self-host func
by ducktective 6y ago
Very interesting! Good luck!
1- Why did you choose Clojure?
2- Last I checked, Roam founder here on HN said something along the lines that "the self-host functionality is on their minds"...this was around late 2019 I think. Wonder what's the update on that...
3- Actually, personally if I want to use this approach, I definitely want to self-host. Wonder what would happen to the data if this tool gets updated. Is it just markdown + some syntax for bidi links?
- tangjeff0 6y ago1- I cover this in the post: > Something else that's interesting about the most powerful networked tools like Roam and Athens is that you can't really make these apps with JavaScript or plaintext/markdown. For maximum power, you want a true graph database. Both Roam and Athens leverage a front-end graph database called DataScript, which is written in Clojure(Script). JavaScript doesn't have a native analog, and Neo4j is only server-side. 3-Yes, we've already updated the database before within the application. DataScript makes it quite easy to update the schema.
- ipsum2 6y agoHave you benchmarked this? I don't think a lifetimes worth of notes (maybe 10,000+ documents?) will slow down sqlite, even with many interconnecting nodes.
- tangjeff0 6y agoI haven't yet! I'm sure some Roam DB's are over 10k documents. If Datascript-based applications can get past the initial load time with better client-side caching, performance will always be better. "Local-first" apps could become their own new category. I recommend reading https://www.inkandswitch.com/local-first.html https://www.inkandswitch.com/local-first.html