-
Notifications
You must be signed in to change notification settings - Fork 275
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
How to handle optional features (UI/UX and convention) #603
Comments
Thanks for starting a discussion about this :-) One of the reasons I like IHateMoney is that it has a clear and simple user experience. What you're proposing makes me actually wonder if we should have an optional screen to enable special features, at project creation. Let me expand on this :
This is kinda like the so called "first user experience" that exists on phones : the first time you start it, it asks you a set of questions to ease the use afterwards. On a different topic, once we decided the list of questions we should ask ourselves when adding a new feature, we might want to create a new issue / pull request template to add these automatically, so that contributions are encouraged to answer these beforehand. |
I have mixed feelings about this "first user experience" idea: it's nice because, once the project is created, it gives you an "efficient" UI that has just the options you wanted and you don't have to think about all the options. But it deviates from the "clear and simple" principle: there are many different combinations of possible UI and feature sets, which becomes hard to test and maintain. In fact, simply having per-project settings like we do now already has this drawback. You could even say that simply adding features has this drawback :) I guess my priority order would be this:
|
And yes, once this discussion converges, we should definitely document it somewhere! The documentation and github templates look like good places. |
So, to move forward on this one, I believe we could take the easy way : features are classified between main and extra features. Extra features shouldn't be displayed to the user unless they ask for it. We could add some UX hints to show their presence. What do you think? |
History can be moved in the dropdown menu at the top right then, as an extra feature. |
Historically, I think that the only optional feature was per-participant weights. We now have several additional optional features, and this is something new for ihatemoney: we may have to think how to best handle current and future ones, especially regarding consistency. This impacts the UI/UX and the way features should be integrated (enabled by default or not, always have an option in the settings...)
Here is a list of current optional features:
And a list of work-in-progress optional features that may be merged at some point:
Here are some general questions that I think we should answer:
Obviously it's difficult because these are contradictory goals (easy-to-find features while keeping a simple UI/UX).
In this respect, the way @JocelynDelalande added support for weights in #131 is a great example: it does not clutter the UI if you don't use it, but it's still visible if you are looking for it (the
(x1)
in the list of participants). In addition, it does not require any settings to enable/disable it.I believe that we can make current features more consistent by answering these questions, either here or whenever a new feature is proposed: this could take the form of guidelines in the contribution documentation.
The text was updated successfully, but these errors were encountered: