# Could Roam Research be a Clojure 'killer app'?

**URL:** https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933
**Category:** Watercooler
**Created:** [May 8, 2020, 11:43am UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933 "2020-05-08T11:43:59Z")
**Posts on this page:** 20
**Page:** 1

<div class="post-metadata">

### Author: ![crispinb](https://clojureverse.org/user_avatar/clojureverse.org/crispinb/32/3486_2.png) [@crispinb](https://clojureverse.org/u/crispinb)
#### Post date: [May 8, 2020, 11:43am UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933/1 "2020-05-08T11:43:59Z")

</div>

Mea culpa for the daft title (even if ‘killer app’ was a useful concept, it’d be an anachronism in Clojure’s case), but I do wonder if [Roam Research](https://roamresearch.com) being currently so en vogue (at least in HN/Reddit country) may net some good mindshare for Clojure. One of the founders is frequently very bullish on the language in his [twitter feed](https://twitter.com/Conaw).

---

<div class="post-metadata">

### Author: ![teodorlu](https://clojureverse.org/user_avatar/clojureverse.org/teodorlu/32/2896_2.png) [@teodorlu](https://clojureverse.org/u/teodorlu)
#### Post date: [May 8, 2020, 1:54pm UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933/2 "2020-05-08T13:54:56Z")

</div>

I think Roam’s current hype has to give us some inbound attention. Disclaimer: I’ve spent countless hours in Roam the last weeks.

Using the chance to direct any interested Clojurians / ClojureScripters to **Athens**. Athens is an Open-Source Roam clone, currently very much alpha. Code is ClojureScript + Shadow-CLJS.

> **[athensresearch/athens](https://github.com/athensresearch/athens)**
>
> Open-Source Roam. Contribute to athensresearch/athens development by creating an account on GitHub.

---

<div class="post-metadata">

### Author: ![crispinb](https://clojureverse.org/user_avatar/clojureverse.org/crispinb/32/3486_2.png) [@crispinb](https://clojureverse.org/u/crispinb)
#### Post date: [May 9, 2020, 12:18am UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933/3 "2020-05-09T00:18:21Z")

</div>

Thanks, I’ll keep an eye on Athens.

As for Roam itself, I’m interested but not fully convinced. It seems to be essentially a wiki, extended with back and block links. But sometimes a seemingly minor refinement can become the difference-that-makes-a-difference. Time will tell.

---

<div class="post-metadata">

### Author: ![teodorlu](https://clojureverse.org/user_avatar/clojureverse.org/teodorlu/32/2896_2.png) [@teodorlu](https://clojureverse.org/u/teodorlu)
#### Post date: [May 9, 2020, 6:30pm UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933/4 "2020-05-09T18:30:30Z")

</div>

Have you used it?

To me, the difference was in how simple it was to edit it. To input information, create new pages, flesh out content. Somehow, it feels like I’m getting the ease of writing markdown, with global link refactoring and a very solid model for naming things / referring to things.

If I read the dev team right, it’s only a matter of time until we get a plugin system. And since they are already running Clojurescript … let’s say I’m excited to see what’s going to happen.

---

<div class="post-metadata">

### Author: ![crispinb](https://clojureverse.org/user_avatar/clojureverse.org/crispinb/32/3486_2.png) [@crispinb](https://clojureverse.org/u/crispinb)
#### Post date: [May 9, 2020, 10:15pm UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933/5 "2020-05-09T22:15:11Z")

</div>

I have used it - though I’m reluctant to invest much time in it given the announced pricing (which make it very expensive at my local exchange rates). Still, I’m continuing to do a few things there just out of interest. I’m somewhat sceptical. My guess is it will tend to lead to yet more enthusiastically worked on, and rarely read, messes (Roams own unreadable help instance for example!). Hype and intrinsic merit are unrelated, and only time will tell for Roam on the latter.

Plugins could be interesting, agreed, especially if they could be written in Clojure.

---

<div class="post-metadata">

### Author: ![simongray](https://clojureverse.org/user_avatar/clojureverse.org/simongray/32/246_2.png) [@simongray](https://clojureverse.org/u/simongray)
#### Post date: [May 11, 2020, 11:40am UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933/6 "2020-05-11T11:40:05Z")

</div>

I love the fact that it’s only been a few days since I first saw this project announced by some dude who said he only just started using Clojure. Now it apparently already has several other active co-contributors and 250+ stars on github. Pretty magical open source moment.

---

<div class="post-metadata">

### Author: ![crispinb](https://clojureverse.org/user_avatar/clojureverse.org/crispinb/32/3486_2.png) [@crispinb](https://clojureverse.org/u/crispinb)
#### Post date: [May 11, 2020, 10:43pm UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933/7 "2020-05-11T22:43:14Z")

</div>

That struck me too. I’ve been “learning” (fiddling around with) Clojure now for a few weeks, but it wouldn’t for a moment have occurred to me to publicly launch something remotely as ambitious.

---

<div class="post-metadata">

### Author: ![jackrusher](https://clojureverse.org/user_avatar/clojureverse.org/jackrusher/32/457_2.png) [@jackrusher](https://clojureverse.org/u/jackrusher)
#### Post date: [May 12, 2020, 7:35am UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933/8 "2020-05-12T07:35:09Z")

</div>

You would store your outboard brain on someone else’s servers? 😱

---

<div class="post-metadata">

### Author: ![teodorlu](https://clojureverse.org/user_avatar/clojureverse.org/teodorlu/32/2896_2.png) [@teodorlu](https://clojureverse.org/u/teodorlu)
#### Post date: [May 12, 2020, 8:30am UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933/9 "2020-05-12T08:30:35Z")

</div>

> [@jackrusher](#):
>
> You would store your outboard brain on someone else’s servers? 😱

Yeah ☹

I _do_ have a hierarchy of org-mode files, but Roam’s bidirectional linking & concept reference refactoring features are just brilliant. I’m effective using Roam where I wouldn’t be effective using Org-mode.

How do you work with your _outboard brain_?

---

<div class="post-metadata">

### Author: ![didibus](https://clojureverse.org/user_avatar/clojureverse.org/didibus/32/951_2.png) [@didibus](https://clojureverse.org/u/didibus)
#### Post date: [May 12, 2020, 8:40am UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933/10 "2020-05-12T08:40:30Z")

</div>

Someone told me about [Org-roam](https://github.com/org-roam/org-roam). Did not try it, and I also did not try Roam. Just thought I’d mention it.

---

<div class="post-metadata">

### Author: ![teodorlu](https://clojureverse.org/user_avatar/clojureverse.org/teodorlu/32/2896_2.png) [@teodorlu](https://clojureverse.org/u/teodorlu)
#### Post date: [May 12, 2020, 9:05am UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933/11 "2020-05-12T09:05:06Z")

</div>

Yeah, apparently that’s org-mode backed by an SQLite database + some emacs lisp magic. Haven’t looked into it myself either.

---

<div class="post-metadata">

### Author: ![jackrusher](https://clojureverse.org/user_avatar/clojureverse.org/jackrusher/32/457_2.png) [@jackrusher](https://clojureverse.org/u/jackrusher)
#### Post date: [May 12, 2020, 1:15pm UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933/12 "2020-05-12T13:15:06Z")

</div>

I have my own stuff. Every once in awhile I think about packaging it up for public consumption, but it’d be a bit of bother. You might want to check out org-roam!

---

<div class="post-metadata">

### Author: ![myguidingstar](https://clojureverse.org/user_avatar/clojureverse.org/myguidingstar/32/6150_2.png) [@myguidingstar](https://clojureverse.org/u/myguidingstar)
#### Post date: [May 12, 2020, 4:10pm UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933/13 "2020-05-12T16:10:21Z")

</div>

The same here. So I ended up with tiddlyroam which is an offline alternative

> **[TiddlyRoam](https://joekroese.github.io/tiddlyroam/)**
>
> Your open source external brain

---

<div class="post-metadata">

### Author: ![schmudde](https://clojureverse.org/user_avatar/clojureverse.org/schmudde/32/911_2.png) [@schmudde](https://clojureverse.org/u/schmudde)
#### Post date: [May 12, 2020, 5:27pm UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933/14 "2020-05-12T17:27:06Z")

</div>

Well the founder, Conor, has been thinking about a knowledge tool at least since I meet him at the Clojure/Conj in 2016. There is something to be said for careful thought and execution, which I believe Roam exhibits.

> [@crispinb](#):
>
> My guess is it will tend to lead to yet more enthusiastically worked on, and rarely read, messes (Roams own unreadable help instance for example!).

Indeed. But bi-directional links give you is a chance to delay decisions. My knowledge base is basically hierarchical markdown, categorical files, and `grep`. Knowledge is then synthesized through a tagging system on my blog. It’s pretty effective, but I’m tied to decisions I made a couple years ago. Bi-directional links are top-level categories that can surface interconnections between other top-level categories. That’s pretty powerful to me.

Roam lets me delay big time structural decisions (sound familiar, REPL fans?).

The ultimate goal of Roam is building a collaborative knowledge tool. There may be many different entry points to a policy - an expert on immunization, an expert on information dissemination, an expert on contact tracing - that are pulling from many overlapping sources. An auditor or a journalist could conceivably explore or share parts of the knowledge graph that drove the decision-making.

These are all nice ideas, but it will be difficult to produce a coherent product. The last time I attempted to use another person’s solution was over 10 years ago with [DevonThink](https://www.devontechnologies.com/). It really didn’t offer much at the end of the day. And certainly very little for teams.

---

<div class="post-metadata">

### Author: ![crispinb](https://clojureverse.org/user_avatar/clojureverse.org/crispinb/32/3486_2.png) [@crispinb](https://clojureverse.org/u/crispinb)
#### Post date: [May 12, 2020, 10:49pm UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933/15 "2020-05-12T22:49:43Z")

</div>

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.

---

<div class="post-metadata">

### Author: ![mdiin](https://clojureverse.org/user_avatar/clojureverse.org/mdiin/32/3599_2.png) [@mdiin](https://clojureverse.org/u/mdiin)
#### Post date: [May 13, 2020, 6:34am UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933/16 "2020-05-13T06:34:56Z")

</div>

> [@crispinb](#):
>
> 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?).

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.

---

<div class="post-metadata">

### Author: ![schmudde](https://clojureverse.org/user_avatar/clojureverse.org/schmudde/32/911_2.png) [@schmudde](https://clojureverse.org/u/schmudde)
#### Post date: [May 13, 2020, 8:08am UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933/17 "2020-05-13T08:08:53Z")

</div>

> [@crispinb](#):
>
> 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).

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](https://github.com/arcadia-unity/arcadia) (Clojure in CLR) keep Clojure’s concepts implementation-independent.

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

> [@crispinb](#):
>
> 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.

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](https://www.arcstudiopro.com/)).

---

<div class="post-metadata">

### Author: ![thheller](https://clojureverse.org/user_avatar/clojureverse.org/thheller/32/534_2.png) [@thheller](https://clojureverse.org/u/thheller)
#### Post date: [May 13, 2020, 8:29am UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933/18 "2020-05-13T08:29:56Z")

</div>

> [@crispinb](#):
>
> 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?).

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.

---

<div class="post-metadata">

### Author: ![crispinb](https://clojureverse.org/user_avatar/clojureverse.org/crispinb/32/3486_2.png) [@crispinb](https://clojureverse.org/u/crispinb)
#### Post date: [May 13, 2020, 11:06pm UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933/19 "2020-05-13T23:06:00Z")

</div>

> [@schmudde](#):
>
> Agreed. Right now we’re seeing a ‘rising tide’ effect. Lots of work on libre Roam alternatives (as already listed here).

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.

> [@schmudde](#):
>
> would be nice if Clojure was the foundation for collaborative, immutable knowledge tools

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.

---

<div class="post-metadata">

### Author: ![crispinb](https://clojureverse.org/user_avatar/clojureverse.org/crispinb/32/3486_2.png) [@crispinb](https://clojureverse.org/u/crispinb)
#### Post date: [May 13, 2020, 11:09pm UTC](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933/20 "2020-05-13T23:09:27Z")

</div>

> [@thheller](#):
>
> I think this search for the mysterious “killer app” is a waste of time

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.

[Next page](https://clojureverse.org/t/could-roam-research-be-a-clojure-killer-app/5933.md?page=2)
