Mathew Reiss just released Snowy, the first true personal assistant for the Pebble Time. In this Dev Diner interview, he shares his experiences and advice on Pebble app development with Dev Diner in between putting the final touches on his watchapp!
I’ve been developing for Pebble since January of last year (2014). I would definitely say that my experience with other apps has helped play a role in things like refining the UI and testing/debugging, but the core concept of Snowy (natural language processing) was entirely new to me. I feel good about the approach I’ve implemented though, as it allows me flexibility to add new commands and features quite easily. One of the biggest challenges to developing for Pebble is the limited screen size – you really have to be intentional about every pixel you draw. I think having a good familiarity with the platform and its limitations was the biggest asset for me with Snowy.
Well, first of all, I really can’t emphasize enough how useful the Pebble development docs are. Chris Lewis and crew have done a great job making them easy to read and the code examples are always helpful. Additionally, whenever a new feature is added to the SDK (magnetometer, colour screen, microphone, round screen, text pagination… etc), I build a small sample app that utilises it, so I can refer back to my own code when working on another project.
Speaking as someone with almost no formal training in computer science, I have to say C is not as scary as many make it out to be (at least for Pebble). Someone unfamiliar with the language is bound to get tripped up a little by * here and there or an occasional &, but it’s easy to power through and the developer community is the most helpful/supportive I have ever seen.
AI is a really fascinating concept, and one that’s gotten more attention lately as Siri, for example, finds its way into more devices. Some resources that I’d recommend for those who are curious are Alan Turing’s original paper on “thinking” machines, some of the more recent editorials on driverless cars and “ethical” AI, and, on the fun side, 2001: A Space Odyssey, Bladerunner, and anything (book or movie) by Isaac Asimov.
I really like an app called EuroFootball, by Carl Braunstein. It has data on tonnes of leagues, and has some of the best (and most intensive) integration into the new Timeline feature for Pebble that I’ve seen. Plus, the UI is efficient, showing me the basic info that I need in black and white, and not getting distracted by lots of colours or anything like that.
Make lots of apps! Resources like CloudPebble (Pebble’s free online IDE) make it super easy to get started writing code. And when you need help, the forums and Slack channel are overflowing with people willing to assist. Sure, not everything you do will be a hit, but the more experience you have, the better you’ll get.
A very big thank you to Mathew for taking the time to chat about Snowy whilst busily preparing for its release! You can find his personal assistant Pebble app at mydogsnowy.com. You can find out more about him and the ways you can contact him over on the Snowy developer page.