What's new – Sunday 25th October 2015

Summer’s officially over – the mornings aren’t as light, and the evenings are darker. To make up for this, there are four new or updated maps!

  • The York map has been extended to Thirsk
  • The Darlington map map covers Thirsk, Northallerton, Darlington and Durham, plus the Northallerton to Eaglescliffe and Darlington to Eaglescliffe routes
  • The Newcastle map covers Durham to Newcastle, plus Dunston, Manors and Heworth
  • The Sileby to Langley Mill map has been redrawn, covering Sileby to Sheet Stores Junction, some of the route to Stenson Junction and Derby, plus Toton and Beeston

As always, I’ve been hard at work fixing the smaller bugs that you’ve been reporting – the highlights are:

  • The Crewe map includes ‘train ready to start’ indications for the platforms at Crewe
  • The Exeter map includes has some fixes which caused trains to disappear around Dawlish (no, not in to the sea!)
  • Sometimes, map elements would appear with large yellow sections due to a code problem – that’s been fixed

I have a well-earned holiday coming up shortly, so expect some non-map related features in the next release, probably in a fortnight’s time!

Solstice Release

Hello again, after a two week break. It feels like I’ve been flat out over the last couple of months, churning out maps like there’s no tomorrow.

I’ve managed to fix a handful of small problems with the maps:

There are also some other bugs that I know about and am trying to fix:

  • On the Charing Cross, Cannon Street and London Bridge to Forest Hill map, trains never step out of the berth for signal L156, and are (seemingly) manually interposed in to the berth for signal L148. This could be a fault with the train describer itself, which I’ll have to work around
  • There are occasional problems with some trains being linked to schedules which are not the right ones
  • Some signals and TRTS indications always show on when they’re not – I believe this is linked to the problem above

I’m working hard to try and get them fixed, so please accept my apologies for the fact it’s taking a while.

That’s it for this week – the next maps are a surprise (read that as "I haven’t decided which ones to tackle next").

// Peter

Happy Birthday, OpenTrainTimes

On Monday 10th January 2012, I launched OpenTrainTimes.  I believe it marked a turning point in opening up Great Britain’s railway data – leading the way and showing that it can be done, and that the outcome would be positive.

We’ve come a long way in those three years.  Network Rail opened up detailed real-time data through their Data Feeds platform and have opened up their timetable, fares and associated data through their Rail Industry Data portal.

Most recently, National Rail Enquiries opened up their Live Departure Boards web service and loosened their terms and conditions so that nearly anyone can work with the data.

In the coming months, the pièce de résistance will be unveiled – open and scaleable access to Darwin – one of the most important systems that produces a ‘single source of truth’, whose information is distributed to websites, mobile phones, station departure boards and numerous other technology platforms.

If you’re familiar with OpenTrainTimes, you’ll realise that it only uses two or three of the available data sources.  There are two very good reasons for that.  First, it’s a more compelling argument when you can appraise somebody else’s work as a talking point and reason to open up data than when you’re presenting your own.  Secondly, OpenTrainTimes started off as an experiment and I never expected it to be as popular as it is.  The architecture has run in to a number of scalability issues which can only be fixed with a lot of behind-the-scenes work.

I’ve been putting in many hours of work each week, outside the time I spent working for Rockshore to improve the railway’s real-time systems, to re-build the entire site and make it even more successful than it is.

I am not quite at the end yet – the majority of the heavy lifting’s already been done and the scaffolding’s starting to be taken down.  There are a few more weeks of testing I need to do to iron out bugs and make sure the new site performs much better than the other did.  Please get in touch if you’re interested in helping test the new site.

When I launch the new site, probably in a month or so’s time, it’ll include real-time data from more feeds at Network Rail and, once the Darwin feed from National Rail Enquiries launches, it’ll include forward-looking predictions that mirror what you see on other systems powered by Darwin.  No “Your site says X, but the National Rail site says Y, how do I don’t know who’s right?” – consistency trumps accuracy in predicting when a train will turn up.

