I understand many people here are either from an engineering background or (like me) from a computer science background. In a lot of discussions people claim that engineering is a better background to have when it comes to problem solving.
I was wondering what are some good resources for computer scientists (or anyone) to learn the principles of engineering?