Could Roam Research be a Clojure 'killer app'?

Yep, I don’t disagree with any of that. My scepticism isn’t dismissal - more empirical caution. The odds against such a platform being as transformative as founders might wish (with whatever combination of decent & ignoble motives they happen to have) are vast.

The backlinks, implicit links, and block-level links, are all good ideas in themselves. Implementing them and others with polish and careful ergonomics will be an achievement in itself, but what they will result in will depend on a host of factors as much cognitive and sociological as technical.

To be honest, I don’t even particularly like the idea of a single commercial platform being transformational. I’d rather that came from publicly agreed on protocols which businesses are then free to build and network on (think email, hypertext).

Anyway we’ve strayed a long way from my original point, which was agnostic on Roam itself. I think most non-Clojure developers like myself would be hard-pressed to conjure up from memory a significant application built with Clojure (is CircleCI one?). Roam may change that.

2 Likes

My first thought was CircleCI. As far as I know it is built with Clojure and Clojurescript, as well as some other languages (go for ops, probably).

I think Gomore has built at least part of their back-end services in Clojure. That might not mean much to the rest of the world, but Gomore is pretty well known in Denmark.

Agreed. Right now we’re seeing a ‘rising tide’ effect. Lots of work on libre Roam alternatives (as already listed here).

In that spirit, I’ve always had mixed feeling about using Oracle’s JVM as a basis for a language. Part of what makes Clojure appealing for me is the success on other platforms. Projects like Reagent (Clojure in JavaScript) and Arcadia (Clojure in CLR) keep Clojure’s concepts implementation-independent.

Something similiar might be the best-case scenario for Roam.

Yes - back to the original point. “Killer app” may be important, but what do you think about “killer domain”? Ruby web framework, Python ML, etc…

Certainly would be nice if Clojure was the foundation for collaborative, immutable knowledge tools (Roam, Nextjournal, Arc Studio Pro).

1 Like

I think this search for the mysterious “killer app” is a waste of time. I know plenty of cool projects that use CLJ(S) and have fun while doing so. Many you’ll never hear about because they are tiny hobby projects. Many you’ll never hear about because companies usually have more important stuff to do than trying to publicize their tech stack.

I think we as an industry are still figuring all of this out as we go. I’ve been through several “this-is-the-best-thing-ever” phases in my career and I cannot yet tell you if CLJ(S) is the one. Ask me in 20 years. I would have said yes to my previous choices at the time but now I’m wouldn’t want to work with them under any circumstance. Every previous choice taught me something, none of them were a waste of time.

Don’t ever make tech decision based on “Company/Project X uses it”. Make your own choices and learn. You should make up your own mind and not follow other people’s choices.

Just my 2 cents.

PS. I’m delighted to find out that Roam uses shadow-cljs, looks like a nice project.

13 Likes

I think that’s a useful take on the phenomenon - perhaps out of the flurry of interest in Roam, and now org-roam and Athens, will emerge some actually useful software.

Indeed. There is a sort of paradox that the tech world (at least the most visible part of it) appears to get excited about this kind of thing, but then mostly goes on to actually produce yet another trivial & time-wasting email marketing tool with an adverbial domain name.

1 Like

I don’t know that such a search is happening, and I certainly didn’t intend it. The title was tongue in cheek. I was just pointing out that there’s some potential for a current wave of attention on Clojure that the community might be able to use.

Personally I hope that Mochi becomes the next “killer app” for clojure. :grin:

(Because it’s my app :sweat_smile:)

5 Likes

Looks nice, I shall have to take a proper look. Brave of you to go for a market with an established incumbent (Anki). Are your mobile apps React Native or PWAs?

Thanks, I started building them with React Native, but eventually gave up and switched to the Cordova / PWA route instead. From my experience RN just did not provide enough value to warrant maintaining two separate code bases as well as introducing increased complexity and painfully slow iteration speed (compared to web).

I don’t think the app is really doing anything interesting with clojure/script besides exporting EDN, but as I’m thinking about building out an API, I think there’s some potential for doing some cool stuff there.

For example the app takes an offline-first approach as described here, but at the moment clojure/script doesn’t have a good story for supporting this kind of architecture. So for now I’m using PouchDB to save data locally, and sync it to a remote CouchDB instance. I think the dream would be to have something like RxDB (based on PouchDB), but in the style of Datascript / Datahike.

And since each user gets their own database in this model, an easy to implement (yet powerful) API could be to just allow users to send queries/txs to their own database, which would allow them to create custom interfaces / clients to their data. I’ve not used Roam besides playing with the demo for a few minutes, but I believe it allows you to do something similar, but locally within the app on the Datascript database.

2 Likes

As someone currently using Anki, I think there’s a LOT of opportunities to do better. Anki is pretty stagnant these days. It has a clunky, out-of-date client, and I occasionally get horrible sync issues.

2 Likes

Another project in this space that might be of interest: https://obsidian.md

1 Like

Obsidian has the great virtue of keeping note data in local markdown files, so is a good alternative to Roam pending something like Athens becoming usable.

1 Like

This is an old thread that I just found, and my comments will be part of the off-topic part of the thread. Thanks for anyone who bothers to read this.

tl;dr part 1: Wonders whether he really should be interested in a hyper-thinking tool, despite skepticism. When I read about tools like these, my first thought is, Nah, not for me. Then I thought, Well, you know, I do track interconnected ideas, a lot, but I do it with directory structures, and unix links so that I can put the same file in different levels and sections of the hierarchy (but then I have to search them all because not everything gets linked), and files named “SEEALSO”, and notes inside of files referencing other files, and of course, vague memories of some note I wrote somewhere about something, and try to grep for but maybe fail. So then I think I shouldn’t be so closed-minded, and maybe I’d like Roam or something like that, even though I rejected the idea five years ago when some other product claimed to do the same sort of thing.