Thank you to everyone who’s helped me out – especially to the numerous industry people who have kept my enthusiasm up and made helpful suggestions on where to go next.

Watch this space – a new OpenTrainTimes is around the corner!

Scheduled downtime – Saturday 21st June 2014

OpenTrainTimes is a popular site – so much so that it’s necessary to upgrade one of the servers that runs the site.

To do this, there will be an outage from approximately 0900 to 1300 on the morning of Saturday 21st June, and the site will be offline during this time.

After this upgrade is complete, there will be plenty of spare capacity on the site to allow the next set of exciting features to be developed… watch this space!

Happy Easter

A very Happy Easter to you all!

A brief update on some changes on the site, based on feedback I’ve had over the past few days:

There are also some bugs which have been reported, which I’m still working on:

  • Maps do not display fully on Internet Explorer – and it’s only a problem on Internet Explorer. I’m currently investigating.
  • Maps are very slow on some browsers – which appears to be a problem with the Javascript code I’m using. Again, I’m currently investigating.

Finally, thanks to everyone for your feedback – it’s great to be back and developing OpenTrainTimes!

The return of OpenTrainTimes

I am very pleased to announce that Rockshore, have stepped forward and agreed to sponsor OpenTrainTimes in the mid-term. As a result, I’m delighted to say that OpenTrainTimes is now back!

I have had a steady stream of wholly supportive and positive emails over the last month from people who have used the site. Thank you to everyone who took the time to get in touch – there are more of you than I thought!

So, the site is back and running on new code which I’d been working on for some months before the site was shut down. There are a few important changes, however:

  • The beta server is gone – it was too labour-intensive to run two versions of the site. Instead, many of the features and improvements from the beta site are now on the main site
  • The layout is different – this is OpenTrainTimes version 3, considerably changed under the bonnet from previous versions, based on everything I’ve learned over the last three years
  • Some features are missing – simply down to the fact this is my hobby. I will be bringing the PPM statistics back soon, don’t worry
  • There are more maps – see below for a list, and there will be more coming
  • There are bugs – this code is fairly new, so please report bugs to feedback@opentraintimes.com. I already know about the dodgy handling of trains over midnight

Many people absolutely loved the maps, and I’m pleased to say that the following brand-new maps are now included on the site:

The previous maps (West Coast, East Coast, Thameslink/Midland Mainline) maps will be ported over in due course.

Once the new site is stable and bedded in, I’ll be working on more maps and functionality.

Covering costs

I’ve never wanted to run the site at a profit – but I need to cover costs. Some of the things I’m considering to keep the site up and running in the long term are:

  • A one-off donation
  • A regular donation
  • Subscriptions, which will give access to additional features on the site

Any excess money will be set aside to keep the site running for longer, and I’ll continue to donate my spare time and energy for the benefit of everyone.

Autumn Update

It’s been a couple of months since the last blog post and quite a long time since the site’s been updated. Several people have emailed me to ask what’s going on, and this blog post will explan everything.

This year has not been an easy year for me on a personal level. I’ve had several massive changes, including starting a new career in January and the sudden death of my father in June. On top of this, I’ve been extremely busy with my day-job and the last thing I want to do some days is come home and spend another three hours writing code! I pump a great deal of energy and passion in to my job, which is paying off, but I don’t want to burn out.

I made the unconscious decision to work on some other things for a while, setting aside working on the beta site and working on other things. About a month ago, I returned to working on the site, reviewing the code I’ve written over the past three years, and came to the conclusion that I need to make the site better by replacing it, rather than continually painting and extending it. I’m doing that job right now – which takes time, but I am in no rush.

There are also several other problems I’m tackling – one of which being exactly how far you can go with the Network Rail Data Feeds. The fact of the matter is that it’s impossible to predict much of the future from these data feeds, because there’s a lot of other data which isn’t public. Unfortunately, that situation is very unlikely to change – I’ve been trying quite vocally for the past few years, and I know far too much about all the issues at play.

