And I suck at it. Don't get me wrong, I can start a Rails app from scratch and grow the thing; shipping features at an almost linear velocity. It is a skill that I worked my ass off to achieve and am quite proud of it, thank-you-very-much.
But starting with a mess, that is a different story altogether. Think of when the code is already tangled; interpolated SQL in the 1,000 line controller, everything else shoved into the junk drawer of the User model. Starting from there I have a much more difficult time; to the point where I doubt my confidence as a programmer.
That is changing.
Katrina Owen was good enough to give a workshop on refactoring at RailsConf using this online tutorial that she wrote. I am in the process of memorizing the steps and turning my greatest weakness into an asset. Consider doing the same, you won't be sorry.
Katrina has an excellent writeup of her surprise 90 minute live coding session from RailsConf.