I find it easier to cope with audio interruptions rather than visual ones.
I am also not into my visual space being even briefly cluttered with little pop-up windows with events like “you have mail from J Random Spammer”, or “Joe Blow is online”, either.
Years ago I bought a good software speech synth (courtesy of Cepstral) that I use for short notifications like that, instead. (more on how, below)
Given the number of interruptions I deal with and projects I’m on, it’s difficult to keep focus on what’s important.
There are also lots of things that I’d rather do than (for example) pay taxes or bills, and I’ll subconciously do ANYTHING else, no matter the deadline.
So, when I have trouble staying focused, I write my top 2-3 tasks into a ~/.nag file and have a cronjob and script keep reminding me verbally about what I should be doing.
The script, say-nag:
{{ % highlight sh %}} #!/bin/sh SPEECH=“nice padsp /opt/swift/bin/swift -n Amy -m text” #-p audio/volume=9 “ # padsp will mix the audio in with the music TEMP=/tmp/say-nag.$$ if [ -f ~/.nag ] then cp ~/.nag $TEMP $SPEECH -f $TEMP rm -f $TEMP fi {{ % /highlight %}}
Once upon a time I had this script setup as a daemon (the speech synth is a rather large program) but nowadays just running it with nice makes it unnoticable.
The cronjob runs during my work hours. It also nags me heavily towards the end of the work day.
# m h dom mon dow command 10 8,9,10,11,14,15,16 * * 1-5 ~/bin/say-nag 30,45 16 * * 1-5 ~/bin/say-nag
Walla! A built-in mom on my Linux box. If I don’t have anything particularly demanding on my schedule, I delete the file, so it says nothing.
I have audio notifications like this for important email (or at least I did, before dovecot arbitrarily replaced procmail with sieve), as well as new chats and a variety of other purposes - for example, on finishing an article, I have an emacs function, rtb (“Read That Back”) which says the whole piece aloud.
Hmm… I may have to make this be a daemon again…