I find myself needing calculus only when a programming project involves calculus. It's a useful skill to be good with calculus, but it's not necessary to know. It's probably good to have students learn rudimentary calculus to sharpen their abstract thinking skills, anyways.
+1 to this! I'm a CS undergrad and my mind is blown when I realize how dumb our machines are sometimes (and doubly blown when someone at Google or Microsoft talks about how they've managed to wrangle that stupid technology in incredibly clever ways to do something pretty neat). Watson is an impressive technological feat because it's the first major step towards computer understanding of English semantics. Which is crazy, because English has no formal semantic definition at all!