Instead of using heavy software, one can prefer using very small tools to do one single action. I did this with the birthday program. As a command line program, it has no graphical interface. The user just have to make a text file containing the birthdays and to call the executable birthday.
For instance, say I made a ~/.birthdays as is:
When I launch birthday, the program searches for birthdays within 21 days, which is the default behavior. If there's none, nothing appears. Otherwise, messages about birthdays appears. For instance, I typed birthday -W999 to make it search all birthdays (within 999 days...):
Linus Torvalds is 43 years old in 3 months, 2 weeks and 3 days' time.
Richard Stallman is 60 years old in 6 months and 5 days' time.
Te best is to do something to automatically check the birthdays. Here comes the crontab -e. Just insert the command at the reboot and you will get a local message when something outputs. It's also possible to insert the command in your ~/.bashrc when you connect to the command line.