roamblog
- 2019-11-29 - Tweetstorm about Roamblogs, inspired by vgr
- Thread about Roamblogs, inspired by @vgr
- How would you reimagine blogs around graph databases as the foundation?
(Roam, Notion, Gatsby all seem to have blog like functionality in their sights but it feels like a stepchild use case relative to their core use cases of notes, wikis, collaboration, static pages)
- I'm experimenting with writing publicly on roamresearch.com, and its graph features seem to be solving some core blocks:
1. wanting to be able to reference ideas I haven't written a full post about
2. not wanting to post about something before my post is 💯 - ...you can see how those two blocks reinforce each other. Since everything is deeply intertwingled, this made it really challenging to publish anything!
twitter.com/Malcolm_Ocean/status/1047480607226384384 - Now, with Roam, I can simply mention the idea using a page link, & get a placeholder page for it. Even without adding content to the page, it already displays every place where that word/phrase is used, giving context for learning more about it:
twitter.com/andy_matuschak/status/1190102757430063106 - I've only done a little bit of this but it's been amazing and I can tell that it's going to make a huge difference to my online writing. I've wanted something like this for years. Here's some thinking from 2 years ago. Ended up making an Airtable and it helped... like 5%.
- In those notes, you'll notice I talk about Tables of Contents and about meaningness.com, which is one of the best examples of a hypertext *book* that I'm aware of.
@meaningness made drupal plugins for 🛠️ WIP pages & hover-glossary
twitter.com/Malcolm_Ocean/status/1199773216169963520 - But meaningness is a nonlinear book. What's a nonlinear blog? What distinguishes a book from a blog?
twitter.com/Malcolm_Ocean/status/1200488808518705152 - I see the essential difference between blog & book as: a book has a finite breadth & depth, that's somewhat known from the beginning, and thus is organized around a ToC, and can be *finished". Also intended to be internally coherent.
- By contrast, a blog is an ongoing exploration of whatever captures the writer's interest at a given moment (perhaps with a theme).
Any table of contents must be mostly retrospective, since the writer doesn't know what comes next. Later posts may contradict earlier ones. - This implies some bloggers who are super organized & have dozens of posts planned out could be considered to already be writing digital books.
Then ofc there are blogs converted into books, one example being the conversion of LW Sequences into R:A-Z
lesswrong.com/posts/NjFgqv8bzjhXFaELP/new-edition-of-rationality-from-… - @Meaningness again becomes a helpful example here. The homepage says it's a "work in progress ... hypertext book and a metablog that comments on it" and the book has a table of contents whereas the metablog is simply posts organized by date.
- One advantage to writing a book is you can assume readers will start @ start, so you can introduce multiple new concepts, then use them to say more. A huge part of the point of a hypertext book is that it affords multiple points of entry, which absolutely necessitates glossaries.
- At *minimum*, one needs accessible quick reminders of what terms mean.
The backlink approach of Roam is even more valuable as it means you see not just the definitions but also references to what else you've said ABOUT and WITH those concepts
twitter.com/Malcolm_Ocean/status/1134976325029113856 - This is critical for allowing writers to write deep thoughts using new concepts without having to re-explain themselves every time, but also not having to manually pull up a reference link for each use of a term...
& ofc some people don't even try 😂
twitter.com/eugenewei/status/1193662458835038208 - And we haven't even gotten to some of the more epic features of roam, including the ability to embed-quote nodes or entire subtrees, and to see where a given piece is quoted. This allows for remixing old pieces or drafts, producing meta-commentary, etc.
- Previously the best thing for this was twitter & QTs (and it's still better along some dimensions)
See @visakanv's answer to @vgr's original question
twitter.com/visakanv/status/1200325448313405441 - There are challenges though. People find meaningness.com daunting to read because they don't know where to start. In order to ensure I read the whole thing, I chose to just go in ToC order anyway. I guess the main value is being able to publish a half-written book at all.
- So going back to @vgr's original point, @RoamResearch is clearly not built around a core use case of blogging and has barely optimized for it at all... and yet it's already a powerful platform for this. What's possible with a few years of further development?
- Here's what I'd like to see for roam to make it better for graph-based-blogs:
😍 1. Basic usability stuff: shareable page url with previews, custom header/theme/css, private drafts, commenting (block-level!) - 😍 2. Better ways to organize posts to point people to new content & updated-old content. Currently landing page is Daily Notes, which is... sort of appropriate for a blog... but it ends up being mostly blank unless actively updated frequently.
- 😍 3. Subscribe-related features. One option I would like is to be able to easily export a page as HTML and pipe it straight into wordpress+RSS and into mailchimp, so that I can announce new posts to followers. Could also be more internal.
- 😍 4. What-I've-Read tracking. This is key for nonlinear reading. Visited-links turning purple is the Web 1.0 version of this, but it doesn't suffice when pages may also be updated. It needs to be both on a page level and on a node level.
- 😍 5. Inter-roam linking/embedding. I've talked to @Conaw & this is en route but is tough & needs a new data model.
5b. Some extensible standard for doing deep backlinks & embed between completely different *sites*. Revive the blogosphere! Also science 🌎
twitter.com/Malcolm_Ocean/status/1199764376867102723
- Scrapped tweets
- What even is a blog in the first place?
*puts on robe & etymologist hat*
blog, n. short for weblog (web+log), a website updated periodically, that functions as a sort of personal public journal - It seems to me that what makes a site a blog, not just a site, is that it has a series of posts organized by date, with the expectation that there are more posts to come, and in general the expectation that old posts mostly won't be updated. Hence twitter=microblog
11 linked references
Roam
Roam Feature Wishlist › Hypertext roambook stuff › Inasmuch as Roam seems like an epic platform for publishi… › 4. option to have a table of contents page as the landing…
- (although there is sort of a funny way in which daily notes could also function as a blog feed! but this is the hypertext book section, not the roamblog section)
- this public roamblog you're viewing right now. hi! (also located at intertwingled.blog)
- (Basically all of the roamblog stuff is relevant here too)
- roamblog - collection of related articles published periodically
- roamblog stuff
- a memorable page url
- something like roamresearch.com/#/app/malcolmocean/pageName/Roam such that it would redirect to this page
- that way, for pages with short names, I could literally type them in, rather than having to find the link
- a shortcut to a search results page
- actually, a memorable page url and a shortcut to a search results page could be the same! it could be like... whether the page exists or not, going to a particular url would go to as-if-that-page, and would show references below
- and if I did this while logged in, it would create the page as an actual entity like the Find or Create Page thing does
- but if a guest user did it, then it would only exist while they were on it, to view the unlinked references (which functions as a kind of search)
- probably would want to auto-show the unlinked references in that case
- some shareable page url that actually previews with an appropriate page title
- (I'm not sure if this can be done with the current hash (# ) based urls, so it might have to use special share-links or something)
- commenting features
- At minimum, this would need some sort of mode where people have write access but no ability to overwrite each other's nodes
- (which, combined with ability to reorganize each other's nodes, could actually be a cool permset for a private shared DB too, so that it's always clear who's saying what)
- But it could be implemented either as:
- a comments "section" that functions in this way, where I would do something like and that node would allow comments
- users can leave comments as subbullets on any other bullet, but things stay collapsed unless I open them
- supposedly this exists as
{{comment-button}}- ...as of August 2nd, 2020, this... needs work.
- I think that even with these caveats I might still want to have people need to request access to comment.
- custom header / theme
- this is also helpful for distinguishing private roams, similar to how slack workspaces have different themes
- custom per-roam CSS more generally
- that would allow me to share custom tag styles for instance (see Give tags a CSS selector based on their name, so that I can custom-style them (workflowy's is actually just title="Filter # tag", not intended for hax))
- this is useful for shared private roams too, not just publishing
- custom domain
- maybe having a specific page operate as the homepage would be nice, instead of the daily notes
Fractal Pomodoros
Key takeaways (these haven't necessarily been clearly art… › even doing other things-worth-doing can still fragment yo… › pick an appropriate level of abstraction for each timesca…
- maybe you want to write an essay on a particular topic, or maybe you just want to open up your roamblog and write for an hour on whatever comes to mind
roam/css
- custom database theme for the malcolmocean roamblog:
- originally I was using the header from malcolmocean.com
- then I played with some that were that but hue-rotated
- -117
- +27
- -32
- now, this other similar-style piece:
roam-sidebar-container noselect.roam-sidebar-content > .flex-h-box:first-child:after { color: white; padding-left: 10px; } .roam-topbar .flex-h-box > div:nth-child(2), .rm-topbar .flex-h-box > div:nth-child(2) { padding-left: 30px; } /* .rm-db-title-container { display: none !important; }*/ .roam-sidebar-content > .flex-h-box:first-child:after, .roam-topbar .flex-h-box > div:nth-child(2):after, .rm-topbar .flex-h-box > div:nth-child(2):after { /* content: "malcolmocean";*/ content: ""; display: inline-block; position: relative; width: 100px; height: 30px; background: url(https://malcolmocean.com/wp-content/themes/minx/img/logo.png) center no-repeat; background-size: 100px auto; padding-left: 10px; margin-left: 10px; } .roam-topbar .flex-h-box > div:nth-child(2):after, .rm-topbar .flex-h-box > div:nth-child(2):after { top: 3px; left: 200px; /* filter: invert(1); /**/ } .roam-sidebar-content {background: #591420;} .roam-topbar {background: #f2c6ce} .roam-sidebar-content { background: url(https://malcolmocean.com/wp-content/themes/minx/img/footer.png); background-position: center bottom; } .roam-topbar, .rm-topbar { background: url(https://malcolmocean.com/wp-content/themes/minx/img/header.png); background: url(https://firebasestorage.googleapis.com/v0/b/firescript-577a2.appspot.com/o/imgs%2Fapp%2Fmalcolmocean%2FLCO36r0wcC.png?alt=media&token=93bb11a6-2b9d-4b3a-9c70-5bc5d37bdde5); background: url(https://firebasestorage.googleapis.com/v0/b/firescript-577a2.appspot.com/o/imgs%2Fapp%2Fmalcolmocean%2F15iaOO59Zh.png?alt=media&token=42331bf0-6637-4d73-8404-3a0d8f87dd7a); background: url(https://firebasestorage.googleapis.com/v0/b/firescript-577a2.appspot.com/o/imgs%2Fapp%2Fmalcolmocean%2FE5GVdfdrxA.png?alt=media&token=80393338-3c4e-45d5-92fb-72de2d12e6e1); background: url(https://malcolmocean.com/wp-content/themes/minx/img/header.png); background-size: 710px; background-position: 0 -30px; /**/ box-shadow: 0 1.5px 4px rgba(0,0,0,0.7); border-bottom: none; z-index: 1000; } .roam-topbar, .rm-topbar { background: url(https://firebasestorage.googleapis.com/v0/b/firescript-577a2.appspot.com/o/imgs%2Fapp%2Fmalcolmocean%2FHGraRev_Et.png?alt=media&token=167916fe-5b8c-41a2-8c40-2afcc1d5e684); background-size: 1920px; background-position: 0; } .bp3-button .bp3-icon, .bp3-button .bp3-icon-standard, .bp3-button .bp3-icon-large, .bp3-button[class*="bp3-icon-"]::before { color: white; } .roam-topbar .bp3-button:not([class*="bp3-intent-"])::before { color: black; }
May 30th, 2020
- Great quote about the need for an intertwingled blog like a roamblog, both for writing and for reading. source
- Fully unpacking the various issues at play here is difficult because it requires what I call '3D thinking', which does not lend itself to simple narrative exposition. This is because understanding why A leads to B requires you understand C, but understanding C requires that you already understand how A leads to B, etc. This article was written and re-written, and in the end I gave up and decided to just focus on a few pieces of the puzzle (sorry!).
November 29th, 2019
- Wrote a tweetstorm about roamblog: 2019-11-29 - Tweetstorm about Roamblogs, inspired by vgr



