Usually books are interesting and useful. CS seems to be a different thing, as most things are available online for free, and there is a large community. Bookstores are still fun to go to (although I feel like they may be a dying breed).
It always helps to work on exercises (for stuff like math), but for CS, to pick something interesting you want to do in a language(s), but is small - and that can be a hard part. It's getting harder for me to figure out what to use a language for - picking up a language's syntax and nuances is relatively easy (okay, excluding Haskell), but it's worthless unless you have something you want to work on.