The bible for the modern professional programmer. You will find a lot of reviews on the net, so I don't have to write another one. It's about how to write good code, which seems to be still more an art than a science. It should be taught in every CS education. But it isn't. Instead that's where you will find some of the most horrible code anwhere. I barely remember those tree and graph implementations in a Java int[] array ... . Ah, and the variable names ... p q t0 za s ... . As if there is bytes to save ... well our professors learned programming on punchcards.

But, back on topic: "Clean Code: A Handbook of Agile Software Craftsmanship" teaches you, what university courses do wrong and how your code can get better. Go read it. :)