Just wondered if there was an app that announces the name of the incoming caller ID like on some Nokia handsets and Windows Mobile?

It would be great to have the phone say outloud then callers name or when a new SMS is received, something along the lines of "New sms from <NAME>".

Does this sort of app exist or is it even possible?

I have used Swift in the past with Asterisk VoIP for text to speech with varying success.