I have big problems waking up when using regular alarm clocks.
I will press the snooze button forever, and ever, and ever more.
I will gladly snooze for two hours. The snooze button is the devil.
When I do get up, out of bed, out of my bedroom, it does not take that long until my brain wakes up though.
So, I figured. what if I can have an alarm system that makes me have to get out of bed? I also realized that because of my manic abuse of the snooze button, I really did not have a regular morning routine. The idea of the solution to this problem, has been with me for a while, but it wasn’t until I found something called zxing, that I could start making it into reality.
zxing is a bar coding scanner library for mobile devices. Being quite lucky, I got access to an android phone to expirement with. The great thing about the zxing lib, is that it integrates into android apps within minutes.
So what is the solution?
Quite simply, the solution is to make you have to leave the bedroom by making scanning a specific symbol the only way to turn off the alarm. This symbol can be printed and put up anywhere you like.
Wait, there is more. The “symbol”, is actually a 2d barcode, containing information about how much time of peace and quiet you get until the alarm starts nagging again. There is of course one of these bar codes which will be the last one, which will turn off the alarm in entirety. I hang my last bar code at the front door, scan it when leaving the house.
Scanning the last bar code will also trigger the application to automatically start playing a playlist I’ve set up on my phone. This gives me the pleasure of leaving for work with awesome music to kickstart my morning.
A morning with “morning routine”
After setting the alarm at night to go off at 7 am, I go to sleep. At 7 AM the alarm starts beeping. I wake up, and I realize I have to go to the bathroom to scan the code. The bathroom gives me 20 minutes of quiet, and I take a shower and get dressed.
The alarm starts ringing at 7:20 , and I scan it at the breakfast table while watching the morning news. This time, the bar code placed in the living room, gives me 30 minutes. I finish my breakfast early though, so I get dressed for work, scan the bar code at front door early, because I did not let the 3o minutes pass.. And off I go to work with some uplifting music to start my day.
The release plan
Unfortunately, I do not have time to make the “morning routine” application into the best it can be, but it’s going to be released at The Gathering 2010, free and open source. This is because I believe the basis of the application is something that can help people who have the same problem of waking up as I do.
It will probably be released through Tumbleweed Interactive, which is a company that my friends and I have started up. Tumbleweed Interactive is really a indie game dev company, so we’re just giving out because we wanted to see if it would be of any use to our fellow geeks.
At this moment though, there is an android version which is not yet 100% release ready, but I’m going to offer a link to the unsigned android apk file. You can download and install it on your android phone and test it out if you want to. Here is the apk .
And last but not least, here is how to generate the codes the program needs to scan:
Select the contents to be text.
For the first bar code that you have to scan in the morning, write: 1:h:m , where you replace h and m with how many hours and minutes you want the alarm to be quiet for.
Following the example earlier, you could write 1:0:20 to indicate 20 minutes of silence , then hang it up in the bathroom.
For the next bar code in your morning routine, write 2:h:m , again replacing h and m with hour and time of your choice (would be 2:0:30 in our example).
You can have as many, or as few bar codes as you want, but they must always have a sequence to them.
For the last bar code which switches off the alarm, simply write “last” , into the bar code generator (without the quotes).
Print these bar codes, hang them up somewhere there’s a decent amount of light, then give it a go!
For the time being, the bar codes has to be scanned in sequence. That is, you have to scan barcode 1 before you can scan barcode 2. The last bar code which turns the alarm off completely, can be scanned at any time though.
Oh and a little dependancy
The application uses zxing’s bar code program to perform the bar code scanning. This can be installed by searching for “barcode scanner” on the android market. This application has to be installed before using the program.
Wow, this was a lengthy post.