‘Moving Victoria’ and changing billboards

Back at the end of 2013 I found this billboard beside the Deer Park Bypass at Caroline Springs, featuring yet another advertisement for the Liberal Government’s ‘Moving Victoria’ program.

'Moving Victoria' billboard promoting Regional Rail Link beside the Deer Park bypass at Caroline Springs

Fast forward six months, and look at how the government’s priorities appear to have changed – the advertisement for Regional Rail Link has been replaced by one for the East West Link .

'Moving Victoria' billboard promoting the East West Link beside the Deer Park bypass at Caroline Springs

Government propaganda – it never stands still.

Footscray’s useless next train displays

The newly expanded Footscray station – last week I dissected the new but misleading next train displays on the V/Line platforms, but now I’ll look at a bigger problem – the useless next train displays on the main concourses.

Six platforms at Footscray station, yet passengers are only told the next four trains!

The problem – Footscray station now has six platforms, yet passengers are only told the next four trains!

How many different destinations could a passenger at Footscray station be intending to travel to? Let us take a trip around Victoria from south-west to north, from the suburbs of Melbourne all the way to the Murray River, and look at all of the rail services that pass through…

  • Williamstown
  • Altona
  • Werribee
  • Geelong/Marshall
  • Warrnambool
  • Watergardens/Sunbury
  • Bacchus Marsh
  • Ballarat
  • Ararat
  • Maryborough
  • Bendigo
  • Swan Hill
  • Echuca

That is 13 different destinations headed away from the city, and we can add two more citybound ones to the list:

  • Flinders Street via Southern Cross
  • Flinders Street via City Loop

So what kind of information should passengers at Footscray receive?

Southern Cross has a massive next train display, displaying suburban trains on a per line basis and the country trains ordered by departure time.

Spare screen on the PIDS turned over to yoghurt advertising

Flinders Street Station has a dozen platforms, with a large display displaying the next two departures on every route. Unfortunately it is ordered by the name of each ‘parent’ line, which makes things confusing when a short working service is the next one to depart – such as a Broadmeadows train on the Craigieburn line.

PIDs at Flinders Street Station

Richmond station has ten platforms, and LCD next train displays scattered around the station displaying the next departure for every line, as well as a next few departures for the city.

New LCD next train displays above the centre subway at Richmond

South Yarra station has six platforms but only has a LED display installed, but at least the number of the visible departures matches the number of platforms, which suffices for the half-dozen different routes possible for a passenger headed away from the city.

(also note the newly installed TramTracker LCD screen alongside for the route 8 tram along Toorak Road – Footscray could do with the same for the connecting route 82 service)

New TramTracker LCD screen installed at South Yarra, beside the LED next train display

And finally, North Melbourne. It has six platforms and an array of LCD next train displays visible from different locations, displaying the next two departures for each line passing through.

New LCD next train displays

North Melbourne also has a number of dedicated screens to display V/Line departures – now useless since Regional Rail Link altered all Geelong, Ballarat and Bendigo services to bypass the station!

Empty V/Line services board at North Melbourne, now that Geelong, Ballarat and Bendigo services all bypass the station!

So back to Footscray…

At a minimum at Footscray a passenger should receive the same level of information they used to get at North Melbourne – the next two departures on each suburban line, the next few departure times for the City Loop and Flinders Street direct services, and a list of the next half-dozen V/Line services to pass through.

Displaying the next departure for each possible route through Footscray might be nice, but I’m guessing that knowing the next Echuca service is eight hours away won’t be of much use to passengers!

V/Line’s new but misleading next train displays

Last week another part of the Regional Rail Link project opened to passengers – the pair of V/Line-only tracks between Southern Cross Station and Sunshine. Along with these tracks are two new platforms at Footscray station, which were provided with a new style of next train display screen. Can you spot the errors?

New V/Line next train displays displaying non-stations like Parwan Loop, as well as superfluous express running

