Specifically I'm studying towards a research degree in HCI (human computer interaction). I have problems however differentiating theory and practice, or science and engineering. I know science is about advancing human knowledge. Providing evidence about something specific in a field. But it's also about theory right? I guess there's different ways to do science; you can prove something with numbers and results, but you can also do science simply by creating a new method or theory about how something should work right? Engineering on the other hand is more about putting into practice the theory, right?
I'd like to have some guidance, perhaps with examples, to what differentiates theory and practice, science and engineering. Also books/articles to read on the subject would be greatly appreciated.
PS: In HCI it's hard to do research with experiments - it's very subject and not quantifiable as other fields of computer science. Perhaps this is why my confusion is greater than one would expect.