We were inspired to make the Daily Cleaner skill because we wanted a way to make cleaning the house a less painful process. Having a full house (two kids and a dog) can be exhausting by itself; house work just adds to the mayhem. We wanted a skill that would give the user more time back in their life to spend with their family, or do something they enjoy, while also maintaining their home. Daily Cleaner can help to distribute those weekly house chores so they seem less daunting, and yet the home is always presentable when those unexpected guests drop by.
We also wanted to use the skill to give the user new information about house cleaning that might enhance their weekly routine, or make the tasks more fun. There's really no way to make cleaning the house a fun activity, but at least this way, it's a shorter task each day, and it becomes a part of the routine.
Introducing Daily Cleaner.
What it does
Daily Cleaner has a weekly housecleaning chore assigned to each day of the week. When asked, it tells the user what their task for the day is. This breaks up the monotony, and also distributes the work across a whole week, versus a scramble to get things picked up over the weekend, or when that unexpected visitor arrives.
In addition to providing a daily cleaning task, it includes tips and tricks for getting each area of the home cleaned more efficiently, or with new methods.
How I built it
We started by making a list of the routine tasks that someone responsible for keeping their home tidy would be responsible for. We ignored tasks that really don't fit a schedule, like dishes or laundry, that need to be maintained regardless of the day of the week. Once we had the tasks written down, we began to do some thinking on what days each should occur, wanting to spread out the more challenging or time-consuming activities and also putting several "pick up" tasks in there, for more general organization of the home. Finally, we started researching different tips, tricks, or shortcuts that we could incorporate into each day, to keep the skill fresh. We randomized these so a user will not likely hear the same script each Monday, even though the task for the day does not change from week to week. Once we had the concept well-defined, we went to the Storyline console to put it all together.
Challenges I ran into
We had originally intended for Alexa to simply share the task of the day, without requiring the user to inform Alexa of what day it is. That introduced more complexity than we were prepared for, at least for the time being. So we instead asked the user to provide that piece of information. It adds a bit more interaction, which is great. It also gives the user an opportunity to hear yesterday's task, if they are a bit behind, as well as tomorrow's on the off chance they want to get ahead in their weekly routine.
Accomplishments that I'm proud of
In order to make this skill with random responses for each day, I wanted to leverage an API to pull data from an external database. I've never done that before, so there was a bit of a learning curve for me. Fortunately, Storyline makes it straightforward, so I took my time and we were able to pull that off.
We are really excited that we have come up with a very simple but impactful life hack skill that many people with all types of lifestyles, backgrounds and households will be able to take advantage of, and that will make a real difference in their daily lives.
What I learned
This was not our first Alexa skill, but it was our first that used external data. In addition, we really wanted to try to make this skill a conversation one, versus one that simply spewed information. We wanted to add some humor and surprises, while consistently providing users what they are expecting from Daily Cleaner. This took some work in brainstorming what a user would want to hear, and what would motivate them to stick to their cleaning schedule. We think we have found the right balance and are excited for the potential we fell this skill has.
What's next for Daily Cleaner
We will continue to add to our content, including more tips and tricks, and a more diverse script for each day. I am also hopeful we can soon auto-detect the day of the week, so a user won't need to provide that information to Alexa. In tandem with this skill, we have developed a similar Flash Briefing, that provides much of the same information, but as part of a user's daily Flash Briefing routine. We are in the process of thinking through how the two can work together to provide that daily information a user needs, and also provide a higher level of interaction down the road, with this skill.