Android: If you'd like to be able to tell who's emailing, texting or calling you without even taking your phone out of your pocket, free app WhoIsIt will let you assign specific ringtones and vibration patterns to each contact on your phone.
You can customise call ringtones on Android, but you have to go through each individual contact in the address book, which can get time consuming and annoying. WhoIsIt not only lets you customise contact-specific ringtones from one central location, but will even let you give them specific rintones and vibration patterns for email, SMS and more. It's super simple to use too: just open it up, pick your contact, and choose which app you want to customise their ringtone for (Gmail, SMS, MMS, calls, Google Talk, and even previously mentioned K-9 Mail). Then just pick a ringtone or vibration pattern from the list, and that will be what plays whenever they contact you. If you prefer, you can even set your phone to speak their name out loud as they call.
Note that in order to use this app, however, you need to disable the app's default notification system. So after installing, make sure you head into the settings for Gmail, Messaging, phone calls, and Google Talk and turn all notifications off. WhoIsIt will manage your notifications for un-customised contacts too - just hit the Menu button on its main page to access your global ringtone preferences.
WhoIsIt is a free download for Android only. There's also a $1.98 pro version in the market with a few extra features.