My Pebble Watch: First Week Using and Coding

One of my gifts for Christmas was a Pebble “classic” smart watch. I’ve wanted one for a while because the idea of smart watches and other wearable computing devices is interesting to me, but having never had any experience with one, it was hard for me to determine if I’d actually like it. The Pebble Classic is cheap enough ($109 here in Canada, generally) that it’s worth the risk. I’ve had my Pebble for a little over a week now and here are my thoughts.

The Concept

The million dollar questions is why would anyone need yet another device to tell them when they have an email or a text message? It’s a good question and part of the reason why I was not 100% sold on the idea, but here’s what I thought the advantages would be and so far it has worked out as I expected.

The Pebble apps on my phone essentially just forward any notifications that already appear on my phone to my watch. My watch quietly vibrates and I take a look to see if it is something I care about right now. If it is a phone call, I pull out my phone and answer it. If it is almost anything else, it can probably wait until I am sitting down somewhere. Prior to the Pebble, I would have to pull my phone out pretty much every time it went off to ascertain the cause. Some hackey things like assigning different alert tones or vibration patterns to specific apps helped some, but in general I either would not feel the distinct vibration or remember what sound went with what. Pebble allows me to just quickly glance down and be done with it.

My phone now stays in ‘quiet’ mode (doesn’t even vibrate) in my pocket and only comes out when I actually want to do something. An added unexpected bonus to this is that my phone’s battery life has improved because I don’t pull it out and turn on the big ol’ 6-inch HD screen a hundred times a day any more.

Warning: App Overload

I’ve done this with every phone, tablet, and computer I’ve ever had and my Pebble was no different. I have this inherent (and usually mistaken) belief that native apps are going to be somehow inferior to third party, community developed apps. I therefore usually spend the first few days with a new device loading it up with third party apps to replace the native apps instead of spending the time to learn what the native apps actually bring to the table. This almost always means I end up with a wonky, unstable, slow device and the first few days with my Pebble were no exception.

Stage two of this process is to hard-reset the device and then only reload the few apps that I actually need or want and let the nice stable native apps do their job.

Pebble has made their SDK widely available so there are tons of developers and hackers making apps and watch faces for it. The Pebble app store is not curated as far as I can tell, so like the Google Play Store for Android, there are a lot of crap apps to sift through in order to find the few diamonds.

Hacker’s Delight: The SDK

I am a sysadmin, not a developer. While I certainly write lots of scripts and I have taken programming in school, it’s not my area of expertise. Therefore, when I hear that some device has an SDK, I don’t get very excited about it because I know from experience that getting a development setup working is usually a huge pain in the butt and takes tons of my time fumbling around with things I am not experienced with before I can even attempt to write my first Hello World program.

This is not the Pebble world. In literally 10 minutes, I was writing code and deploying it to my Pebble using the online Cloud Pebble.

Cloud Pebble has an online IDE, online compiler and – get this – one-click compile and deploy to your phone. The deployment uses the Developer Server in your Andoird (and iOS?) app to push code to the phone and run it. It is incredibly painless. The most painful part for me was reaching waaay back in my memory to remember how C handles strings (or doesn’t, as the case is) because C pre-dates even me by a few years. I took C++ in school which is a whole different beast.

I wrote my first watch face and called it Wordy Face (that is an actual screenshot of it running on my Pebble). If you want to laugh at my terrible C code you can grab it from Github here, or you can go ahead and use the watch face on your own Pebble by installing it from My Pebble Faces here.

My App List

The apps I ended up deciding I could not live without are as follows (all are available from the Pebble app store):

  • YANC (Yet Another Notification Center): There are a ton of third-party notification apps to replace the native Pebble one. They are all clunky and slow and load a lot of useless stuff into the watch, but YANC is actually pretty good. It allows a very broad range of control over things like the text size and icons of notifications sent to the watch and I have chosen it over “Notification Center” and “Pebble Navication”
  • Pebblets: You can only load 8 applications to the Pebble at any given time. I rarely go over 5, but Pebblets crams 6 different apps into one app “slot” so it is indispensible if you want things like a timer, a calendar and a calculator at your finger tips.
  • Music Boss: The Pebble music app doesn’t seem to know how to talk to Spotify despite having a setting to select Spotify as the music app on the phone. Music Boss addresses this short coming and allows you to remote control pretty much any music app on your phone with your Pebble. This is handy for me when I am running because I don’t have to pull out my phone to skip a song, pause it, or adjust the volume.
  • Dashboard: The whole point of the Pebble is to reduce the amount of times I have to pull out my phone to do stuff. Dashboard is essentially a utility remote control for the phone that allows me to do things like turn off the wifi and lock the screen from my wrist. Two things I do surprisingly a lot.
  • Wordy Face: I wrote it…I gotta use it, right?