The example for maps is not a "hyper specific use case":
"The process you WANT: pick your start and end. now start searching for places in between. Your start and end are saved.
When you find someplace interesting, add it to your list. Keep doing that, keep searching and adding."
That's a common use case. The problem with Google maps (and the problem with a lot of modern software) is, as you say, it makes a lot of guesses.
The definition of a good user interface is "to meet the exact needs of the customer, without fuss or bother"*
Google Maps is great for finding directions to a very specific place. But after mapping those directions, doing almost anything else destroys that route. If I have to (and I do) open multiple map tabs, or repeatedly enter the same route info after making a search (if I'm on a phone) it is not a good UI.
> The process you WANT: pick your start and end. now start searching for places in between. Your start and end are saved. When you find someplace interesting, add it to your list. Keep doing that, keep searching and adding
Am I missing something - this use-case is already supported! You choose start & endpoints, then your start the trip (which "saves" them) - you can now search and add as many waypoints as you desire
That's what I was thinking, I do that all the time.
For example, do a map of San Francisco to New York City. Now you want to visit the world's largest ball of twine, so you add a waypoint, and start typing "Ball of Twine" and a drop-down will appear with a few choices, pick the one you want and it'll add to the map. You can re-order them as needed to optimize your route.
You still need to know the name or address of the waypoint you want to add, but that's the case with paper maps and is a good use of browser tabs to search for it.
I've been using Google Maps since it launched, and had no idea this is how it works!
One important factor in a good UI is that it is discoverable! If you build an amazing feature but forget to inform the user about it, you've wasted the work.
I discovered this by myself - I mean, the search button is right there! I must have been in the middle of a trip & searched for something, which pops up an "Add Stop" button. I think it's pretty discoverable.
I'm glad you discovered this, but let's look at a strawman grandma: "the search bar is where you type where you want to go, therefore if I search, it will turn off my current navigation / reroute my destination to whatever I am searching for".
The above is not a foregone conclusion, but it was how I thought until I read your and parent's postings about it, and I'm a techie. For every 1 techie that doesn't know about a feature, there are 1,000 users (or something like that).
I would posit that the discover-ability difficulties are present whether someone is in a TUI or a GUI.
I'm specifically referring to the Google Maps mobile app - it doesn't have a search bar, but has buttons that come and go depending on your current context. If a button is visible in your context, you can bet it works in that context. As an example, the layer, compass and search buttons are present when you're not navigating, but once you start, the layer and compass buttons are replaced by the audio chatiness button. The search button is still present, and the implication is that its usable in my current context: that's great discoverability in my book.
I just recorded a two minute video me of me trying to do this. Maybe it will help you understand why people like Gravis (and myself) are frustrated. The video is at http://paste.stevelosh.com/1983.webm but it's a little blurry, so I'll narrate it.
I go to `maps.google.com`. The page loads a search box, with my cursor focused inside it. Then it unfocuses the search box while some other boxes pop in. Then it refocuses the search box. Is it done thrashing? Can I type yet? I wait for a few seconds. I would have already entered in my query by now in 1983. I sigh. This bodes well.
I guess it's as done as it's ever gonna be. I search for "rochester ny to montreal qc". I wait for the screen to load. It finds me a route, which is actually good. Step one done.
Now I want to find a restaurant somewhere in the middle. Let's try just browsing around. I find somewhere roughly in the middle — Watertown seems like a good place to stop.
I zoom in on Watertown. I wait for the screen to load. I look around the map and see some restaurants, so I click one. Now I want to read the reviews, so I scroll down to find the "See All Reviews" link. My scroll wheel stops working after I scroll more than an inch or two at a time, until I move it out of the left hand pane and back inside it. I sigh, wiggle my mouse back and forth repeatedly to scroll down and click on the link.
A whirl of colors — suddenly the map zooms in on the location. Why does it do this? I wanted to read the reviews, not look more closely at the map! Now that the map is zoomed in, a hundred other points of interest are suddenly cluttering the map. I wanted to read reviews about this restaurant, and suddenly 3/4 of my screen is filled with text about other places. I sigh.
I ignore the garbage now cluttering most of my screen and read some reviews. This place seems fine. I click the back arrow, then click Add Stop to add it to the route. I wait for the screen to load. Suddenly my screen whirls with color and zooms out, losing my view of Watertown. I sigh.
My trip is now 8.5 hours instead of 5.5, because it added the new stop at the end. AlphaGo can win Go tournaments, but I guess it would be too much to ask for Google to somehow divine that when I add a stop in the middle of a 5.5 hour trip, I might want to visit it on the way by default. I sigh and manually reorder the stops.
Let's also find a gas station somewhere before Montreal, because I like to get gas before I get into the city so I don't have to deal with it once I'm in. Cornwall seems like a good place to stop.
I zoom in on Cornwall. I wait for the screen to load. I don't see any gas stations markers, but that's fine, there's a button that says "Gas stations" on the left! I click it and the screen goes blank. I wait for the screen to load. I've suddenly been whisked away to downtown Montreal instead of looking around where I'm currently centered on the map. Guess I should have read the heading above the buttons first. I sigh.
I click "back to directions". I wait for the screen to load. The map does not return to where I was previously, it just zooms to show the entire route, throwing out my zoomed-in application state. I think back to Gravis' tweet of "gmaps wildly thrashes the map around every time you do anything. Any time you search, almost any time you click on anything" and I sigh.
I rezoom in on Cornwall. I wait for the screen to load. The gas station button didn't work, but surely we can search, right? I don't see a search box on the screen, so I roll the dice and hit Add Destination. This gives me a text box, so I try searching for "gas stations" and pressing enter. This apparently didn't search, but just added one particular gas station to the route. It also zoomed me back out, throwing away my previous zoomed in view.
I rezoom in on Cornwall. I wait for the screen to load. I notice the gas station it picked happens to be across the US/Canada border from the route. That clearly won't work. I sigh and remove the destination. This zooms me back out (I wait for the screen to load), throwing away my previous zoomed in view.
I rezoom in on Cornwall. I wait for the screen to load. I click Add Destination again and this time notice that when my cursor is in the box, there's a magnifying glass icon — the universal icon for "search" — right next to the X icon (which will surely close the box). It even has a tooltip that says "Search"! Aha! That was well-hidden, UI designer, but I've surely defeated you. I click the magnifying glass icon and it… closes the input box. I… what? I sigh, loudly. It has also zoomed me out, throwing away my previous zoomed in view. I wait for the screen to load.
I rezoom in on Cornwall. I wait for the screen to load. Okay, apparently I can't search to try to find routes. I guess I'll resort to browsing around the map again. I notice what looks like a gas station called "Pioneer" and click on it. Cool. But then I realize this is on a bit of a side street. Surely I can find a gas station along the main road. Let me just cancel out of this location by pressing X.
My entire route is completely gone. All that time I just spent, flushed down the toilet. To add insult to injury: this is the one time that it didn't automatically zoom me out and lose my view of the map. It just threw away all of my other state.
You know, the back button works in Google Maps and does exactly what you might think it does: take you back to the state you were just in.
After you accidentally lost your route, you could have just used a built in feature of your browser to get yourself back to where you were.
EDIT: The rest of your post was entirely accurate. Google Maps is a slow, stuttery mess on literally every platform I've ever used it on recently. At least the back button works...
I guess years of using single page Javascript webapps where the back button is a complete shitshow has trained me to not even consider trying it. I'm impressed it actually works on Google Maps.
Why do you think that use case is that common? And why do you think google maps should elevate that particular use case above other competing use cases?
I hadn't even thought of this specifically, but after it was mentioned in the initial post I realized just how much that is my use case most of the time and how often I am fighting with google maps to accomplish what are relatively simple tasks like adding an additional point along a route. If you are trying to add multiple additional points on a route it gets even worse.
This is all much worse on the Android app as well, where it makes the assumption that your use case is to get from where you are right now to somewhere else. Trying to get from point A to B, where neither is where you are now, is unnecessarily frustrating.
> This is all much worse on the Android app as well, where it makes the assumption that your use case is to get from where you are right now to somewhere else.
That strikes me as a fantastic assumption. I wonder what percentage of routes involve the user’s current location? I bet it’s high!
I can't reply to eitland for some reason, but yes, I get both those boxes.
I open the app, click my destination, and then click "Directions". The very next thing is both of those boxes, with "current location" defaulting to the start location. I can then change that if I want.
It optimizes for my most common use case, but allows me to do it otherwise, too. I don't think I could design this better.
On android I just (from london) typed "Washington DC to New York" and it instantly popped me up directions for the other side of the world, with two editable boxes.
That is 9 or so manual steps and it doesn't become clear until step 7 or so that it can even be done! There's nothing intuitive about this and when someone knows how it works that must be because they've either learned it from someone or kept on experimenting with it until they figured it out.
compare this to the original that they "simplified" away:
- Open app in navigation mode (step 1)
- it shows two boxes, where you are going from and where you are going to
- fill said boxes. There is a button next to from to choose current destination. (step 2 and 3)
- click get directions (step 4)
Compared to the current "simple" version it is immediately clear and there are fewer steps and less things you need to know.
No it was literally 4 actions (3 if you accepted the default starting point) and the the same amount of typing the current solution. I didn't summarize anything.
1. Open app in navigation mode (there was a separate icon for that)
2. Accept default start or type if you don't want the default.
3. Point at destination
4. Type destination and enter
Besides it was immediately obvious when I opened the app for the first time on my first smartphone, it just made sense and still does when I think about it.
I exaggerated wildly and can get it down to 5 steps. It is by definition discoverable since we have all discovered it, but I hold that it is still not obvious or self-explanatory in any way.
It's immediately obvious to me how to use it now. And if you accept the default start then both solutions are still the same.
Gmaps right now works like this:
1) Open App
2) Click search box
3) Either select a destination from the list that pops up or start typing and actually search. Once that's done the route pops up with your travel time.
4) Click start
If you want to change your start:
4) Select the starting location
5) Search or select from the list that pops up and your route and travel time are show.
6) Click start
It's not rocket science. It's all obvious from the UI.
This is exactly what I usually want to do with maps. I have a route I want to plan, and I want to do more than one thing along my route, or see what else is in the area. It's futile in Google Maps.
I see no reason that supporting this thing that old mapping software used to support would elevate it "above" other use cases. If you just want a single route, you do one search and you see the result and you never click the "add" button, no problem.
I should dig out an old Delorme Street Atlas CDROM and install it in a VM, to get some sense of how many clicks it took to do the things I used to do. I don't think it was many. It was definitely pickier about address entry; that's one place Google has absolutely improved. But aside from that, it was way more powerful at pretty much everything else.
Not trying to just nitpick, but if we assume that the Google Maps use research and data from users when planning features then the feature you're after may actually not be very common.
And your answer to someone asking "Why do you think that use case is that common?", your first line literally just talks about your use case from your point of view:
> This is exactly what _I_ usually want to do with maps. _I_ have a route _I_ want to plan, and _I_ want to do more than one thing along my route, or see what else is in the area. It's futile in Google Maps.
I'm not saying that wouldn't be useful, it's just that maybe not that many people need it... I guess it was built with the idea that you would just open more tabs to search other things?
> if we assume that the Google Maps use research and data from users when planning features
Based on what I've seen from Google product design, this is a pretty bold assumption.
While Google has access to unfathomable amounts of data collected from users, it's more than happy to eschew that if the data conflict with higher-level product or company strategy decisions, which generally are much less motivated by raw user data,
I have not conducted a survey, but they strike me as reasonably common desires.
On a 4-5 hour road trip, I want to take the kids to see a castle or something somewhere around 1/2 to 3/4 of the way. Even just wanting to have lunch somewhere other than Hilton Park or Newport Pagnell would be such a use case.
I have also wanted it for visiting someone - I'm going to their house, what is my most convenient option for buying some wine and/or flowers on the way?
I have wanted it when I've been away from home and have a big time gap between finishing my planned activities (or having to check out of my hotel) and my train or plane departure. What is the best way to spend a few hours that is anywhere on the route from here to the airport/station.
I think there is an anti-car bias in Google Maps and similar services.
Everything is oriented around the model of "reserve a hotel", "reserve a flight", like you really are on rails like a European.
Today's online maps aren't up to the freedom that motorists have to make small deviations from a route. For instance if I drive from here to Boston I am likely to stay at a hotel en-route, that could be anywhere from Albany to Worcester. I don't have strong feelings about where, but it might be nice to find a good deal or find a place that I think is cool.
Thus I am interested in searching along a tube around my route, not clicking on cities like Springfield and running a search at each one.
Google is in the directory business. Ultimately they don't want us to make the most informed decision, they want us to "feel lucky" and trust The Algorithm. Because the more we "feel lucky", the bigger the fear of businesses to get punished by The Algorithm for insufficient ad spending.
That's why desktop web search is less valuable to Google than mobile web search, mobile web search is less valuable to them than map search, map search is less valuable than voice search and voice search while driving is their holy grail because there the ranking game is completely winner takes all. A second page hit on desktop has a better chance at getting traffic than the second place overall in voice while driving. (And those sweet "while driving" hits will almost always be followed by actual business transactions, whereas the old desktop is just a mostly worthless page view)
Afaik Google is far from allowing businesses to directly bid for that coveted number slot (it would ruin their ability to keep the balance between attracting advertisers and attracting eyeballs), but the result is even better for them: when businesses "bid by proxy", via buying other ad products in hope/fear that it might be a factor in the ranking they don't just get the winner's money. I'd absolutely say that drivers are very high on Google's audience priority list, it's just that nobody on that list is a customer.
My "big time gap" example is explicitly a non-car use case.
The visiting example for me is normally a non-car use case. If going by car, I would probably pick these things up close to home and carry them all the way.
Wouldn't agree with regard to Apple Maps being "anti-car" when there isn't even a bike mode. Walking- and car-mode are unusable for cycling, with car-mode taking bad routes for cyclists and walking mode giving directions way too late, when a cyclist is already on/past the crossing.
Search for destinations along your route is (finally) a feature in the gmaps mobile app. It isn't in the web-app. Apparently Google agrees that it is a desirable feature. Why does the UI-limited, small screen experience surpass the rich desktop experience?
You can do it on the desktop app, via the add a stop feature. If you add a stop and then enter a search term ("coffee shops"), you'll see matching results along your route. (IIRC it doesn't show you the added travel time like the mobile app does, though. Maybe that's what you're referring to?)
Finally? I've been searching for things along my routes since at least the 2017 Eclipse as that's the first time I can remember using the feature on my trip from BC to Oregon.
Because if you plan to travel far you often want to plan a stop along the way to eat, use the toilet and refill anf maybe rest a bit in some hopefully interesting place.
Because it's a map. That's what you do with maps. You browse them, you study them, you mark them up.
I use Google Maps almost daily and this is also my complaint. It's not a hyper-specific use case. Google Maps are good for navigating from point A to point B when you are sure of both, but they suck at being a map. For instance, lack of always-on street names and weird POI handling makes them problematic to use when you want to explore the area you're in.
I disagree. That's what we used to do with a map because we did not have information available at our fingertips.
We would study the map ahead of time, based on the map figure out our plan of action by either making mental notes or notes in notepad, or notes on a map and eventually execute our plan based on the information we have selected.
We no longer need to do that. We can decide "I want to do something around X" , go to X and when we want to do something specific ask maps "Where can I find Y around X"?
Ability to drop pins removed the need to study map to complete most of the tasks. When one stumbles upon something interesting while reading a book, watching a show, scrolling through eater, one can drop a pin on a map so next time that person is in the area the pin is there!
Repeatedly searching and dropping pins in Google Maps is like eating your dinner by pulping it and drinking through a straw.
Studying a map ahead of time and marking it up (on the map itself, as we did with paper maps and dry-erase or permanent markers) is a more efficient interface. There's this forgotten principle in UI that users can mentally filter out noise and focus on relevant parts very good; that's what our sense of sight is optimized for. Having to actively search whenever you need to know something is an inferior experience, both in terms of efficiency and because of missing context.
(Also, dropping permanent pins is AFAIK impossible in the Google Maps proper; it's a feature of "my maps", which is hidden somewhere and has weird interactions with Google Maps.)
> Repeatedly searching and dropping pins in Google Maps is like eating your dinner by pulping it and drinking through a straw.
You are thinking about it as a synchronous workflow. Study map->create a plan->execute a plan. This workflow was the only workflow because it was impossible to execute a search when needed.
Google maps is optimized for a modern workflow. "I'm here. I need X. How do I get there?" With pins that workflow is asynchronous.
For example, I use pins for restaurants. I find/read something about a place I want to try at some point. I drop pins. Next time when I happened to be in the area I see the pins that I dropped. It may happened to tomorrow or three months from now. My alternative is yelp with its sync workflow - search and analyze results of a search or rely on my memory of what place should be around where.
That's what Google's "My Maps" does. It allows you to mark up a map. I've used it for planning trips frequently to mark places of interest and then used that map to plan my trip using regular ol' Maps for the turn-by-turn.
Because it's so simple. I've been wanting it for YEARS. What's more simple than planning a trip? What else do you need a map for if you're not planning to go from point A to point B?
I hate when I need a restaurant or gas station ALONG MY ROUTE and yet years later no maps have this ability. It's insane.
Selecting/Creating waypoints has been a digital mapping-feature of every service/tool I have used since digital mapping/navigation became a thing. From garmin hand-held off-road GPS topo navigation systems to units used for fishing to hiking/biking.
It has been a cornerstone of digital navigation since the things were invented. To claim that it's an edge-case ignores history and instead highlights how _you_ use the tools.
IMHO it was more obvious that Google wants to you 'actively search' for $waypoint item while enroute instead of pre-planning. "hey google, show me restaurants near me"
That gives them a better way to monopolize on advertising and forced $ from companies in order to stay relevant and appear in those type of searches.
Search along route is surprisingly hard to get right. Results near to the route geographically are not necessarily near in terms of disruption to your route (other side of a river, wrong side of a highway etc.)
To add to the "things are getting worse" narrative, we implemented this properly back in the days when sat navs were still relatively exciting things. Last I saw the algorithm was to do a lightweight route plan through nearby search results and find the ones that made the smallest difference to your arrival time at your final destination. I don't think the google maps search API does that yet, although I haven't worked in the area for quite a while.
The Android app will show you how much each search result along the destination will add to your route. It also shows the gas prices if you're looking for fuel.
That's how I plan virtually every multi-stop journey. And adding this functionality would not take away from the usability of gmaps for single-leg journeys with no stops.
Because especially on mobile, screen space is insanely valuable, and if you want to show new information from the new area the map has been moved to you often need to remove "stale" information.
it wouldn't, which is why the complaint in these tweets ("drag the map even a pixel? it erases all your results and closes the infobox you were looking at") is, in fact, not something that happens.
Making guesses isn’t a problem. The ideal information software requires no interaction at all! You open your maps app in the morning, and it instantly brings up how to get to your next calendar appointment. If you’re making a long drive, it automatically suggests a gas station along the route. The more our software can infer, the better!
Bret Victor has a great essay on building information software called “Magic Ink” [1]:
> Information software, by contrast, mimics the experience of reading, not working. It is used for achieving an understanding—constructing a model within the mind. Thus, the user must listen to the software and think about what it says… but any manipulation happens mentally. Except possibly for signaling a decision, such as clicking a “buy” button, but that concludes, not constitutes, a session. The only reason to complete the full interaction cycle and speak is to explicitly provide some context that the software can’t otherwise infer—that is, to indicate a relevant subset of information. For information software, all interaction is essentially navigation around a data space.
Of course, guessing poorly is a problem, but that’s an issue with execution.
You can search along the route if you are navigating, however I agree it could be improved in that you don't get to see any details of a place or add it to saved places (you either add a stop or don't). I don't think Maps is bad for this reason but I agree it is possible to improve.
That's a common use case. The problem with Google maps (and the problem with a lot of modern software) is, as you say, it makes a lot of guesses.
The definition of a good user interface is "to meet the exact needs of the customer, without fuss or bother"*
Google Maps is great for finding directions to a very specific place. But after mapping those directions, doing almost anything else destroys that route. If I have to (and I do) open multiple map tabs, or repeatedly enter the same route info after making a search (if I'm on a phone) it is not a good UI.
*https://www.nngroup.com/articles/definition-user-experience/