For those playing at home:

  • There isn’t any railway station between Deer Park and Rockbank to run express between,
  • ‘Parwan Loop’ doesn’t exist either,
  • Bacchus Marsh to Ballan doesn’t have any stations to skip,
  • Again, there are no stops between Ballan and Ballarat to miss – and finally,
  • Ballarat to Wendouree has no stops

So what are the stops?

The inclusion of Parwan as a stop on the Ballarat line isn’t new – the previous train information system included it as a skipped stop between Rockbank and Bacchus Marsh.

A railway station existed at Parwan until the 1980s, but today it is just a empty paddock where trains can pass each other on the otherwise single track route.

3VL33 leads 3VL42 on the up at Parwan Loop

As for the gap between Deer Park and Rockbank, Daniel Bowen weighted in with the following:

(Caroline Springs railway station has been in the works since at least 2008)

As for the other section of express running between Ballan and Ballarat, a fellow railfan gave me this light hearted explanation:

Rivetcounter in me says they’re missing Wallace, Millbrook and Ballarat East…

Note that the above three railway stations all closed decades ago!

Finding the truth

However the real explanation for the content of the new screen at Footscray is found in the ‘Working Timetable’ – a set of timetables for the internal use of railway staff, that shows all planned train movements in a defined area.

The relevant part of the Ballarat line working timetable can be found here:

V/Line working timetable for the Ballarat line

If you have never had to read a working timetable before:

  • ’8109′ is the train number of the ’0908 Southern Cross to Ballarat’ service,
  • Three letter codes to the left are station code names,
  • Names in CAPITALS are railway stations,
  • Names in italics are just timing points along the route,
  • A ‘u’ against a location that the train only picks up passengers from here,
  • A ‘*’ against a time indicates that the train doesn’t stop – it runs express through the location,
  • The ‘slash’ in the time indicates separate arrival and departure times at a location,
  • ‘ES’ and ‘MS’ are abbreviations for the tracks the train traverses between Southern Cross and Noth Melbourne,
  • ‘(1)’ indicates that a train takes track ’1′ through a given station,
  • ‘-8126′ indicate that train number 8126 in the opposite direction is crossed at this location,
  • The same logic applies for ‘-8130′

Putting it all together

So what does the working timetable tell us about the V/Line service I found on the next train displays at Footscray?

The train runs express through Deer Park West junction.

VLocity on the up at Deer Park West junction

It stops at Parwan Loop to pass a train coming the other way.

VL17 and classmate VL04 flies through Parwan Loop for the cross

But has a clear run through Bank Box Loop.

VL07 trails a Ballarat bound pass through Bank Box

At Bungaree Loop it has to pass a train on the other track, but doesn’t have to stop.

VLocity Melbourne bound crossing the Moorabool River on the Bungaree deviation on the Ballarat line

Followed by a clear run through Ballarat East.

VL14 leads VL04 through Ballarat East on the down

And a clear run where the Ararat and Mildura railway lines diverge at North Ballarat.

VL21 passes the junction at North Ballarat bound for Ararat

So why?

The answer as to why V/Line’s new next train displays are displaying inaccurate express running and superfluous station stops – the system is being driven by a raw feed of data that is only intended for the use of railway staff, and the irrelevant pieces of information aren’t being scrubbed out before it is delivered to the public.

Now all that V/Line need to go is go back into the system that drives the new displays, and ensure that it only includes the information that actual passengers care about.

How many times can one Myki gate break?

How many times can one Myki gate break? I catch the train to work every day, and always carry a camera with me – so if a gate has a habit of breaking, then I’m going to catch it!

Technician working to fix a defective set of Myki readers at Flagstaff station

I’ll start the story at Flagstaff station when Myki gates were brand new – October 2012. Somehow they managed to all freeze up a few days later, with passengers having to touch on elsewhere.

Brand new Myki barriers flaking out at Flagstaff station, Metro staff directing passengers to the overflow readers

On August 13, 2013 I found a single gate in need of reprogramming.

Bytecraft technician attempts to repair a Myki gate at Flagstaff station

