A coder named Theo Watson has developed a bit of Mac software called Auto Smiley that uses your webcam to monitor your face while you're typing. If you smile, it'll then automatically insert a ":)" into whatever you're writing.
It uses openFrameworks and MPT for the smile detection, and the source code is freely available for those who might want to port it to other platforms - at the moment it's Mac-only. Watson says: "Auto Smiley has many uses from just straight up convenience to enforcing honesty in your online communication :)".
If you'd like to download it, it's available from the Auto Smiley website and works with both QWERTY and QWERTZ keyboards. You'll need to be running a Mac, and have a webcam of some sort, but if you tick those boxes then you're good to go.