The Inspiration
Social justice is important to me. I've always cared about making a positive difference in the world and empowering others. After participating in the Code for America conference several years ago and seeing how ordinary people make significant differences in the lives of their fellow citizens, I've been even more inspired to use technology to make government responsive, accessible and proactive in caring for its constituents. Interacting with our governments should be easy and seamless. The smoother the interaction, the more engaged we're likely to become. Technology can lower barriers to engaging with government and can make information both readily available and - much more importantly - relevant to citizens. Many governments have open data portals which present raw data. It's a great start, but it's also just a baby step because it requires users to visit the City's website, search for a relevant data set and then figure out what it means. They have to synthesize the raw data into meaningful information. That's a huge challenge and an unnecessary barrier.
What it does
The City of Austin Smart Assistant makes information on city services available through natural language conversation. I started with publicly available data from Austin Resource Recovery (ARR) to answer two categories of questions:
When is a specific address serviced by ARR: (When is my trash day? When is my recycling day?) How to properly dispose of an item: (Can I recycle a tire?) (Play the waste sort game)
I chose the first because it's a commonly asked question for Austin 311. I chose the second because Austin has a goal of being a zero waste city by 2040, and key to that goal is helping citizens understand how to properly dispose of items. The more citizens recycle and compost, the closer we get to this goal.
How I built it
The City of Austin skill is built using the Alexa Skill Kit and an AWS Lambda python function.
Challenges I ran into
The biggest challenge were figuring out:
- the best utterances to include, since there are so many ways people ask for the same thing 2: how to make the conversation flow naturally without having to be an AI language expert
- how to keep track of session information to handle follow up questions
Accomplishments that I'm proud of
This is my inaugural project so I'm proud to have developed a skill from scratch in my spare time with a full-time job.
What I learned
This has been a fun and educational experience. I learned Python just to develop this skill and I've learned how to better create a flow diagram for conversation. Most importantly, I've learned about the amazing possibilities voice technology and AWS offers so I'm more motivated to keep creating.
What's next for The City of Austin
The next phase is to make more data accessible through the skill. I'll start by using the "10 most popular searches" data set from data.austintexas.gov as a guide to what to work on next. I also plan to take advantage of Amazon Translate to make the skill responses multi-lingual.
Built With
- lambda
- python
- socrata
- socrata-open-data
Log in or sign up for Devpost to join the conversation.