Does he want to study computer science or software engineering? If he wants to study computer science he should take lots of math, particularly courses that involve proofs. I recommend algebra, graph theory, and combinatorics in particular. I'd recommend Haskell or SML as programming languages since they have so much theory behind them. Haskell has a great community and is really nice to use, but SML is simpler to start with and has a concise definition.