One of the companies I work with, GuidedTrack, is a simplified programming language that allows subject matter experts to create web applications, interactive slideshows, and experiments with no prior coding skill. Since it's all done through text rather than a GUI like Qualtrics or Google Forms, it speeds up program construction and gives it some extra power.
If someone starts using it with prior coding experience in any language, they probably already understand core concepts like "use indentation to build on or modify what it's indented beneath." They already know that fixing error codes is just a part of coding and not something to be distraught over.
People with no prior experience coding have an entirely different set of mental models. They come to us having used drag-and-drop building platforms like Wix, Typeform, Powerpoint, and Google Forms. They see text as a vertical sequence of paragraphs with no indentation. If they are trying to operate GuidedTrack in the way they work with Typeform, they experience frustrating Failure stateFailure state
Index
Intentionally design for failure states
Difficulty Matching
s.
GuidedTrack is incredibly easy to operate once you build the appropriate mental models.The initial onboarding experience is there to show low level users how they are capable of accomplishing their goals using the app. See: Expectancy Value TheoryExpectancy Value Theory
Products are fundamentally voluntary, and Expectancy Value Theory gives us a way to understand which goals people will pursue and what makes them more likely to be successful. This theory is one of the most straightforward ways to Make an experience the user wants.
Translated into app terms:
The user believes that they are capable of performing actions within the app
The user believes that their actions in the app lead to goal achievement
The user believes that the app will h....
However, we can't ignore that User skill level increases over timeUser skill level increases over time
Imagine that you have just started to use Excel or Photoshop. Both of those apps have an insane amount of functionality, and it would be unreasonable to expect the user to understand what is possible and how to do it immediately. Over time, with continued User Involvement, they will simply grow more comfortable with the app.
The most successful app adoptions come from a project, because they give the user a reason to increase their skills. As they work on their projects, they'll bump up agai... and eventually they'll be as skilled as those with prior coding experience. A UX geared exclusively towards low-level users may have trade-offs in functionality and efficiency for high level users. If we ignore those high level users, then we'll lose them.
This is where the principle of Difficulty MatchingDifficulty Matching
The emotional experience of Flow
A flow state is often characterized as optimal human experience. It’s an experience where you are fully focused and energized in what you’re doing, often experiencing a high level of creativity and losing track of time.
The general emotional experience that is being described here is that when a task is too challenging for a user’s current level of ability, they’ll get frustrated and give up. Alternatively, when the task is far too easy, they are likely t... comes into play - we need to make sure both low and high level users are given experiences that match their ability, and we need to increase the user's skill over time through Continuous onboardingContinuous onboarding
Horizontal products like Notion, Airtable, Excel, and Obsidian are all powerful/flexible and require learning and expansion of use cases over time to wrap your head around them. Given that, why do they only teach people how to use the app for the first few minutes?
It's not just horizontal products though. Continuous Onboarding applies to most apps that aren't just "open, press a button, and close." Are you continuing to add features over time that would benefit users that are more than a mo....