Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Progressive Interface / Experience [PIE 🥧] Design #43

Open
nelsonic opened this issue Jan 10, 2023 · 16 comments
Open

Progressive Interface / Experience [PIE 🥧] Design #43

nelsonic opened this issue Jan 10, 2023 · 16 comments
Assignees
Labels
discuss Share your constructive thoughts on how to make progress with this issue in-progress An issue or pull request that is being worked on by the assigned person priority-1 Highest priority issue. This is costing us money every minute that passes. starter A beginner-friendly issue that is a good starting point for a new person T1d Time Estimate 1 Day technical A technical issue that requires understanding of the code, infrastructure or dependencies

Comments

@nelsonic
Copy link
Member

nelsonic commented Jan 10, 2023

We are so used to terrible interface / experience design that we no longer see it. 🙈
But it's everywhere, both in the real world and especially in the world of Apps! 😢
e.g: https://uxplanet.org/9-bad-uxes-in-good-products-73be5418a4c1

The interface of an App is especially important for the person viewing it for the first time.
This is referred to as onboarding.

Going to try explain what I mean by "Progressive Interface / Experience Design" with a few examples.
Let's start by examining our MVP: github.com/dwyl/mvp as it currently stands: mvp.fly.dev
image

Superficially there isn't that much going on this page; there are only a handful of components. 💭
But if we actually observe it with a beginner's mind 初心, 🔰
it becomes immediately apparent that there is waaaaaay too much stuff on this page! 😖
it's confusing / off-putting ...

dwyl-mvp-way-too-much-on-initial-page

  1. Hi Friend! - This is a friendly greeting, but it detracts/distracts from the main objective of App. We should hide it until the person has performed their first action in the App, i.e. they have typed something into the <textarea>. 📝
  2. dwyl logo - anyone who doesn't already know the logo doesn't care about it, it's a distraction. ✂️
  3. Login button - this is relevant to existing an person but not really to a first-time viewer, at least not in the first 2 seconds of them viewing the page. The person viewing this page for the first time has Only One Job: input text.
  4. tags - displaying the tags field on initial page load is a distraction. A new person will scratch their head and ask: What is this? We don't want them to ever have to pause to think. 🏷️ ⏸️ 💭 🤷‍♀️
  5. save button - if there is no item.text in the <textarea> there's nothing to save. The button is a distraction. It should only be displayed once the person has typed more than one word of text.
  6. <footer> nav/buttons - These are an immediate distraction to the new person. None of these navigation buttons need to be visible if there are no items. 👎

This is what the App should look like:

image

It's deliberately barebones interface that is immediately obvious to someone viewing it for the first time.

After 1 second, we can fade-in the Login button and display a helpful message in the Top Nav:
image

Fading-in the Login button is a gentle way to encourage people to Login
and displaying the helpful greeting and suggestion is contextual.

Ideally we can display the Login button after T1s to let existing people login.
But then only display the "Hi Friend ..." prompt after they have typed something into the <textarea>

Gotta go be a parent for a couple of hours ... BRB!

@nelsonic nelsonic added discuss Share your constructive thoughts on how to make progress with this issue starter A beginner-friendly issue that is a good starting point for a new person technical A technical issue that requires understanding of the code, infrastructure or dependencies labels Jan 10, 2023
@nelsonic
Copy link
Member Author

@nelsonic nelsonic self-assigned this Jan 10, 2023
@nelsonic nelsonic added the in-progress An issue or pull request that is being worked on by the assigned person label Jan 10, 2023
@SimonLab SimonLab moved this to 🏗 In progress in dwyl app kanban Jan 10, 2023
@SimonLab SimonLab removed the status in dwyl app kanban Jan 10, 2023
@nelsonic nelsonic moved this to 🔖 Ready for Development in dwyl app kanban Jan 10, 2023
@nelsonic nelsonic added the priority-1 Highest priority issue. This is costing us money every minute that passes. label Jan 17, 2023
@nelsonic nelsonic moved this from 🔖 Ready for Development to 🏗 In progress in dwyl app kanban Jan 17, 2023
@nelsonic
Copy link
Member Author

