I hate subversion right now.
For reasons outside my control I have to keep development branches open for a long time and therefore I need to sync them regularly with trunk and these merge operations are quite annoying and source of headaches.
Additionally, in the recent months I found myself coding disconnected from a network more often than before and I wished I could commit my changes locally and sync them when back online.
Some perl developers around me have played with SVK in the past, and at the end of last year I came across a blog post reviewing several Distributed Version Control System (DVCS).
And Let's not forget DARCS.
I'll play with a couple of these, but my choice may be simpler as two developers in my team have already started using Git with the git-svn hook between themselves.