Roam is currently hiring one or more additional full time interaction/visual designers.
If you are interested in joining our team, below are a few examples of some of our open questions.
Some are highly speculative, some are smaller tasks on our immediate roadmap.
If you think you have a good answer to any of these questions -- send us a public Roam page, or public Roam instance with screenshots of your mockups, wireframes or interaction gifs or videos and your commentary on the problem
If we agree that you've solved the problem and decided we want to implement it, we'll happily pay you a bounty for the work you've already done (between $100 and $2000) and have a phone screen and/or fly you out to San Francisco to interview with the team.
Many apps use sophisticated algorithms and psychological tricks to hijack user's attention to do things like maximize the amount of time they spend looking at apps. We want to do the opposite.
We want to empower users to use algorithms to schedule their attention in the future to better achieve their goals, live their values, and spend time the way they want to.
We have an intuition there is some abstraction over these kinds of challenges
Tools like Anki, Supermemoand Remnote.io allow users to create flashcards which are scheduled for review at the optimal time for transferring knowledge from short term into long term memory
We've seen users generate pages of Flashcards in their Roam databases
In general they tend to put the "Front of the Card" on a block/bullet point, and the "Back of the Card" nested underneath it
They then toggle whether the card is open or closed by expanding or collapsing the bullet.
We've even seen some users hack together a basic Spaced Repetition System in Roam, using the Datepicker to schedule when they should review a card next
We think we can do much better though - and that supporting Memory is an important problem to solve for building a really powerful tool for thought.
Key Questions::
How does a user decide what is going into their "flashcard stack"?
Is it a particular tag that we set by default-- like SRS or Memory
Do users chose to "Remember" all the mentions of a page or pages they select, and all the blocks linking to or tagged with that are placed in their deck?
What would that interaction look like?
Does each block need to be tagged individually, or would all blocks nested under a Remember tag be turned into flashcards and placed in a deck
Should users have multiple "decks" of cards
What happens if they just want to study their Spanish vocab one day
How do they filter their "review deck" to just cover that topic.
What if they want to just generally review all of the things they are trying to remember
How should this activity fit into our planned Mobile apps
Mobile is a pretty optimal use case for this sort of review
Should this be a core offering
Should it be a stand alone app we build
Should it be something we leave 3rd party developers to build off of the upcoming Roam API
How should we store the information about previous answers - or the next day the note is scheduled for review?
SRS algorithms suggest you review an item a few times they first day, then every other day, then every third day and so on as long as you keep getting the note right -- along the Forgetting Curve
Is the information about when you've gotten the card correct, and when you need to review it next visible to the user?
Many people place their tasks on the Daily Notes page, or on the page for a project that the task relates to
It is possible to use the backlinks/Mentions section of the TODO page as an inbox for all your incomplete tasks and as a place for scheduling notes to appear on future log days
Example::
Roam Demo Videos using the TODO page as an inbox -- doing things that can be done immediately -- scheduling other things for a future day, and hiding all the todos that have been scheduled
That said, it is easy for that inbox to be overwhelming, and sometimes it is nice to just see short tasks one at a time - and to either just do the task in front of you, or push it back a day.
Key Questions::
Is there a place for incomplete tasks in a Spaced Repetition deck that users review regularly?
What is the best way to remind users of tasks they haven't completed yet, without overwhelming them?
What happens when a user wants to "snooze" a task?
Relates to question in Spaced Repetition of how cards get scheduled and ordered in deck after user action
What could we do to help users who keep pushing a task off day after day, to either help them make progress on the goal, or get rid of it, so that they aren't just beating themselves up and feeling guilty about it all the time?
A lot of the really valuable things that we want to read and understand are Long Reads, but it can be very hard to find the extended blocks of time to read these.
and even when we have that time, it is easy to forget what we were excited about reading or watching or listening to in the past
It would be nice to be able to keep track of how far we are in an article / paper / longform blog post we've started that we were excited about, and to chip away at when we have a few minutes to spare - rather than just jumping to twitter.
To solve this problem you would probably need to solve these sub problems
Tools like Anki, Supermemoand Remnote.io allow users to create flashcards which are scheduled for review at the optimal time for transferring knowledge from short term into long term memory
We've seen users generate pages of Flashcards in their Roam databases
In general they tend to put the "Front of the Card" on a block/bullet point, and the "Back of the Card" nested underneath it
They then toggle whether the card is open or closed by expanding or collapsing the bullet.
We've even seen some users hack together a basic Spaced Repetition System in Roam, using the Datepicker to schedule when they should review a card next
We think we can do much better though - and that supporting Memory is an important problem to solve for building a really powerful tool for thought.
Key Questions::
How does a user decide what is going into their "flashcard stack"?
Is it a particular tag that we set by default-- like SRS or Memory
Do users chose to "Remember" all the mentions of a page or pages they select, and all the blocks linking to or tagged with that are placed in their deck?
What would that interaction look like?
Does each block need to be tagged individually, or would all blocks nested under a Remember tag be turned into flashcards and placed in a deck
Should users have multiple "decks" of cards
What happens if they just want to study their Spanish vocab one day
How do they filter their "review deck" to just cover that topic.
What if they want to just generally review all of the things they are trying to remember
How should this activity fit into our planned Mobile apps
Mobile is a pretty optimal use case for this sort of review
Should this be a core offering
Should it be a stand alone app we build
Should it be something we leave 3rd party developers to build off of the upcoming Roam API
How should we store the information about previous answers - or the next day the note is scheduled for review?
SRS algorithms suggest you review an item a few times they first day, then every other day, then every third day and so on as long as you keep getting the note right -- along the Forgetting Curve
Is the information about when you've gotten the card correct, and when you need to review it next visible to the user?
Many people place their tasks on the Daily Notes page, or on the page for a project that the task relates to
It is possible to use the backlinks/Mentions section of the TODO page as an inbox for all your incomplete tasks and as a place for scheduling notes to appear on future log days
Example::
Roam Demo Videos using the TODO page as an inbox -- doing things that can be done immediately -- scheduling other things for a future day, and hiding all the todos that have been scheduled
That said, it is easy for that inbox to be overwhelming, and sometimes it is nice to just see short tasks one at a time - and to either just do the task in front of you, or push it back a day.
Key Questions::
Is there a place for incomplete tasks in a Spaced Repetition deck that users review regularly?
What is the best way to remind users of tasks they haven't completed yet, without overwhelming them?
What happens when a user wants to "snooze" a task?
Relates to question in Spaced Repetition of how cards get scheduled and ordered in deck after user action
What could we do to help users who keep pushing a task off day after day, to either help them make progress on the goal, or get rid of it, so that they aren't just beating themselves up and feeling guilty about it all the time?
A lot of the really valuable things that we want to read and understand are Long Reads, but it can be very hard to find the extended blocks of time to read these.
and even when we have that time, it is easy to forget what we were excited about reading or watching or listening to in the past
It would be nice to be able to keep track of how far we are in an article / paper / longform blog post we've started that we were excited about, and to chip away at when we have a few minutes to spare - rather than just jumping to twitter.
To solve this problem you would probably need to solve these sub problems
How do you track your place in external content that you're reading and marking up in Roam?
How do you add a section of Roam (a page or sub-bullet )to your Incremental Reading pipeline?
What does the pipeline look like?
is it showing you only a block at a time (like twitter), or does it look more like an article
How do you interact with the content -- particularly on Mobile to signal the most important sections
How do you catch yourself up on a long article that you've already read 20%, 50%, 80% of?
could be solved individually - but there seems to be an overall theme to them, and it isn't clear that the solution to each need be completely separate
In general, we're really not thrilled about introducing a huge number of stand alone features that only work for highly specific workflows - Roam is a tool for thought - we'd rather build the building blocks that users use to follow workflows that resonate with them
But in Roam, even edges of a graph can be treated as nodes, how could we dramatically expand on what people can do with respect to tables
Another way to think about it is
If a knowledge graph is an N dimensional matrix - a table is just a two dimensional slice on that matrix -- what new sort of UIs could we build on top of tables to make them more expressive and more powerful?
How could pivot tables in Excel be something that a child could use?