Bus Uncle talks Data lah
Plenty of apps and online tools can tell you when your bus is due to arrive.
But only one does so with personality — and in Singlish too.
Bus coming in seven minutes? That’s still plenty of time to do what you love: “Still 7 mins, go confess your crush.”
Final destination coming up? Time to scramble: “3 mins, pack up your Sheng Siong bags.”
That’s Bus Uncle, a snarky, colloquial chatbot you can talk to on Facebook.
‘He’ helps you go places, and will likely put a grin on your face to boot.
Developed by 24-year-old software engineer Abhilash Murthy, Bus Uncle has been a runaway success, garnering more than 20,000 “likes” since he began chatting with Singapore commuters in October 2016.
TechNews chatted with Mr — not Uncle — Murthy about his passion for coding, his experience building Bus Uncle, and his advice for budding developers.
Q: How did you start out as a coder? What you have any pointers for beginners?
I’ve been coding since I was 12 years old—I remember my first “Hello World” in Java, and that was a turning point.
I realised it was my passion when a lot of my free time went into coding side projects, or quick hacks to get things working.
Since then, my studies and career have been all about software.
My only pointer for beginners is to observe what you like to do in your free time. You’ll know it’s your passion when you sometimes forget to eat or sleep because you’re doing that one thing.
Q: How did you come across the data you needed to build Bus Uncle? What suggestions do you have to share with other developers looking for interesting datasets?
I knew from experience that there are publicly available APIs (application programme interfaces) out there to give you access to interesting data.
I just Googled “Bus arrival times Singapore,” and LTA DataMall came up.
After testing it, I realised it had just what I needed to create Bus Uncle.
My only suggestion for aspiring developers is to be inquisitive. Stop thinking about “what ifs” and start Googling!
Q: What do you think is the appeal of chatbots?
Chatbots all are about the user experience.
Apps focus heavily on trying to provide a user experience through an interface, while bots don’t really have an interface.
You don’t need to care much about what it looks like, you just need make sure using it feels good.
Q: How did you teach Bus Uncle to speak Singlish? What’s one tip to create chatbots with personality?
How I taught Bus Uncle Singlish is how anyone would teach their bot English — you just have to map language to intents.
For example, if Bus Uncle spoke normal English, the phrases “How long will it take for the bus to arrive?” or “When is the bus coming?” would map to the “findBusTime” function in code.
In Singlish, phrases like “Bus how long”, “Don’t see leh”, “Coming not?” all map to findBusTime as well.
Since I was making an app meant for residents in Singapore, and I had the ability to speak to my users, it was natural for me to opt for Singlish as Bus Uncle’s language.
Just think about how your target audience would speak to your bot, and respond in the same way.
Also, think about someone’s speech or way of talking that you find interesting, and then think about how those traits can be mapped to intents.
Q: What’s in store for Bus Uncle?
I’m working on a whole lot more features for Bus Uncle.
I am making him smarter, so that he becomes your go-to commute assistant.
And I am making him funnier, so you’d spend more of your time talking to him when you’re bored!
I am also making him more useful, by integrating him with some other companies’ APIs to make your commute seamless.
Q: Finally, if you and Bus Uncle had a Singlish throwdown, who would win and why?
This is a great question. I think Bus Uncle would win!
I have lived in Singapore for six years and have learned conversational Singlish, but Bus Uncle is older and well versed in the nuances of Singaporeanisms.
I’m more positive and relaxed, and he’s grumpier and more kiasu, which gives him a major advantage because Singlish is all about getting the point across as succinctly and as quickly as possible.
Of course, I’m the one who trains him, so I can always get him to say the wrong Singlish things when arguing with me — I might just win too!