8 hours later it appeared the technician couldn’t fix it – the gate was blocked from use using a ‘DANGER’ flag normally used on broken escalators.

8 hours later it appears the technician couldn't fix it - Myki gate still broken at Flagstaff station

Jump forward to August 26, 2013 and the same gate was now physically broken, but station staff had some new Myki green ‘Temporary Unavailable’ flags to block the gate with.

Single defective barrier paddle in the gate array at Flagstaff station

A few uneventful months passed, until March 31, 2014 when somebody else managed to break the same barrier paddle.

'Temporary Unavailable' at Flagstaff station due to a broken barrier paddle

The next morning somebody managed to break the second paddle.

Fixed the night before, now these myki gates at Flagstaff are broken in a new way

A year then passed, until evening peak on April 29, 2014 when software faults rendered every gate dead in the water.

Every myki gate at Flagstaff station dead for evening peak

May 8, 2014 saw the ‘Temporarily Unavailable’ flags getting a work out yet again, when both sets of paddles got stuck in the gate.

Another 'Temporarily Unavailable' flag deployed to a broken set of Myki gates at Flagstaff station

Repairs got the gates working for about a month, until they failed again on Thursday July 3, 2014.

Wide gate at Flagstaff station 'Temporarily Unavailable' for morning peak

Not much happened over that weekend, because on Monday July 7 the ‘Temporarily Unavailable’ sign started to turn into ‘Permanently Unavailable’.

'Temporarily Unavailable' yet again - wide gate at Flagstaff station

On July 8 I found a technician looking at the gate.

A second gate is 'Temporarily Unavailable' at Flagstaff station

However that didn’t fix it – on July 9 half of the barrier paddle was stuck in the mechanism.

Looks like the work done yesterday made no difference - only half of the wide gate at Flagstaff station is working!

And by Friday July 11 things weren’t much better – the left paddle was flopping halfway out of the gate.

Still 'Temporarily Unavailable' at Flagstaff station - the left paddle flopping halfway out of the gate

That is one full week for faults for one myki gate – how long until I find a longer streak of failure?


Metcard gates were not immune to failure – over the years I did manage to find one where half of the paddle was stuck open. I’m guessing the Metcard gates were built of much sterner stuff!

Metcard barrier with one half of the paddle stuck open

Rebuilding all of my websites

I’ve had quite busy recently – on Thursday last week I discovered all of my web sites were offline, which resulted in me moving to a new hosting provider, and rebuilding every bit of content. So how did I do it?

Going offline

I first realised something was wrong when I discovered all of my web sites displaying the following ominous error message:

 'Website Suspended' message from cPanel

I checked my email, and I couldn’t find any notification from my hosting provider that my account was suspended – a pretty shit job from them!

However, I wasn’t exactly surprised, as over the past few years I’ve been receiving these automated emails from their system:

Your hosting account with username: [XYZ] has over the last few days averaged CPU usage that is in excess of your account allocation.

This could be caused by a number of factors, but is most likely to be due to a misconfigured installation of a 3rd party script, or by having too many features, modules or plugins enabled on your web site.

If you simply have a very busy or popular web site, you may need to upgrade your account which will give you a higher CPU allocation. Please contact our support team if you need help with this.

Until your usage average drops back below your CPU quota, your account will be throttled by our CPU monitoring software. If your account continues to use more CPU than what it is entitled to, you risk having your account suspended.

All up I was running about a dozen different web sites from my single shared web hosting account, and over the years I’ve have had to increase the amount of resources available to my account to deal with the increasing load.

Eventually I ended up on a ’5 site’ package from my hosting provider, which they were charge me almost $300 a year to provide – a steep price, but I was too lazy to move everything to a new web host, so I just kept on paying it.

Having all of my sites go offline was enough of a push for me to move somewhere new!

What needed to be moved

All up my online presence consisted of a dozen different sites spread across a handful of domain names, running a mix of open source code and code I had written myself. With my original web host inaccessible, I had to rebuild everything from backups.

