A few days ago Mark Zukerberg posted to his Facebook page about his experience working on building a simple AI to run his home, which he aptly named Jarvis after Tony Stark’s AI from Iron Man. And the same day Fast Company wrote an article on it. You may have heard about it.
I also discovered that Mark Zukerberg sets a yearly challenge for himself. So, in addition to being CEO of Facebook and having a family he makes it a priority to continue to learn and grow.
Throughout his update, there were lessons on the right way to build products. He used creative problem solving, iteration and existing software rather than building from scratch to get to his vision as quickly as possible.
From the very onset of the project he faced challenges because there is currently no common API for the home appliances. As home automation AI becomes more prevalent (and it will happen quickly) this is gap that will need to be filled.
He had particular trouble finding a toaster that would allow you to push the bread down without having it turned on. “I ended up finding an old toaster from the 1950s and rigging it up with a connected switch.”
This is an example of taking a problem and turning it on it’s head. There were probably other more complicated solutions, like reengineering a present day toaster, but he took the problem and broke it down to its smallest parts and attacked it from a new angle. This type of creative problem solving is necessary as we navigate building products.
Another hurdle was allowing Jarvis to understand voice commands. As we should when building any new product he took an iterative approach by first communicating with Jarvis via text message and later using that as a springboard to allow for voice commands.
I was particularly interested by his discovery that he often prefers to communicate with Jarvis via text rather than using voice commands. And based on this observation he determined that as we build out AI, we need to recognize that they will also need messaging interfaces in addition to voice.
Building iteratively and real world experimentation and discovery at work.
In order to create the messaging interface he could have built an app from scratch, but chose instead to build a Messenger bot. Why? Because it was easier. There are open source APIs to build these bots, which allowed for a strong base to start with. When building towards MVP it’s important to move as quickly as possible and often that can be done through retrofitting your ideas into existing solutions, even if it’s not as sexy as you imagine it to be when you’re dreaming of the final version.
Beyond his iterative approach, creative problem solving, and building on top of existing work it’s important to acknowledge the very fact that he challenged himself to do this. If he had never put pen to paper and challenged himself at the beginning of the year there’s little chance that he would now have a kick ass home AI, not to mention the knowledge gained, including learnings he wasn’t expecting at the beginning, which is common in taking on big challenges. You just don’t know what you don’t know yet.
As I’ve been saying from my very first post. Start.
Then, make small iterative progress towards whatever it is you’re looking to do. Set a goal and break it down into bite sized chunks and then break it down some more. Make it so easy that you’d be hard pressed not to make a little progress every day.
From beginning to end it took Zuckerberg a little over 100 hours to get to the current version of Jarvis. Think about what you could do in 100 hours over the course of this coming year.
What challenge do you want to tackle in 2017? Let me know in the comments below.