Let the user help solve their own problem
I wish we had a maps app like Apple Maps or Google Maps that let you order up a travel itinerary using public transit between two points, and explicitly pick the transit routes involved. Or, ideally, multiple sets of routes, for comparison.
Like, let’s say I’m in the Mission and I wanna get to the Metreon. One of the existing apps might suggest the 14R rapid bus, which arrives in X minutes and takes Y minutes, or BART, which arrives in Z minutes and takes W minutes. But it might leave out alternatives like taking the 49 bus to Van Ness Station and then taking the Muni subway from there.
Sometimes all the app’s recommendations are reasonable, but sometimes there’s one or more options that might be preferable—and I don’t know how preferable if the app isn’t showing me when the next 49 arrives, so I can compare to the 7 minutes for a 14R or 9 minutes (including a short walk) for BART.
What I want is the ability to add a specific set of routes to include in consideration, or even to force an itinerary using those routes. Let me say “49, KLMN” and have it include that series of routes among my options for comparison.
This is one instance of a general problem, which is products having only algorithmic solutions to the user’s needs, with no opportunity for the user to contribute to the solution.
The algorithmic-only model admits only one remedy: Improve the algorithm. But because no algorithm will ever be perfect, you’ll be playing this game of whac-a-mole forever.
This goes for the developer of each product, as well as for the user. I could try the same query in Apple Maps and Google Maps and the Transit app and whatever else, but as long as they all work this way, all I’m doing is holding up different slices of Swiss cheese next to each other and comparing their holes.
When the user can contribute to the solution, then there’s a chance that they’ll have a better idea of how to meet their own needs.
And these aren’t mutually exclusive. You could use the user’s input to improve the algorithm’s suggestions.
Email spam filters have had this for decades. The “Report Spam” and “Not Spam” buttons help train the filter. And we still have them because the filter will never be perfect (not just because spam is always evolving).
For the transit routing example, it’s a more complex problem (not a simple ham-or-spam dichotomy) and there are privacy considerations. Even so, helping improve the routing algorithm for everyone could be something people could opt into.
If they decline, maybe the algorithm could use training supplements kept locally. The user who provided a suggestion could still benefit, even if they’ve declined to share that (potentially personal/identifying) data with others.
And even just the ability to add a route combination to the list, even if I have to do it every time, would be an improvement over not having that and being limited to whatever options the algorithm picks for me.
Don’t assume your algorithm has to solve everything all on its own. Let the user help. They’ll be happier with a solution they helped create, partly because it may be better for their specific needs, and partly because they got to be involved.
January 16th, 2025 at 02:30:13
Open data regarding public transport might help here.
In The Netherlands this is already in use.
Schedules are shared ahead of time, Cancellations are shared when known, reroutes are announced when planned, Vehicle status is updated live.
9292.nl, google maps, apple maps use this for planning OV routes (which can include walk/bicycle ride to and from the first stop and additional time required for transfer)
OVinfo shows the current status of the vehicles while en route (if vehicle tracking works for that mode of transport)
January 16th, 2025 at 11:24:37
This is done in London as well.
Complain to your public transport provider and not Apple or Google.
January 17th, 2025 at 05:50:02
You might be interested in the ITA Software Matrix Airfare Search. It’s the software that powers Google Flights and on the actual search website (matrix.itasoftware.com) you can specify a fairly large set of restrictions to search through in the Advanced Controls section.
Want to get between two cities but don’t want the search to include routings with more than one layover? Add “MAXSTOPS 2” to the extension codes. Trying to get miles for status with American Airlines? Add “AA+” to the routing codes. Flying somewhere that will take a connection but you would rather have a layover in New York than Chicago? Add “X:NYC” to the routing codes.
Lots of stuff that lets you customize the route to your preference.