Useless? I dear to say that number theory is currently the most lucrative field of mathematics. Without number theory, modern day cryptography would not exist and thus everything that depends on secure communication of information would not exist. So forget about commerce over the Internet, bank wire transfers, credit cards, administrating computers remotely and, most importantly, hiding your huge porn collection from your wife.
And, combinatorics is useful for the study of algorithms. It is pretty much the foundation of computer science.
That's a joke, right?
If you want to study graph theory or combinatorics [1], then calculus will be pretty much useless to you, and you'll naturally go years without using it.
Calculus is also useless in some situations in abstract algebra (which are said to have combinatorial character). There are other parts of abstract algebra, e.g. Differential Galois Theory [2], in which calculus is pretty important.
Topology is similar. Elementary topology is part of the foundation supporting calculus, while algebraic topology is one of the tools that's useful when we try to do calculus (or solve differential equations) in non-Euclidean spaces.
Fields making heavy use of calculus include differential geometry, differential equations (ordinary or partial), dynamical systems or control theory. That subsumes most of physics. Fields underpinning (and largely inspired by) calculus include real and complex analysis, measure and integration theory (aka axiomatic probability theory). Also functional analysis, which is a generalization of linear algebra, which is the bookkeeping methodology of calculus in higher dimensions.
[1] The first sentence here says it all: http://en.wikipedia.org/wiki/Combinatorics
> Many pure math classes require no (or very little) calculus.
These are not the same thing (hence my confusion.) Your initial comment seemed to indicate that nobody does analysis anymore, which is just not true at all (look at the most recent fields medal.)
Your other suggestions notwithstanding, you and I live in a very different "real world" my fried.
Tell that to physicists “renormalizing”† it over and over all days long…
† I almost forgot not everyone on HN may know what that is, http://en.wikipedia.org/wiki/Renormalization
Now, on the other hand, linear algebra is almost universally important and is probably easier for a programmer to grasp. I would also suggest picking up a Number Theory or Combinatorics text; they're practically useless, but they're fun and interesting, they'll give you a better idea of what mathematicians do, and you don't need much education to get into them.
My usual advice for building skills is to work on contest problems. See if you can find some AMC12 problems. If those are too easy, you can work your way up. AIME and Putnam would be good next steps (those can be found here: http://web.archive.org/web/20080205091131/http://www.kalva.d... ).