My Site
Supa Dupa Count

A few years ago I posted SupaCount to the Android market. Shortly after that, I stopped posting updates for three years.

The reason for this? I lost my signing key. Even if I wanted to make updates to it, I couldn’t upload it to the same project on the Android Market, at least, not without a lot of grief. So, I just avoided it… though it wasn’t a huge problem. Since I uploaded it, I haven’t gotten one error report in the market dashboard, so it must be working. However, during that time using it myself, I noticed a few features I’ve wanted here or there that would just make things easier.

So, over the weekend, I rewrote the entire app in Scala. Why a rewrite? I dunno, just because I wanted an excuse to learn Scala and Scala for Android. I’ve named this one “DupaCount”. “SupaCount” will remain on the market, but with a blurb that it’s been replaced. During the rewrite, I added the few features that I wanted:

  • If you reboot the phone while a timer is running, it will still alert as expected. This one really is more of a bug, but people probably didn’t notice as most wouldn’t make a timer that runs longer than a few hours. I’ve run timers for up to 2 months before, and though they always kept counting down, they wouldn’t always alert if I had rebooted during that time.
  • There is an easy to see & access button at the bottom of the main screen called “Add Timer”
  • The “description” field in the Add Timer dialog has been made optional. If you leave it blank, it will default to a display of the timer time. This will make it much easier to add a timer.

Anyway, the app can be found here:, and the sourcecode can be found here:

Filed under: Programming, Android, Scala

From Thorsten on Feb. 15 @ 12:25 a.m. 2012

Hi Adam,

nice to see the "new" app. I still would love the option to have the alarm only vibrate n times, then stop.

It would be very practical for talks or activities which have multiple "sections".Put your handy in your trouser pocket, have the alarm go off after 10 minutes, vibrate, then another alarm after 30 minutes, et al.

Keep up the good work.
From synic on Feb. 15 @ 8:11 a.m. 2012

I like the idea, I'm just trying to think about how to implement it without crufting up the interface for the majority of users.

Any ideas?
From Thorsten on Feb. 15 @ 8:53 a.m. 2012

Maybe put in a setting 'type of alarm' which toggles between two options?
From synic on Feb. 15 @ 8:55 a.m. 2012

So, you don't want them to be linked in any way. You just want them to only alert a few times?
From Thorsten on Feb. 16 @ 4:43 a.m. 2012


a general setting of "vibrate only n times" would be enough for me. I think there's no need for any linkage since you can start more than one alarm at the beginning.
From Peter on March 16 @ 9:18 a.m. 2012

Hi Adam,

thanks for recreating your program from ashes :) I was wondering why there wasn't any updates for such great counter application. I have even sent you email about possible updates but never got a reply.
I have even started to learn how to make Android apps just to recreate it :P
Lucky for me now I don't have to. Any possibility to release also source codes of SupaCount for learning purpose? Have no knowledge of Scala to check the current ones.
The only thing I miss is possibility to set an multiple alarms then this would be complete package.
Anyway if you want more feedback from me just contact me via email.
Once again thanks for great app. Have been using SupaCount since I bought my new phone :)
Regards Peter
From Peter on March 16 @ 9:20 a.m. 2012

Ah, just noticed link to SupaCount at bitbucket. Going to check it :)
From synic on March 18 @ 7:31 a.m. 2012

DupaCount is up there too :-)
From Peter on May 6 @ 11:26 p.m. 2012

Hi again,
Would be possible to add also days while setting up the counter?

Add a comment:

Optional, for comment reply notifications
Note: If you enter your email address, you will be subscribed to this article and will recieve comment updates via email. This is the only thing your address will be used for. A link will be provided at the end of each email that will allow you to unsubscribe should you need to, or you can go to to unsubscribe from any/all updates.