Using unstable implies you "know what you are doing". You have to be able to fix problems if they occur. Unstable tends to break occasionally in a major way. Not everyone has this level of expertise. In general, I advise people to run testing, which practically never has the major problems that unstable has, since problems with packages typically get caught on their way through unstable. I think this is a case of, if you have to ask, you shouldn't do it. :-) Also, using testing is better towards the end of the release cycle, once it is frozen and on route to becoming the next stable.
Having said that, why not run stable? I do. If you want more up to date package, you can backport to stable to a limited extent. There are some packages available at the official backports site, or you can do it yourself.