@streakmachine Kernighan and Plauger's Elements of Programming Style is great. To the point unlike say Code Complete or Clean Code. Thinking Forth and Practices of a Problem-Oriented Language will complete the "we have learned so little" historical background. ;)
Other than that, for OOP intro recommend POODR then GOOS and now 99 Bottles. Working Effectively with Legacy Code is a sadly on-point desk reference. The test double testing wiki is also great.