Nerdtastic Programmable Alarm Clock

Waking up in the morning is an ongoing struggle for me. I’m a snooze button addict. My kid was screaming at 2:30am. I’m biologically inclined to sleep until noon. I’ve got early meetings some days.

If it weren’t for all the property damage, I’d rig a cold bucket of water to splash me into consciousness each morning. Instead, I set a complicated labyrinth of alarms on my iPhone:

Complicated iPhone alarms
The snooze time is nine minutes, so these build on each other to the point of cacophony

The economist in me knows this problem can be solved with the right mix of incentives. The programmer in me knows this problem can be solved with the right mix of technology. Neither knows exactly what that mix is. It would be cool if I could experiment with some ideas to figure that out.

I’ve had this in mind for a while, so there are a lot of possibilities I want to try:

And that’s just the beginning.

The Project

Build an alarm clock (probably a software one, but hardware would be slick) with extension points so my nerd self can go crazy programming it to wake up my sleep-deprived self. I’m not proposing an alarm clock that does any single thing above so much as an alarm clock platform that makes some of those ideas possible.

For example, it should have a way of varying the wake-up time based on some criteria I specify (perhaps via an HTTP call). And a way to display content (text, audio, or even video) from an arbitrary source. You might even be able to integrate it with a service like Zapier to trigger actions or receive input.

The Competition

There are a ton of alarm clock apps out there, to say nothing of actual, physical alarm clocks. I’m sure some of them are amazing. I’m sure some of them even implement the ideas I’ve got. But are any of them truly programmable like this? Coders gonna code, man!