So I'm building a page in a mobile app to find "things".
- If you're using the app you are already familiar with the "things"
- You've clicked "Find Things" and so you're expecting, as a minimum, to type something into a box (to tell the app what things you want to find)
- You're a busy person and you don't want to have to think
Each thing has a name and a location. The one is, to some extent, meaningless without the other. What I want is that if you enter a name or a part of a name then you get a list of things whose names match. If you enter a place then you get a list of things sorted by distance from that place.
I'd like the search function to be as unobtrusive as possible and to my mind that means that the user shouldn't have to tell me whether they've entered a name or a place.
The problem I have is that sometimes the name of the thing is the name of a place. When you type in that text expecting to search in the context of it being a place I currently have no way of letting you override the context of it being the name of a "thing".
The question is do I catch only that scenario - as in this first set of mockups…
I like this because the intention is pretty clear and the UI doesn't contain elements to muddy the intention unless we're already in a situation where we might need to make additional decisions.
But if there's a use-case or an incorrect result state that we haven't accounted for the user could find themselves stuck - I can't think of it but that doesn't mean that it doesn't exist.
So we could add a toggle that allows people to tell us what they want to do - as in this set…
I worry that there's more to parse on this screen but also I wonder if it makes the fact that you can search by address more discoverable.