I've read various drafts of this book and it really is fantastic. Rather than just teaching limited domain knowledge in science and engineering, it teaches a way to tackle ill-specified problems and how to wrestle out answers to hard questions.
For the more mathematically inclined there's also a similar previous book by the same author, also available for free as a pdf: http://mitpress.mit.edu/books/street-fighting-mathematics