Connections screen "easy mode"
The Connections screen currently:
- Assumes the user knows that they should manually add invite codes
- Assumes the user knows that light-indigo background means "staged"
- Assumes the user knows that they need to have at least 1 or 2 green connections
- Assumes the user knows that a green connection with a room is not enough for replication
- Assumes the user knows what the header with 4 icons means
All these assumptions mean that the Connections UX is currently not obvious. At the same time, it is vital to "figure out" the Connections screen for onboarding (initial replication). This means users have to solve this puzzle before any other experience in the app (even a casual browsing experience, where they can get familiar with content in the app).
Idea: "easy mode" where connections are managed automatically and there is an explainer text telling what to do
The easy mode could tell the user what they need to do next (if we absolutely require user input), but otherwise the easy mode could automatically take decisions on behalf of the user, such as automatically connecting to staged peers (this used to be the behavior in Patchwork circa 2017).
Possible UI elements on the easy mode:
- Explainer text
- Given the current situation, would tell what the user needs to do (or not do)
- E.g. upon starting the app with no connections, the explainer text would tell the user to find an invite code or create an invite
- E.g. upon being offline, the explainer would tell the user to go online or turn on Bluetooth
- E.g. upon having a few and often failing connections, the explainer would tell the user to "diversify" connections by adding more invite codes
- A progress bar (or some kind of "connections health indicator" element) that tells the user how "good" their connections status is, and whether we need user input
- Zero connections (and empty ssb-conn database) would be the lowest in the progress bar
- Nearly empty ssb-conn database (e.g. just 1 invite code) would be ~10% in the progress bar, showing that we need to diversify connections
- Connections with strangers and/or non-following pubs and/or empty rooms would be indicated as ~50%
- 2+ connections with friends would be indicated as "fully healthy"
- A button to switch to "advanced mode" connections screen
- Which is present day (September 2020) Connections screen
- When the advanced mode is turned on, automatic connections are not attempted and the user has to manually manage connections and staged peers
- Should be possible to switch back to "easy mode"
cc @woutermoraal @davegomez I got this idea when talking to a friend. As he was onboarding in Manyverse, he gave me this feedback about the Connections screen, and that he would prefer an easy mode where all that stuff is managed, and his input is needed only for the absolutely required steps. I think this is high priority because it doesn't take much work to make such easy mode, and would help users considerably. At the same time, it wouldn't remove users' freedom to manually control connections, if we allow the advanced mode.
I'm creating this issue assuming that I would build it, but if others want to collaborate on it, I'm happy about that too.