tl;dr part 2: Realizes that for benefits to exceed costs, a thinking tool has to work with how he thinks, which is through Vim keymappings, and LaTeX as well as simple text. Then I realize that my thought flows through Vim keymappings, and most tools of this kind won’t even think to have a vim keymap, and if they do, it will have annoying exceptions. And then I also realize that for this kind of hyperlinking to work for me, it also has to work in the actual files that I do my real writing in, which are, in addition to text files with ASCII notes, LaTeX. For this to be fully productive to me, the LaTeX files should be included in the system. Ideally, it should also work in Word, because I have to use that sometimes, too, and for most people, it’s the default anyway.

So the question is: Has anyone heard of a thinking-outside-the-mind-with-hyperlinks-and-all-that tool that is not based on codes embedded in files or web pages, but instead is an external indexing system that keeps track of references to filenames or locations or phrases in arbitrary files. (Not an easy task, since files keep changing.) That would be a killer app, for me personally.

(I don’t know org-mode, but I used Emacs for many years, and then after (perversely, perhaps) switching to nvi and Vim for several years, spent some time using Emacs with its viper vi keymapping interface. In the end, there were too many awkward differences, and I went back to Vim. I would think that the same would true for evil-mode.)

(Granted, “killer app” and “for me personally” don’t really go together.)

1 Like

I’m having a pang of regret for the ‘killer app’ title. It was a bit tongue-in-cheek, but inasmuch as there was any seriousness there, it concerned the potential for Roam’s rise to shine a light on Clojure.

Roam itself is not anything revolutionary, despite its founders’ comedic messianism. It’s a stepwise evolution of the wiki concept, that’s all. The artificial wave of credulous excitement about it will subside (as do all such), and it will go on to prove useful, or not, to some people.

I don’t know of anything, but I agree it could be interesting. Oddly enough, some years ago I spent an inordinate amount of time trying to build something along those lines. I hated trying to cram everything, suited or not, into the Procrustean bed of a single app (Evernote), and wanted instead to create a ‘universal metadata store, indexer and linker’. It had a synced desktop and mobile app, and went beyond files to also index and link real-world objects (via photos, RFIDS and NFC tags). I bit off more than I could chew though, and ended up scaling it back to a less ambitious variant, which also got abandoned in turn.

1 Like

Yes, you should build that!

Even without the real-world objects, it would be a lot to bite off. I almost wonder if it should actually be built into the operating system. After all, what is best suited for keeping track of every little change in your files, and connections to the outside world, no matter what tool you use to change them?

Hmm … didn’t Plan 9 have something like that? Maybe not, but it had other weird and interesting concepts, so who knows?

Perhaps Edward Snowden revealed such a tool!?! (Hyperlinks between disparate kind of data, etc.)

Evernote was actually one of those earlier products I mentioned that I looked at and rejected as not for me.

I’m more than twice-bitten on such ambitious projects, for better or worse. I now think that advances on computer-based notetaking are unlikely to come from people deeply immured in dev/geek culture, who are too blinkered by (not to mention invested in) existing software affordances. Index cards and butcher’s paper are still better thinking psychotechnologies than any software I’ve seen, and Roam isn’t going to change that. The value added by software (basically: search, linking, and ease of capture) doesn’t seem to have been added to for a long time.

I didn’t mean it!

I’m a big believer in the value of intellectually and culturally diverse knowledge for development of tools that have the potential to have a big impact.

I’m sympathetic to this point. For me, I rarely find paper valuable except for math, but it depends. Sometimes nothing else will do. (And I hope that one day e-books have the UI advantages of bookbooks, or that we can add search and readable notetaking to books, as would be allowed with the nanotechnology page-reconfiguration books in Neal Stephenson’s The Diamond Age. Sigh.)

that seams very interesting to me too!

also, as i read this, two more things came to mind, perhaps worth pointing out. perhaps not… :smile:

number one:

the other one is this book i have recently read: “Über Leben” by mr. reinhold messner. now, this book, it has still been written ( just a few years ago ) using pen and paper, and, tbh, i found it to be a very interesting read! also, perhaps one topic, that he deals with in this book, worth mentioning ( …also and still thinking about Please avoid recycling the "considered harmful" trope … ) are the experiences that he has made with morality over the course of his long and eventful life in general and as it was, and still is, being (mis?)used in the context of the following in particular:

p.s. …perhaps i should be more explicit about the point i am trying to make here… :smile: so, seams to me that with programming / problem solving there are three main success factors at play: the problem, the problem solving tools, the people working on the problem using those tools. okay. now, it seams to me, that all too often too much emphasis is put on the relevance of the tool factor. for example editors, agile methods etc. etc. all those things have their place and importance, to be sure, but all in all, i would think that, compared to other factors, these things are of somewhat lesser consequence. ( …i sometimes can’t help thinking, that what makes them so attractive to those in charge is that they can be changed with relative ease and then be presented as huge innovations / improvements… but… on that point i could be totally wrong… it is just something that has crossed my mind on occasion, not something i would be prepared to take a strong stands on. :wink: )

1 Like

My view is that the tools aren’t so much over emphasised in tech, rather that trivial aspects of them are fetishised in a misleading way. Tools are important, but not at the level of which keybinding set gets you most excited in online forum discussions. A human and their tools and the problem at hand constitute a complex system with intrinsic dynamic tendencies (cf Andy Clark, extended cognition etc). The tactility of books and paper have more than an accidental relationship with how we work with them, and these aspects can’t be replace by purely symbolic representations.

I don’t know what the practical implications of this are (if I did I’d be creating the next huge advance). But I’m pretty sure that they’re more profound than minor tweaks of existing software paradigms can effect.

2 Likes

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.