Stormy Weather and Nurse Carter

Just a small note to say I’ve added in to Nurse Carter the ability to provide information about shelters and emergency contact numbers.

Of course, there’s a wider story around this. About #OpenData and being able to leverage that for future needs. But I won’t go in to that now.

I did some scrounging around online, found the PDFs and stored them on github in case the Office of Disaster Preparedness and Management’s site goes down during build up to a hurricane again.  And that’s about it.

Time For Water: The bot edition.

Back in 2013, I built a small site that took some data that the Water and Sewage Authority released (@wasatnt on Twitter) and remixed it, to make it easier to consume.

Recently, @wasatnt released a document detailing the current distribution schedule in this dry season, 2017.  It’s a PDF doc, listing the data for all regions in Trinidad and Tobago. Hundreds of rows, I discovered.

It seemed  like a good idea to build a simple bot to provide information about service at a particular area. So, I did. Listed below are some  of the steps it took from prepping the data to working prototype.

  • Get the data
    • It’s a PDF, so this means downloading and then converting.
    • I converted using https://smallpdf.com/pdf-to-excel
  • Clean the data
    • Small PDF gave me an excel workbook with 15 worksheets
    • All the worksheets contained merged cells, so I un-merged them.
    • Delete unnecessary columns
    • Then, I duplicated the row data so that every row could stand on it’s own. That’s important for the look-ups I’ll do later on.
  • Convert the data
  • Finally, I was able to build a bot, Time For Water, that would respond to messages with look-ups of the data in the original schedule.

Forum on the Internet of Things: Smarter Living in the Caribbean

On April 24, I had the opportunity to be a panelist, presenting a project I built for my MSc final submission.

This was at the ITU’s Forum on IoT, held at the Trinidad and Tobago Parliament building.

My solution that demonstrated the use of RFID for collecting traffic data and using cloud computing to process and communicate that data.

While preparing the presentation I was asked to explore what elements may need to exist to create an “An Enabling Ecosystem for IoT use and monetisation”.

It was such a good opportunity to explore this idea. In researching that very thing, I found, “Understanding business ecosystem using a 6C framework in Internet-of-Things-based sectors”. A great paper that helped me contextualize the work I did, along with the challenges and opportunities that came after.

The actual presentation can be found here.

Beyond​ just presenting, the forum proved a good place to meet up real practitioners. From Fasove and their boat monitoring device, to Ancel Bhagwandeen and the work he’s done with restoring automobile batteries, to the recently-graduated University students making waves with company after company.

Some good connections were made and I look forward to following up with them soon.

Presenting on Cloud Native

I presented on the imperative of designing specifically for the Cloud at the 13th edition of CaribNog.

My central treatise was that entities are moving away from simply Cloud-enabling existing solutions and having the Cloud as a backup. Analysts, architects and developers are strongly moving towards building solutions that are native to the Cloud.

Here’s the presentation.

 

Who is Nurse Carter?

I was on vacation over the 2016 Christmas period. At the office, we had recently concluded our Power Hour series for the year with an episode describing how we built a virtual assistant that made parliamentary recordings discoverable via Facebook messenger. 

We called that Hansard Speaks, and you can check out that episode here

So, I’m home thinking, ‘what next?’ when we had a new beginning of our own: my baby girl was born! Apart from the explosion of joy with her arrival, I was home for a month. 

Mind you: I understand that paternity leave is officially 3 days in Trinidad & Tobago. My company, Teleios Systems gives us a week. So, my wife and I agreed that I’d augment that with 3 weeks of vacation. In the end, we’re very glad we did. 

Anyway, being home with baby, witnessing the pains, frustrations & gladness of interacting with our public health systems, gave me the idea for my next virtual assistant: Nurse Carter

Nurse Carter is a virtual assistant that you can ask questions (kind of) and it will tell you when & where you can get access to various kinds of health services.
A few years ago, I used the data located on the Trinidad and Tobago Ministry of Health‘s web pages as the base for a mobile app. I called the app, TT Health Facilities and I used it to list all the health facilities and the services they provided based on their schedule. So, I knew there was a place to retrieve this data from.

As we did when we built Hansard Speaks, I used the Microsoft Bot Framework, this time using NodeJS rather than C#. This one took a while to put together because crying baby trumps messy JavaScript. But it’s finally done, and you can access it directly on  the web or Facebook.

This was another opportunity to get into the technology around Lucene and that type of search experience, everything else was mostly hacking around in Node. I guess I’m sort of working my way up towards more natural language interactions. So maybe next time I’ll use Microsoft’s Cognitive Services’ Language Understanding Intelligent Service.

Why I dig chatbots.

Chatbots are the new app.

Yes, it’s still a walled garden. Unless you own the messaging client, you’re at the mercy of the owners. Those owners being the bigger client providers whose messaging market you want to access. These days, that means Messenger (Facebook), Slack, Skype or WhatsApp.

Still, it’s a way in.

I’m working on another one. There’s largely no client, yet. I just have few ideas about how it could be profitable. But I really dig how easy it is, relatively speaking, to give an idea legs (or a mouth) so to speak.

I’ve been using Microsoft’s Bot Framework and together with their documentation, the process has been good. That they let you “write once, run anywhere” in a bot context is very savvy. The framework lets you deploy bots via their platform and have access to a laundry list of messaging channels, including:

  1. Text/sms
  2. Office 365 mail
  3. Skype (auto-configured)
  4. Slack
  5. GroupMe
  6. Telegram
  7. Facebook Messenger
  8. Kik
  9. Web (auto-configured, embeddable)
  10. Direct Line (API to host your bot in your app)

OK, let me head back to my next bot.

(the) Hansard Speaks!

We built a bot at Teleios.

Well, we’ve built bots before. In fact, one time, we built this amazing one that was over SMS – part of a game called MeggieWars. It was hilarious and fun. Personally, I’ve been a fan of using messenger platforms to do fancy stuff for a long time. Way back in 2005 my friend, Kevin Weekes and I attempted to use the MSN Messenger api to do automatic translation between IMs using the babelfish web service. We got as far as the semi-finals for the Imagine Cup that year.

378849_10150330509175060_580830935_n
Irwin and Kevin, Imagine Cup Participants, circa 2005.

Anyway, we built a bot in our last Teleios Power Hour episode for 2016 – Hansard Speaks. I had been thinking about doing something like Hansard Speaks for a least a year. It lets you search parliamentary proceedings (thus the name Hansard) via Facebook Messenger, thus the Speaks. Any text you type, it will search and then it gives you either a YouTube link of the moment it was spoken in the parliament or a link to the PDF containing the passage.

Right now, it works with a snapshot of the Trinidad and Tobago Parliament data from YouTube and their website.

In terms of the tech we used, we put together Azure Media Services – for the media ingestions – with a Lucene Search in ASP .Net  and did the bot stuff using Microsoft Bot Framework.

As the world goes crazy for bots, I hope to build a few more soon.