(I work on Citymapper's routing.)
(I work on Citymapper's routing.)
Head out the office, pick a spot to get to (say a meeting in another part of town) and see if you can figure out which route is actually quickest. It's seldom the one suggested. Trying to figure out the real trip length for upcoming departures for a number of travel options is a head-wrecker.
I use CityMapper frequently, and I love it. But this 'feature' is infuriating!
On this question, there's a balance between possible maximum speed, and reliability. If I want to go to point B, the quickest possible route will often be made by stringing together a serious of improbable connections. For instance, the route could rely on taking three infrequent buses, with little leeway for transfer between one and another, on the assumption that they won't be slowed down by traffic (or just slow customers, stopping more than normal, etc). But if an app sends me along this route, and one of the buses is behind schedule, and I miss the connection, that then becomes a big problem. So there definitely is good sense in prioritizing frequent bus routes to some degree.
Even when I know the route, I still (always) check it on my phone the very moment I leave the house, because I expect to get up-to-date information. If I can go to two different bus stops, I don't want to get an average! I just expect you to tell me which bus is coming first — right now.
The only situation when I'm checking a route ahead of time is when I need to know when to leave the house. For this I use Google Maps' "Arrive by" option, so even when I don't take the route immediately, I still expect to see exact times.
You realise that there is some lag in the system, right?
A small lag in data collection and transmission, a small lag in publishing the data via the feed (this is stated as 30s) and TfL cache the data points for 30s. Then you have the ingestion and processing lag that Citymapper introduce before they get it to you and display it on your screen.
You can estimate a lag of greater than 1 minute, pushing 2 minutes if you were unlucky that another CityMapper user nearby potentially requested the same data just before you and you're now seeing TfL's cache.
If you have a bus frequency of 7 minutes we're actually talking a lag of around 28% of the worst case wait time for that bus.
This experience would vary so greatly in different parts of the city (density of CityMapper users), that it would corrode your trust of the info.
Until that lag can be almost eliminated I think they're doing the right thing by choosing values based on average frequency and average wait time. The consistency means that almost everyone is treated to a similar experience, and though it is not highly accurate it is highly consistent. People can, and do, trust a highly consistent experience.
And yes, I live in London and use CityMapper a lot, and I've also played with those TfL feeds and experienced the real world lag in the data for bus/train arrivals, and bike hire data. Those data streams, when you walk out onto the street... they are only an approximation of what you really see outside.
You can cache times as ETA, and even in the worst case when an unexpected change in the schedule needs 2 minutes to propagate, it's still an improvement for all wait times longer than 4 minutes (i.e. all wait times that matter).
I guess the problem with doing this automatically for queries for journeys starting 'now', is that people will often just look up general journey times with the default options (eg the current time).
The thing that's so infuriating is that Tube Deluxe gets this perfectly correct. So I need to keep two apps.
I live, literally, next to the Langdon Park DLR station. Any time I use CM to get directions to the center, it will either send me to the Jubilee line, or to the Central line, which is fine. But, it always sends me to Stratford first, which is in zone 3. Why? I know, it's faster (and cheaper) to either go to Canarry Wharf, and to a 2 minute walk from the DLR station to the tube for the Jubilee line. Or go to Bow Church DLR and walk to Bow Road tube, and then transfer at mile end to central line.
Basically it seems, CM tries to avoid walking as much as possible, even if that means taking a longer&more expensive journey. Can you guys do something about that? If nothing else, an option that let's me specify that I don't mind a bit of walking.
Here's how I use Google Maps:
As I am putting on my shoes to go out the door, I look at the event I'm going to in Google Calendar. I click through to the location in Maps, and click directions on the pop-up bubble.
I walk out the door. Five seconds later I'm at the road, and need to know whether to turn left (to the station on the line to Victoria) or right (to the one on the line to London Bridge / Canada Water). I need to know my actual arrival time (barring unexpected problems) for each route, departing NOW.
If I'm doing advance research (when do I need to leave?) I almost always do so using Google Maps on my laptop, not an app on my phone.
If I don't use Google Maps, it's only because I'm using JourneyPlanner.org / PubTran, to deal with those annoying occasions that Google Maps doesn't know about engineering works (e.g., this week: no trains to London Bridge!)
http://journeyplanner.tfl.gov.uk
It gives you a selection of routes to choose from, with times.