My Life As A Blog

The Age of the Train

with 5 comments

Over the last few weeks, I’ve been part of a team from Microsoft, Conchango and National Rail Enquiries building a proof of concept.  On Wednesday 1 October, at the TechNet event in London at which Steve Ballmer spoke, we showed a live demo of some of what we had built in the three week proof of concept.  The concept we proved is the use of National Rail Enquiries services in multiple channels.  National Rail Enquiries already have a very popular Vista gadget available that allows you to see live train departure information on your desktop.  Prior to starting the proof of concept, we held a two day architectural workshop to establish what services and applications rail users need to make their experience of using trains even better.  The priority sample applications were an Outlook Add-In, a Windows Mobile application, a new way of presenting live train information on the web and an internal dashboard application.  Those of you who attended the TechNet event on Wednesday will have seen the first three of these applications in action.

The Outlook Add-In enables users to book travel time.  Most of us have appointments in our Outlook calendar.  Some of these appointments require travel.  The add-in lets you select the appointment and plan your train journey to and from the appointment.  When you select the trains you want to take, it books time in your diary automatically – in the detail of this travel time there is information about the selected journey and an earlier and later journey should everything not run to plan.  It’s simply formatted so that it reads well on your mobile device.  It also links directly to the live train information on the web.

Speaking of the web, we set out to build something that would enable you to get the information you want quickly and as intuitively as possible.  So, we settled on using Silverlight using DeepZoom to navigate around Virtual Earth imagery, on top of which we overlay track and train information.  You can zoom in to your chosen station and get station information, see the trains in the area (blue for on time, red for late) and get information on them, too. And, even better than that, the train positions are updated so they move.  Here’s a peek at what it looks like:


The map can be embedded in the National Rail Enquiries site and there’s a button that allows you to expand it to a full screen view (which is the view I’ve used above.)  Given the popularity of the National Rail Enquiries site, scalability was a primary consideration.  When you think that there are in the region of half a million visits per day to the site and thousands of trains, you can see it would be easy to design an application that would not scale.  We used a state service which holds a model of the train network on the server – thus minimising the network traffic that would result from this model being held on the client given that every client would have to get updates from the server.  This way a client only gets the information it needs.  The other thing to note about the service is that it has SQL Server 2008 at its heart – we made usage of the geospatial capabilities to store information about tracks and stations.

The last application we demoed was a mobile phone application that enables you to check what time the next train leaves, if it’s on time, when it’s due to arrive and what platform it’s leaving from.  Given that this is a mobile application, it’s written using the .NET Compact Framework 3.5.  It takes advantage of local storage (for instance the list of stations is held on the device) and features of the compact framework such as multithreading while using a web service to get live information.

All in all, I think this is a great demonstration of how your architecture can cover multiple delivery channels taking advantage of different devices.  I’ve already been using the mobile application (someone needs to test it) – and my journeys have involved less waiting in stations as a result.


Written by remark

October 6, 2008 at 11:27 am

5 Responses

Subscribe to comments with RSS.

  1. Awesome stuff Mark! I regularly use the National Rail website on my iPhone. I’d love to have a native application that does something similar to what you have.


    October 6, 2008 at 1:03 pm

  2. […] Mark B has also just finished some prototyping work recently but is also able to give some details on what he’s been up to here. […]

  3. I wrote a similar live train times map back in 2006 using Google Maps, with updating and moving trains: – obviously not as good as one with access to the database could be, but IMO still quite pretty 🙂


    November 4, 2008 at 10:17 am

  4. Nice! Only two years after an amateur did it in their spare time 🙂



    November 4, 2008 at 11:03 am

  5. Sounds good.

    Any sign of a release of the Windows Mobile version?


    February 11, 2009 at 6:21 pm

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: