Looking for a Thought Processor
I’ve been on a quest for a personal “thought processor” — one place to put all my notes, journal entries, and research. I’m tired of shoving notes into anything boxes (and never seeing them again). Most of all, I want note taking to be about creation, not collection. Once notes go in, the system should help me link my ideas together, spark insights, and produce something new.
Before starting my quest, I set some boundaries. To avoid the trap of paralysis by analysis, I gave myself two weeks to find a solution. To avoid the perfection trap, I reminded myself that all solutions have pros and cons. And to avoid losing productivity to endless dithering, I agreed to pick a solution and stick with it for a minimum of one year.
After fourteen days of googling, reading blog posts, listening to podcasts, and putting various candidates through their paces, I found only two options I felt could meet my needs: Roam Research and Obsidian.md.
Roam Research is currently more a service than an app. No dedicated apps exist (yet), so you access Roam Research through a browser. (Technologies exist, though, that can make Roam look and feel more app-like.)
Obsidian.md is currently available for Windows, MacOS, and Linux. If you work primarily in iOS, I would say Obsidian is not yet a good option for you, despite the availability of some clever workarounds. (More on this later, in the Accessibility section.)
The Knowledge Graph and the Power of Links
In lieu of categories and folders, both Roam and Obsidian represent notes as nodes on a graph. Any note in your collection can be connected to any other (or to many others). Exploring the resulting constellation of relationships reveals existing connections and suggests new ones.
As Shu Omi recently illustrated on Twitter, this structure allows your thoughts and ideas to swirl in a volatile mix versus being sectioned off in tight little boxes:
You create these connections in two ways. The first, familiar to anyone who has used a wiki, involves creating a reference link from one note to another.
For example: let’s say, after watching the movie Snowpiercer, I create a note (titled “Snowpiercer”) and load it with info on the cast, crew, and my observations about the film. From then on, in other notes, I can surround any instance of the word “Snowpiercer” in double square brackets, like this: [[Snowpiercer]]. Doing so creates a link back to my “Snowpiercer” note, making it easy to jump back to that note for more information.
Back on my original “Snowpiercer” note, in addition to the impressions I recorded, I’ll see two automatically generated lists. The first is a list of linked references: all other notes I’ve linked back to this one. This automatic creation of backlinks is a game-changer, making it easy to form and navigate connections between notes with minimal effort.
The second (and, for me, more interesting) list collects all my unlinked references — instances of a word or phrase that match the title of an existing note, but that aren’t yet linked to that note. For example: on my “Snowpiercer” note, the list of unlinked references displays every other time I’ve used the word “Snowpiercer” without creating a link. I can then convert any interesting unlinked references into linked references with a single click.
When scanning the unlinked references list, I frequently rediscover forgotten notes or spot surprising linkages among other notes in my knowledge graph.
Useful Criteria for Evaluating Roam and Obsidian
Both Roam Research and Obsidian.md support reference links and unreferenced links. In order to choose between them, I needed other points of comparison. While you’re likely to have criteria of your own, reflecting on the factors I considered might help you make the decision that’s right for you.
1. Availability of Training Materials
Passionate users of both applications provide free resources (and a number of paid courses) designed to jumpstart new users. In case they can help you, here are the ones I referred to the most during my two-week survey.
RoamBrain.com offers links to high quality Roam-related resources. (I wish I’d found the site earlier in my search!) Its Introduction to Roam and Getting Started links provide most, if not all, of what a beginner wants to know.
I would be amiss, however, not to thank Anne-Laurie Le Cunff (A Beginner’s Guide to Roam Research), Shu Omi (How to Take Smart Notes | Zettelkasten Method in Roam Research) Nat Eliason (Roam: Why I Love it and How I Use It), and Anonym-s (for the video series From Beginner to Superuser).
Once I started looking for information on Roam, I found many videos comparing Roam to other options. These led me to Obsidian.md.
At first, I was disappointed. Many of the videos about Obsidian lacked depth, covered the same material over and over again, or had been produced by individuals who had about as much exposure to Obsidian as I did. But with persistence, I found video like these: The Keep Productive YouTube Channel’s Obsidian: Getting Started, Facts, and Pricing. Similar coverage from a slightly different point of view can also be found in Justin DiRose’s Obsidian: The Basics of Note Taking. I’m told the Obsidian Community Discord is also lively and helpful.
While this may or may not be the case, I get the impression Obsidian has been developed with an eye toward cloning Roam’s feature set in a free, open-source application. As a result, even if you learn the basics from Roam tutorials, you’ll feel very much at home the first time you launch Obsidian.
Be aware, too, that both Roam and Obsidian are being developed at a furious pace. Features useful to beginners and pros alike appear suddenly and frequently. Tutorials more than a few months old remain useful, but will not cover the latest features.
2. Storage and Portability
Roam Research is unapologetically a web-first app. Users create and interact with notes in the browser. Content is stored in the cloud, but can be quickly and easily exported to markdown files when desired.
It is possible that Roam might someday suffer a catastrophic data loss or be acquired by a user-hostile company? Yes. But your local hard drive could also suffer catastrophic failure. Both problems can be mitigated by responsible practices. With Roam, it’s quick and easy to export your notes to a local folder. With Obsidian, you could save notes to a cloud-synced folder.
That said: portability alone is not the only factor to consider when deciding how you feel about where an app stores your notes.
As always, storing sensitive data in the cloud gives me pause. In a recent experiment, I loaded more than a hundred entries from my dream journal into DEVONthink for analysis. I’d like to load those same entries into Roam, link themes and symbols together, and explore them further … but I hesitate to upload such intensely personal data to the cloud.
Obsidian’s notes are as secure as your local computer is — at least until you sync them using a cloud service. If you’re obsessed with privacy, Obsidian might be the better choice for you.
Because users interact with Roam Research through a browser, their notes are available to them on any internet-connected device. Roam works equally well on my iPhone, iPad, and Mac.
I live in a rural area, so I occasionally wander into regions without cellular data coverage. When this happens, I lose access to my notes. This is frustrating, but it’s definitely a first-world problem.
Occasionally, Roam simply will not load in the Safari browser. When this is the case, I either switch to Chrome or close and restart Safari, which seems to help.
By contrast, after installation, Obsidian’s basic feature set requires no internet connectivity at all. Since content is stored locally, it’s always available — provided you have a Mac, Windows, or Linux laptop capable of accessing those files. (Since I tend to travel with an iPad exclusively, this is a problem for me.)
Because there’s no iOS app, Obsidian users on iPhones and iPads must use a third-party editor (like iAWriter or 1Writer) to interact with their notes. Unfortunately, this interaction is limited to creating new or editing existing notes. Outside of Obsidian, many of the features that make thought processors so powerful — the links, the graph — have limited functionality or become unavailable.
This third-party editing strategy can be perilous. At one point, after opening and editing a document in iAWriter on my iPad, I found I couldn’t save my changes because the file was still open in Obsidian on my Mac.
In my experience, Roam has proven more reliable and more convenient to use. If you place a lot of value on ease of access and consistent behavior, Roam will be the better choice for you.
Roam’s $15.00 per month subscription raises eyebrows, but I’m in the camp that believes sustainable pricing is vital to the long-term viability of any product or service. In the end, only you can decide whether or not access to Roam is worth $180.00 a year. (If you’re not sure, be sure to use the thirty-one day free trial before signing up.) If you become what the #roamcult refers to as a “believer,” you can sign up for five years of service for $500.00. Believers pick up some additional perks and effectively pay $8.33 per month.
Obsidian.md is free for personal use. Users may support development by making a one-time donation of $25.00 or more or by purchasing commercial licenses for $50.00 per year. Soon, an $8.00 per month add-on will allow publication of notes and collaborative editing. A syncing service is also planned, but given that Obsidian files sync just fine via Dropbox or iCloud, paying $4.00 per month for this would seem to be less a matter of necessity and more a matter of supporting further development.
If you’re a budget-conscious person, Obsidian.md might be the better choice. That said: be aware that Roam does offer a scholarship program, providing discounts or free service to full-time researchers, people under twenty-two, or those “experiencing significant financial distress.”
Roam Research, by default, offers a simple, uncluttered presentation of content.
A narrow left-hand navigation pane offers a means of switching from database to database and provides access to daily notes, the interactive graph of links, a list of all pages, and a list of shortcuts to favorite pages.
A wider center pane displays the note currently in use; by default, this appears as a page of bulleted black text on a white screen. Links to related documents and a list of unlinked (but potentially related) references appear at the bottom of each document.
On the right, a search field, a filtering control, a collapsed list of features (including sharing and exporting), and a help menu are always visible. A second, pale blue editing pane, capable of displaying blocks, pages, and their associated links, appears on the right whenever a link is shift-clicked.
Clever users offer extensive tutorials on how to use CSS to customize Roam’s appearance. Users may also apply themes created by members of the Roam community.
The Obsidian app environment is busier and more complicated.
Controls in a tool strip along the far left of the app window vary based on the number of plug-ins installed. At a minimum, the strip includes buttons for switching databases, displaying an interactive graph of linked pages, and accessing help and settings. A tabbed left-hand pane can display either a list of folders and documents or the search field.
The center pane displays the note currently in use. If you like, this pane can be split horizontally … or vertically … or both … multiple times. Each of these windows can display multiple views of the same document, multiple different documents, or any combination of these. Unless you’re deliberate in your choices, this can quickly become bewildering.
A right-hand pane displays a list of linked and unlinked (but potentially related) documents.
As with Roam, users can apply custom CSS or any of a library of user-submitted themes to tweak the way the app appears. If you enjoy tweaking settings until an interface is just right, both Roam and Obsidian will indulge you. If you want a clean, minimalist look from the get-go and have little interest in arcane configuration, Roam might be the better choice.
7. The Graph View
Both Roam and Obsidian present a map or graph of pages and their links, displaying a these ideas in a constellation of relationships.
Clicking any note in the graph highlights its connections. (Double-click to jump to the related page.) Nodes can also be clicked and dragged, stretching the web of ideas in interesting ways and making connections easier to explore. With a right-click of the graph, you can toggle between one of two layouts: Cose (more spherical) or Dagre (flatter and wider). You can also choose whether you want the graph to include or suppress nodes associated with daily pages.
Roam’s graph features big nodes that grow as the number of connections increases, making it easier to spot influential ideas or important daily entries. Large title cards display the related page or block title.
Obsidian’s graph looks more fragile and spindly, but the animation associated with dragging nodes or zooming in and out is smoother and, to me, more satisfying. Page titles, however, are rendered in a tiny, fine text that can be difficult to read, especially in dark mode.
Oddly, neither Roam nor Obsidian offer a search feature that works in graph view. Scanning the graph for a particular node among hundreds of connections grows tedious. A search feature capable of highlighting nodes that match search teams would make a nice addition to both applications.
Fiddle with the graph views in both apps, and decide which approach to illustrating the connections between thoughts feels right to you.
8. Composing and Editing
In Roam, text is presented as a series of bulleted paragraphs or blocks. Clicking a block selects it and activates it for editing.
Users familiar with outlining apps will appreciate that blocks can be dragged and dropped with ease. Blocks can be indented, making them subordinate to unindented blocks above them; once this is done, subordinate blocks can be collapsed into or expanded from their parents with a single click.
Unlike Roam, Obsidian’s view of document is modal; for each open window, the user must choose whether he or she wants to be in preview or edit mode. For me, this proved irritating, as I often clicked and clicked and clicked a on document in preview mode before remembering to switch to edit mode.
In addition, more than once, I found myself wrestling with an outline in Obsidian that looked fine in editing view, but that failed to indent properly in preview mode. Each time, resolving the issue (which involved clicking around to find invisible, offensive line breaks and backspace over them) required several minutes.
As you consider Roam or Obsidian, weigh how you feel about context switching. If you don’t care to think about it at all, Roam might be the better option. But if you’re accustomed to working in a Markdown editor and switching frequently from editing to preview mode, you might prefer Obsidian.
9. Blocks vs. Pages
In Roam, the basic unit of thought is the block. Pages are made up of blocks. Each time the user presses Enter, he or she creates a new block, which appears as a bulleted paragraph on the page.
Blocks can contain links to other pages, but also to other blocks. Blocks from one page can be referenced (which allows them to be seen) or embedded (which allows them to be edited) in another page. Edits in embedded blocks populate back to all instances where the block is embedded.
In Obsidian, the basic unit of thought is the page. Links go to pages, not to specific blocks within a page. As a result, blocks cannot be referenced or embedded. (They can, of course, be copied and pasted, with manually appended links back to a source.)
Based on a lively discussion in a user forum, Obsidian’s commitment to working with unmodified Markdown documents greatly complicates efforts to add block referencing to the app. Clever users seem intent on coming up with a solution, but a number commenters in the thread I’ve referenced here seemed to struggle to see the value of a block-based approach.
In my opinion, the block-based approach to referencing information is clearly superior to a page-based strategy. Once, I used to write entire books in Word. The process was (to put it mildly) extremely painful. Because Word struggled with long files, I had to create files for each chapter and use arcane magic to knit them together. The larger the project, the harder it was to maintain a vision of the project as a whole.
These days, I write in Ulysses. Unlike Word, Ulysses allows me to break down a long document into a series of short sheets. Instead of thinking of an entire chapter — or even an entire page — at once, I can focus on smaller “scraps” (or blocks) of text. I can drag and drop these, re-ordering them at will. I can tag individual sheets as drafts or tag them as complete when I’m done revising them. With a simple filter, I can enhance focus and see progress by displaying only the bits and pieces of the work that still need attention.
Once I began thinking about documents in more granular terms, my productivity increased, and my work became easier. My experience with Ulysses taught me that taking a more granular approach to individual units of thought increases the resolution at which all thoughts can be explored.
Roam allows focus at the block level; Obsidian allows focus at the page level. For me, that was the deciding factor between the two apps. I believe Roam’s decision to make blocks the smallest possible unit of thought make it a superior tool for knowledge work. Supporting references to blocks may, in fact, be Roam’s single most important feature.
And that gives away my choice, doesn’t it?
For Me, All Roads Lead to Roam
At the time of this writing, I’ve been using Roam daily for about a month. (When my two-week trial ended, I had zero buyer’s regret associated with ponying up my $15.00 per month.) Even in this brief time, Roam’s impact on my life is much broader in scope that I ever anticipated it could be.
The Power of Daily Pages
For example: Roam incorporates a feature called the Daily Page. Every day when I first launch Roam, I’m greeted with a dated page that’s perfect for recording journal entries and planning my day. As a result, my journaling practice — ragged at best, when I was using Day One — has become thoroughly integrated with my daily routine. On my iPhone, I quick capture tweets, posts, articles, and video links of interest, and these appear on my Daily Page as well, making it easier to track when I first encountered certain ideas.
(Obsidian users can achieve similar results with the Daily Page plug-in. For me, though, the fact Roam opens to my daily page — versus forcing me to click a link to create one — reduces friction and makes the daily page habit more addictive.)
A Boost in Personal Productivity
Since adopting Roam, I’m happy to report I’ve undergone a sort of personal creative renaissance. I’m writing more. But I’m not just producing more text; I’m producing better structured, more thoughtful text … and sharing it more frequently with others. I’ll disclose more about my process later; for now, I’ll just say that combining Roam’s insights with Ulysses’s text management system has launched a new phase in my life as a writer.
The structures I’m using to record thoughts in Roam enhance my memory of the material I read, listen to, and study. The linkages in Roam encourage me to see this material in surprising contexts. The result is a kind of enhanced awareness that extends my thinking in broad and unexpected ways. In conversations, I’m sharper. In meetings, I’m more focused. During study time, I go deeper. During downtime, I’m more present.
The Joy of Discovery
I can also share that any time invested in exploring Roam is time well-spent. The thoughtful little touches and frequent innovations delight me. When I first pasted a link to a tweet into Obsidian, it appeared as a link, rendered in tiny grey text. When I pasted the same link into Roam, it expanded automatically into a beautifully-rendered embedded tweet.
That bit of magic got me exploring the help menus for other tricks. Now, when I take notes on a YouTube video, I embed it into the top of a page and type my notes beneath it as I watch. I enjoy tracking work in kanban boards; with a keystroke or two, I can embed one. When I want to illustrate a journal entry with an image, I just drag one in. When I want to refer to a brainstorm for a story that I created in a MindNode mind map, I generate a PDF, embed it in the related note, and refer to it as I write.
I’m aware that these are just baby steps. But every day, I come across new functionality. (I’m just starting to understand how I might use queries, for example.) I don’t think I’ll ever learn to use every function available to me … but I don’t have to. Even if I never do anything more than stick with daily pages, take great notes, remain intentional about setting links, maintain a habit of scanning for unlinked references, and explore new connections in the knowledge graph … I’ll be earning real and meaningful dividends from my $15.00 per month investment in Roam.
A Roam Wishlist
As I mentioned at the start of this post, no tool is perfect. During this past month of use, I’ve come up with two features I hope to see in future updates.
First: fuzzy searches. Roam finds exact matches to text I enter in the search bar. As a result, even though the terms Mr. Lincoln, Abraham Lincoln, and President Lincoln all reference the same individual, Roam sees these as three unique and not necessarily related references.
A search employing fuzzy logic, capable of finding near-matches or even synonyms, could be very useful. Alternatively, being able to set up a table of associations matching terms to their cognates could greatly expand the value of search, linking, and backlinking.
Second: I’d like Roam to be able to present me with a random note on demand. As a frequent brainstormer, I know that considering random input can be a powerful practice for shifting context and resetting perspective. When inspiration lags, a few clicks through random notes can get creative juices flowing again. Encountering a random note and considering how it might relate to the question at hand can generate valuable insights.
In Rom, this could be as simple as creating a persistent page (like the existing TODO page, for example) called “Random.” Whenever visited, the Random page would display a single random block or collection of random blocks. For all I know, a clever embedded code block might add this functionality.
(Obsidian’ Random Note plug-in offers this functionality. If a similar function is available in Roam, I haven’t found it.)
Finally, I’d like to be able to share individual pages (or a collection of pages) from a knowledge graph with the public (and perhaps even invite participation in creating and updating those pages) without having to share the entire graph. As I understand it, Roam currently takes an “all or nothing” approach to sharing and collaboration.
I’m looking forward to learning more about Roam. As part of my effort to go from dabbler to do-er, I’m making a conscious decision to adopt fewer tools and commit more deeply to each. Roam seems ripe for that kind of exploration.
I’m a writer, author, and media producer, so as I discover applications and process of special interest along these lines, I’ll share what I learn. In a very short time, I’m already seeing ways Roam can assist with writing everything from blog posts to video scripts.
In fact, Roam’s ability to gather and organize research made writing this very post much easier. I visited my “Roam Research” page, browsed linked and unlinked references, pulled relevant material into Ulysses, and then polished it there. Everything I needed to write this post came together without the usual last-minute sifting and searching.
In addition, I’ve been using Roam to write corporate video scripts and create the outlines I use in the online classes I teach. I’ve also come up with my own structure for documenting notes — inspired by, but not bound by, Tiago Forte’s PARA concepts — and organizing those notes in ways that spur creativity and action.
So: lots to learn … and lots to share. I hope this post gives you some useful insights as you identify your own best thought processor, and that you’ll be inspired to share with me what you learn along the way. Feel free to drop me a line via twitter (@markmcelroy) or via email at firstname.lastname@example.org.