You do have backups don’t you?

Welcome to the western suburbs

The rebuild

I had been intending to move my web sites to a virtual private server (VPS) for a while, and having to rebuild everything from scratch was the perfect excuse to do so.

I ended up deciding to go with Digital Ocean – they offer low-ish prices, servers in a number of different locations around the world, fast provisioning of new accounts, and an easy migration path to a faster server if you ever need it.

After signing up to their bottom end VPS (512 MB RAM and a single core) I was able to get cracking on the rebuild – they emailed me the root password a minute later and I was in!

As I had a bare server with nothing installed, a lot of housekeeping needed to be done before I could start restoring my sites:

  • Swapping over the DNS records for my domains to my new host,
  • Locking down access to the server,
  • Setting up a swap file,
  • Installing Apache, MySQL and PHP on the server,
  • Creating virtual directories on the server for each separate web site,
  • Creating user accounts and empty databases in MySQL

I’ve only ever played around with Linux a little, but after 30 minutes I had an empty page appearing for each of my domain names.

To get my content back online, thankfully I had the following backups available to me:

  • I run three blogs on the open source WordPress software, so I could just install that from scratch to get a bare website back
  • My main photo gallery on the open source ZenPhoto software, so that was another internet download
  • Each blog and photo gallery uses a custom theme, of which I had backups on my local machine to re-upload
  • I keep a mirror of my WordPress uploads on my local machine, so I just had to reupload those to make the images work again
  • When I upload new photos to my gallery, I keep a copy of the web resolution version on my local machine which I was unable to reupload
  • Every night I have a cron job automatically emailing me a backup copy of my WordPress and ZenPhoto databases to me, so my blog posts and photo captions were safe
  • Some of my custom web code is available on GitHub, so a simple git pull got those sites back online

Unfortunately I ran into a few issues when restoring my backups (doesn’t everyone…):

  • My WordPress backup was from the day before, and somebody has posted a new comment that day, so it was lost
  • I had last mirrored my WordPress uploads about a week before the crash, so I was missing a handful of images
  • The last few months of database backups for Rail Geelong were only 1kb in size – it appears the MySQL backup job on my old web host was defective
  • Of the 32,000 photos I once had online, around 2,000 files were missing from the mirror I maintained on my local machine, and the rest of them were in a folder hierarchy that didn’t match that of the database

I wasn’t able to recover the lost comment, but I was able to chase up the missing WordPress uploads from other sources, and thankfully in the case of Rail Geelong my lack of regular updates meant that I only lost a few typographical corrections.

As for the 2,000 missing web resolution images, I still had the original high resolution images available on my computer, so my solution was incredible convoluted:

  • Move all of the images from the mirror in a single folder
  • Use SQL to generate a batch file to create the required folder structure
  • Use more SQL to generate a second batch file, this time to move images into the correct place in the older structure
  • Run a diff between the images that exist, and those that do not
  • Track down the 2,000 missing images in my collection of high resolution images, and create a web resolution version in the required location

Three hours after I started, I had my first win.

Unfortunately I found a number of niggling issues throughout the night.

By 2am I was seven hours in, and had managed to get another domain back online.

Eventually I called it quits at 4am, as I waited for my lethargic ADSL connection to push an elephant up a drinking straw.

I spent the weekend out and about so didn’t get much time to work on rebuilding my content – it wasn’t until the fourth day after my sites went down that I started to track down the 2,000 missing images from my photo gallery.

Thankfully I got a lucky break – on Monday afternoon I somehow regained access to my old web host, so I was able to download all of my missing images, as well as export an up-to-date version of the Rail Geelong database.

After a lot more stuffing around with file permissions and monitoring of memory usage, by Tuesday night it seems that I had finally rebuilt everything and running somewhat reliably!

What’s next

Plenty of people online seem to rave about replacing the Apache web server and standard PHP stack with Nginx and PHP-FPM to increase performance – it’s something I’ll have to try out when I get the time. However for the moment, at least I am back online!