The Bus Route: Data Driven

Our morning routine is fairly straight forward – while the wife’s finishing getting the Monster ready for school, I typically head downstairs five minutes or so before the bus is supposed to arrive, take his backpack with me and start watching for it.  The idea is to be ready for when the bus comes around the corner, so we can take him out and get him on board as quickly as possible.

This morning, when I walked downstairs, I could hear a diesel engine idling.  Already having a good idea of what to expect, I opened the door.

The bus was waiting already.  7:43 AM, and it was waiting.

“Five minutes early,” said the wife to me, before we hustled the Monster outside and onto the bus, where last year’s aide was waiting for him.  She assured me that she had been reassigned to his route to ensure it went smoothly, and off they went.  And off I went to the office.

I had debated not going over to the Monster’s school – to trust that indeed, yesterday’s last email would have done the job.  Perhaps it speaks to some major failing, or some newly developing “Autism Dad’s Sense”, but after half an hour at my desk, I closed my laptop, got back in the car, and wandered over to the school.  I arrived around 8:50, and went inside briefly to verify that the Monster hadn’t arrived… and then went back out to my car to wait.

Just like yesterday, the busses from Durham trundled in slowly.  One bus made it before the bell at 9 AM, but two more came in about 5-10 minutes late.  And 9:13 – 13 minutes late – the Monster’s bus pulled down the street, stopping in position a minute later to offload the four kids on the bus.

You all know me well enough by now – back to the office, to send them an email.

I’m going to take a different tact this morning.  You all have access, according to the Baltimore City Public Schools website ( to real-time GPS and associated data. Tell me what time my son was picked up at our home and dropped off at Garrett Heights EMS.

Literally, twenty minutes later, the manager at Durham Bus Services sent me a dump of the AVL information from the bus’ computer.  (It’s actually interesting reading – it shows every maneuver the bus made, the speed at the time, what was going on, etc.)  Maybe he thought that the amount of data would shut me up.  I would assume that he’s not aware I’m a software developer when I’m not being some raving lunatic with my son’s providers, because it was very, very easy to immediately go through the CSV file he sent me and confirm the following:

  • Pickup and dropoff – it confirmed that the bus was actually lurking around the corner from our house for six minutes before it crept up on us, that he was picked up at 7:43 AM, and that he was dropped off at 9:14 AM at the school.  (It did make me feel a little better to find out that they’d been sitting outside our house for less than a minute when I noticed them.  I hate wasting others’ time.)
  • The current route has the bus leaving the yard an hour before the stop at our house, and it travels along the Beltway until it exits (inexplicably) far from our house and takes a round-about route to our stop.  It would be far faster for the bus to travel around the Beltway to closer to our house, which could cut down on the hour-long ride from the yard to our house.  (*hint*hint*)  It only took the bus a little over 30 minutes to return to the yard from GHEMS.
  • There were five stops between our house and GHEMS.  Since only 4 kids were on the bus including my Monster, that means 2 didn’t board.

I pointed out that their data confirmed, frankly, that there’s no reason why the bus should be late to the school – that if they picked up the Monster early, and only had six stops total, there’s really no excuse for being late on a day when it’s cloudy and the roads are dry.  Traffic was light – folks are getting away early for the long weekend – and there weren’t any accidents and no interference from the Grand Prix course downtown.  I haven’t gotten a response… but then again, the City’s transportation department seems to have left dealing with their vendor to me, despite my stating explicitly, and getting agreement from them, that I should not have to directly deal with their contractor.

But let’s dig deeper, shall we?

  • Five of the six bus stops on the Monster’s bus are on our side of Baltimore.  Literally.  The bus makes the five stops, then is going for a good distance before stop #6, which is almost around the corner from the school.
  • The bus passes multiple schools of various levels while it conducts this route.  Granted, our house is the closest to the Mount Washington School (pre-K to 8), but they do pass several other elementary schools on this side of town before the trek across town towards stop #6 and GHEMS.
  • Most importantly: if I map it on Google Maps, the route is doable in 54 minutes under ideal conditions.  Let’s assume 1 minute per stop, and we’re talking an hour.  Clearly, their route isn’t the most efficient, but c’mon, even Google Maps can do better if they can waste 30 minutes somewhere in there.

Now, if I can see this from looking at the CSV and using an easily accessible tool on the Internet, the folks down at the Transportation Office at Baltimore City Public Schools should be able to figure this one out without my help.  I don’t know, in the end, how these routes are actually charted.  For all I know, they give the bus company a list of addresses and it’s up to the bus company to figure out the route.  BUT, still, even Durham Bus Services should be able to figure this out the way I did.

The other thing that’s occurred to me is that the school transportation office clearly doesn’t want to fix the Monster’s problem – from their lack of response, I think they’d rather I just shut up and go away.  That’s not going to happen.

It’s Warrior Dad Time.

Leave a Reply

Your email address will not be published. Required fields are marked *