I'm actually a big fan of scrum, mostly for the "shield" it gives developers. When a client absolutely needs something done in a sprint, I'd much rather be able to say "Yea we can do that, but we'll need to remove so so and so from the sprint to make room" rather than force our team to work extra hours.