Myki is the digital ticketing system used in Victoria, Australia for public transport. It is also one of the worst systems I have ever seen when it comes to usability. The reason for this post is to outline my experiences with Myki and to list ways in which the Myki system can be improved. So lets start with the ugly…
1. Going to a Myki machine at a train station and topping up your card and being told “please wait 24 hours before using the card” is ridiculous.
2. If the auto top-up feature fails overnight, locking the card so that it cannot be used either to top up or travel is ridiculous.
3. Not being able to update your credit card online and do an immediate payment to unlock your card is ridiculous.
4. Having to spend over an hour on the phone just to talk to someone that says “you need to wait 24 hours or purchase another Myki to travel today” is ridiculous.
5. Having a call center that can’t do manual credit card transactions or unlock your Myki then and there is ridiculous.
I’m a web developer, part of my job is to think about how to simplify things, how to make things so easy you don’t even realise you are doing them. Design in other words. The fundamental problem with Myki is that a bunch of programmers sat down and coded an application without any thought to how the average person would use their product or how their decisions would impact the daily commuter. If someone needs to top up their card they are going to need it right then and there because it is extremely likely that the machine just told them they are out of credit. Having a delayed system that makes the transaction at midnight each day is insanity.
When architecting Myki did they ever think about message queues and asynchronous workers? Making a payment should be immediately sent to a worker to be processed against a payment gateway. Either online or at a machine at a station. Payments need to be immediate because almost every user is going to discover they are out of credit when they are actually out of credit. They aren’t going to log into Myki each day to check their balance, who wants to spend 5 minutes of their life each day checking their eticket?
Locking a card for any reason other than it being lost/stolen is insane if there is no way for the user to immediately unlock it via a payment. Having a recurring billing system that overrides manual payments is crazy, not being able to make a manual payment to immediately unlock a card and cancel a pending recurring payment is hard to comprehend. Furthermore, not being able to log in to the website and update your credit card details so that the recurring payment will succeed the next time it tries is laughable at best.
And now the call center…
Having to wait for an hour to talk to someone is really really frustrating. Having to waste my time to contact you for something that should just work is frustrating enough without having to wait an hour first. But, and this is a huge but, then to be told that there is nothing they can do to help you and that you need to wait 24 hours or purchase a new Myki (at the non-trivial price of $16 per card) is beyond infuriating. I can forgive all of the previous failures if, and only if, the customer service representative can unlock and top up your card for you. Being told that they can’t help you after waiting an hour is like having someone spit in your face.
Myki, sort your shit out! Fire whoever the person was that designed your unbelievably frustrating system, build the tools for you customer service people so they can be helpful rather than cannon fodder for frustrated commuters, and do some real world testing with how people actually use the system – not your way of sadistically trying to reprogram people.