Debian stable is always horrifically out of date. If your machine is a server, you run Debian stable because it won't change out from underneath you and break something. You might have to install a couple packages from backports or build a few things from source to get the relevant versions of whatever it is you intend to use the server for. That's okay though, because it's rare that you have to manually update more than a few packages for any particular use case, and once you've done it the first time, you don't need to do it again until the next release of Debian. The stack, however, is consistent enough that you can make "aptitude update && aptitude upgrade -y" a cron job.
For systems that are used interactively, however, it is best to run Testing or Sid, where reasonably current software is only an aptitude install away. You can try out 2 or 3 different hipster interpreted languages and recent releases of 12 different libraries while using the latest VIM and a modern desktop environment and audio player. (You'll still have to install the web browser yourself though. Alas.) When it comes time to deploy, you only need to go through the make-it-work-on-stable's-ancient-stack dance with the 4 or 5 packages your product actually depends on.