DEV Community

Cover image for Coding Creatively with... Pebble?
Jake Varness
Jake Varness

Posted on

Coding Creatively with... Pebble?

I have a confession you guys... All of last year when I wasn't writing Java code... I was writing watchfaces for my Pebble Time. In fact, I love writing watchfaces for my Pebble so much, that I created a submission for a programming competition that was a watchface!

I know what a lot of you guys might be thinking:

  • Pebble isn't a company anymore since Fitbit bought them.
  • Smart watches are a dwindling fad.
  • Your Pebble isn't going to work after this year.

While all of those thoughts have their own merit, Pebble will always hold a special place in my heart for one reason and one reason only:

Pebble watchfaces allow me to code creatively!

My journey first started with trying to write an analog watchface. I just wanted to be able to draw arrows on a watchface, so I did! While I liked writing the code, there were a lot of things that I didn't like about this watchface:

  • It was hard to read because I didn't put any landmarks on the watch to tell you which hour you were on.
  • It was hard to find a color combo that looked good. The user was able to pick between 3 different colors for the hour hand, minute hand, and background, and there are only 64 colors you could choose from.
  • It came with a battery indicator, but it was sort of ambiguous if you didn't read the description, and it wasn't exact.
  • It used one of the default fonts that the watch came with, so it didn't look very unique other than the fact that it was so hard to read the damn thing half the time.
  • Other watchfaces did awesome stuff like telling you the temperature, your step count, and the date, all of which Arrowhead didn't do.

I took all of these frustrations out on my next watchface that I called Sessions. This watch allowed you to configure two different colors instead of 3, and it showed you the step count and the weather, and it used a cool looking font called Lobster that I downloaded from Google Fonts. This watchface was a lot more popular, and I was pretty proud of myself!

On the eve of Pebble's 3rd successful Kickstarter, I wrote a much simpler watchface called Kota, that featured another font that I downloaded from the internet, and a battery indicator. This watchface ended up being a lot simpler, both in user experience, as well as to write.

We're now a year or so removed from Pebble being bought out from Fitbit, and I really miss writing watchfaces. The fact that it took only a couple hundred lines of code and very little testing in order to express myself was always so appealing to me. I loved how each watchface was different, how each had it's own unique way of communicating different information to the user, however ambiguous or clear it was for the user to understand.

I also loved being able to write code in C that wasn't absolutely terrible like most of my C homework assignments from college ended up being (I missed the lesson on malloc, calloc, and realloc, and I suck at pointers).

Have you guys ever written anything for Pebble? What about things for other wearables? What were your favorite moments from developing those things?

Discussion (2)

meilon profile image
Christian Arnold

I also wrote watchfaces and apps for my Pebble and later Pebble Time Steel. And even though I was never good with C, the Pebble SDK is easy to use, the Cloud Pebble Platform made it super easy to take things out of the virtual emulator onto my own hardware.

I’m going to wear my PTS until it breaks down, I’m glad that Fitbit “disconnected” the app from the cloud.

jvarness profile image
Jake Varness Author

I couldn't have said it better myself! The SDK and tools they had made C seem more like Arduino.