i started a degree in cs last year and i noticed: most cs people i met @ my university have BIG problems with getting their hands dirty by writing some code. excellent in math, but not able to write some simple for-loops. finishing university without being able to code is kind of poor...
but i agree - abstraction is very important to handle complexity.