Grumpy Website


a note about consistency. Android has three different volume levels: ring, media and alarm. It’s very logical to have separate controls for ring and media, and it makes sense to have an ability to mute them. Sometimes separately. It’s all fine.

But then you have an alarm volume, which is, I guess, useful sometimes too. But since first two can be muted, consistency suggest that third one should be mutable too. Now you got yourself into a strange situation: alarms, unlike notifications, are completely under user’s control. So if you set up an alarm you expect it go off when the time comes. There’s just no other use case to that.

But if (just if) you’ve muted an alarms before, it won’t. Basically it’s a very strange preference to let you get into your own way. Notice on the screenshot: if alarm is muted, they have to show a little warning about it when you’re setting up a new alarm. But they still let you set up an alarm, even if it won’t ring! It’s like a weird dream where things are not what they are. What would be the point of an alarm if it doesn’t ring?

You would think it’s all fine as long as you don’t touch alarm volume. And most of the time it is very inconvenient to change that, I agree. It’s almost impossible to do by accident. True.

Except for one case: early in the morning, when you’ve just been waken up by your own alarm. When alarm is ringing, phone volume buttons switch to controlling alarm volume. And this is quite dangerous: you just woke up, phone is screaming, and it’s a very natural gesture to turn down a volume a little bit. That’s the exact opposite of what you should do, but to understand that you should understand all the logic that took me four paragraphs to explain. That’s not what you’ll remember 7am in the morning when you’re disoriented and only very basic instincts work.

To sum up: it’s very easy to disable alarms on your phone without even knowing it. The muted alarm mode, being weird and useless, shouldn’t have existed in the first place. It’s a result of following consistency without taking context into account.