In summary, I’m still very much behind the site and Open Data in general. I want OpenTrainTimes to continue to be free and useful, but to go to the next level, I need to take some time to rebuild the foundations.

OpenTrainTimes 2.2 goes in to public beta

It’s been a long time coming, but I’m pleased to say that OpenTrainTimes 2.2 is now in public beta. I’d intended to launch this a couple of months ago, but various things – including ill health and on my part and shortly afterwards, the unexpected death of my father – delayed things somewhat.

Before I get in to what’s new and changed, I’d like to point out that I run OpenTrainTimes out of my own pocket and I’ve never accepted any donations nor put advertising on the site. If you like the site and you want to give some money, please send whatever you think is appropriate to Marie Curie Cancer Care – through the OpenTrainTimes Development page on JustGiving. You can also text “OPEN67” with either £1, £2, £3, £4, £5 or £10 to 70070 to donate.

Boring bit over, here’s the exciting stuff :)

The new version is in public beta because I’ve not been able to test it as thoroughly as previous versions, and there still may be bugs. Please go check it out at http://beta.opentraintimes.com/ and report bugs to feedback@opentraintimes.com.

There are several extra maps:

…and some of the old maps have been upgraded:

…and two notable new features:

  • There’s more control over searching for schedules. You can hide passenger trains, empty passenger trains and non-passenger trains, as well as filter by schedule type and whether the train passes
  • The schedule route map is back – click “Functions” and “Show route map” on a schedule page

So, please go and test the new site and feed back any problems. If all goes well, I’ll make this live in a couple of weeks, or whenever the majority of bugs are squashed.

Real-time train movements

It’s been a month since I last updated you all on the plans for the future… so where are we?

First, good news – I have real-time train movements working in the development environment. This has taken several weeks of solid effort, writing test plans, writing code, fixing code and committing it. There’s reporting for the vast majority of trains, and cancellations, reinstatements and short-tripped trains are all handled well.

The bad news is that, when testing the system in an environment similar to production, it runs too slowly. There’s around a 4-5 minute lag through most of the day, which is unacceptable and I can’t release code in this state. There are two options – either upgrade the production server (which is expensive), or rewrite the code to be more efficient. I’ve opted for the latter.

Rest assured that real-time movements are still very much on the cards, along with a bunch of other features that I’ll write about next week.

Springtime Review

Thank you to the vast number of you who have taken the “How Do You Use OpenTrainTimes?” Survey. It’s open for the next three weeks, so if you haven’t responded yet, please do so. The results are interesting, useful and in some cases, quite surprising – and they’re shaping plans for the future.

One of the most requested features is real-time train movement data. I’ve been working in the background for the past couple of months on getting this up and running, and I’ve made excellent progress in the past two weeks. Assuming I continue at this pace, I’m estimating releasing OpenTrainTimes 2.2 with real-time train movements in three weeks.

Something else I’ve been working on is producing timetable data for Great Britain in GTFS format. After chatting to a few people at the FutureEverything Innovation Challenge this weekend, I realised that there are 587 transit agencies providing GTFS data, and seemingly nobody in Great Britain.

What do I normally do when there’s a gaping hole in a domain that I understand and care about? I fix it, and I’ve created data.opentraintimes.com which will have a daily-updated GTFS-format snapshot of GB timetable data. There are just two more bugs to fix relating to trains which run overnight, but I’m anticipating fixing these early this week.

On to this week’s updates – as I’ve been so busy doing other things, there are only a few minor bugs which I’ve fixed:

  • The London Waterloo – Earlsfield/Chiswick/North Sheen map had platform numbers at Barnes and Putney labelled incorrectly. Note that due to caching, you might still see the old map for a couple of hours)
  • When using Internet Explorer 9, the Feedback link was rotated incorrectly
  • Trains at Stratford Parkway (STY) weren’t showing
  • Times on the homepage were an hour behind reality

Expect a period of relative quiet over the next couple of weeks whilst I get real-time data up and running – but please, as always, keep your feedback coming!

// Peter