7 ms·
devise a way for a user to assign a fixed amount to several categories A slider for each category. When one slider is moved up by 1% of the total the others a
by cbr 12y ago
devise a way for a user to assign a fixed amount to several categories
A slider for each category. When one slider is moved up by 1% of the total the others automatically move down in proportion to their current value to collectively lose 1% of the total.
- roel_v 12y agoYes, this is the first instinct. But moving all of the others down/up is in the majority of cases not what you want. Imagine you have 100 to spread out over 4 categories. Let's say you start with setting them all to 25. You set the first to 33, then you want to set the second to a desired values except oops, the first one is now no longer 33. Basically in this scenario you have to way to set them all to a precise value without trial and error until you're close enough to what you want.
- cbr 12y agoStart them all at 0, and only invoke the scaling rule once the total is over 100%?
- roel_v 12y agoThis does work for the use case where you only want to set an initial distribution, but quite often you want to play with trading one option against another afterwards, e.g. spend more on housing and less on holidays, but not less on food or car payments. Basically when developing various scenarios you set an initial distribution (the baseline) and then make scenarios, variations on that baseline. (I imagine it's quite similar for people doing serious exercises with the tool in the OP, I've also written tools to assess investment options, that is similar too). (The above is a simple example of a personal budget which I always use to illustrate the point, my actual use case is usually something like 'spend more on nature protection and less on road maintenance, but don't change expenditure on social security'. It's easy to see how various political persuasions have some sliders they don't want to budge on, some they want to minimize, and others to maximize). Usually you need some form of 'reserve' account in your UI; i.e., you're 'spending' from a certain total, and as you increase/decrease some items, that amount is taken from / added back to the reserve. But then how do you guarantee people always spend everything (in some cases that is needed) without introducing modality (i.e., a dialog that says 'you need to spend everything' when you click 'next' or whatever). And sometimes you need a way to move units between accounts, without using the reserve as an intermediate store; plus you usually need a way to move exact amounts, which is hard to do with sliders. Another approach is something where you stick with the sliders you proposed, and add functionality to 'fix' certain ones, and optionally a way to indicate how much to increase/decrease the others. E.g., proportional to their current values, or distribute the amount equally, or something else, ... The problem with this approach is that it is natural for nerds, but almost instantly becomes unwieldy for 'normal' users. And in that case, the 'fuck it, let's do it in Excel' is better. If you're interested in this sort of things, I'd love to hear your thoughts or see mockups on other ways you think this could be done. I have talked about this numerous times but usually not with people who know something about UX or even care, beyond their project in front of them.