nelsonic commented Jan 17, 2023

Busy updating the Figma design/layout
to include the smallest increments in interface/experience and micro-interactions:
https://www.figma.com/file/WrpkKGJNYZbeCzMRDVtvQLbC/dwyl-app?node-id=0%3A1&t=X4yRwHttNxORAxyP-1

image

My goal is to define the first 30 interactions/screens in the interaction of the MVP App.
You're welcome to follow along if you like.

@nelsonic
Copy link
Member Author

Prepared the first 12 screens: 📱

image

image

Will continue with this tomorrow morning. 👨‍💻

@nelsonic

This comment was marked as outdated.

@seaneady
Copy link
Contributor

Screenshot 2023-01-20 at 3 50 10 PM

How do we know when the user has finished typing?

@nelsonic
Copy link
Member Author

nelsonic commented Jan 20, 2023

Good question. There are event listeners that allow us to detect when a key is pressed. If no key is pressed for say 3 seconds and the text in the <textarea> is more than 20 chars (so not just “blah” or “asdfgh” - uncreative test input) then show the “Save<button>.

@nelsonic
Copy link
Member Author

3 more screens:

image

This was referenced Jan 21, 2023
@seaneady
Copy link
Contributor

image

I'm still getting an internal server error. Anyone else getting the same?

@nelsonic
Copy link
Member Author

@seaneady please open an issue in the main MVP repo with this bug report this is a “P1” that needs to be investigated with the highest priority. We can do a Zoom-pairing session if you want to watch the process, it’s a very good thing to understand a bug-fix from start to finish. Thanks.

@seaneady
Copy link
Contributor

Done on the above. I would definitely be interested in watching the fix over zoom, thanks for the suggestion.

@nelsonic
Copy link
Member Author

This is what I think would make a good Tagging UI/UX:

image

Direct link to Figma page: https://www.figma.com/file/WrpkKGJNYZbeCzMRDVtvQLbC/dwyl-app?node-id=246%3A2

@seaneady as the person with the freshest eyes on the project and your UX-focussed learning,
do you want to go through this UI/UX tomorrow after our Standup Zoom Call? 💭

Obvs everyone else is invited/encouraged to provide feedback. 🙏

@seaneady
Copy link
Contributor

@nelsonic I would definitely like to go over this with you after standup. I'm taking a look at Figma now and taking notes.

@nelsonic
Copy link
Member Author

@seaneady thanks very much for your feedback on the Figma doc both in issues and on our Zoom call. 🙏
And thanks for helping me to respond to: dwyl/app#299 with your Android expertise. 👌

@seaneady
Copy link
Contributor

Only a pleasure @nelsonic.

@nelsonic
Copy link
Member Author

nelsonic commented Feb 6, 2023

Keen to work on the auth screens/UX next ...
Anyone have any preference for what they want to see next in terms of Figma wireframes?

@nelsonic nelsonic added the T1d Time Estimate 1 Day label Feb 6, 2023
@nelsonic nelsonic changed the title Progressive UI/UX Progressive Interface / Experience Design Apr 24, 2023
@nelsonic nelsonic changed the title Progressive Interface / Experience Design Progressive Interface / Experience [PIE 🥧] Design Apr 24, 2023
@nelsonic
Copy link
Member Author

nelsonic commented Aug 9, 2023

"Don't focus on features, focus on how people learn." ~ Alan Kay

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discuss Share your constructive thoughts on how to make progress with this issue in-progress An issue or pull request that is being worked on by the assigned person priority-1 Highest priority issue. This is costing us money every minute that passes. starter A beginner-friendly issue that is a good starting point for a new person T1d Time Estimate 1 Day technical A technical issue that requires understanding of the code, infrastructure or dependencies
Projects
Status: 🏗 In progress
Development

No branches or pull requests

2 participants