Today I'm at Qcon London, the international software development conference, held at the QEII conference centre in London.
The conference opened with a keynote by renowned computer scientist Tony Hoare. He talked about the science of computing and the engineering of software. The main thrust of his talk was that if computing is a science then software must be engineering and vice versa, and of course he posited that both were.
He made some interesting observations about the difference between science and engineering and that there is a continuum from scientist to engineer.
Science is a long term endeavour, where its theories and proofs have long lasting consequences, once discovered a theory is (potentially) applicable for decades. Whereas engineering is confined to shorter term goals, an engineer is focused on solving a particular problem.
Another interesting point that struck a chord with me was that scientists are concerned with originality, originality is vital to scientists - scientists publish original work. Engineers eschew originality, we want to use things that we "know work". I've worked on a number of projects and on every one the main risks are always in the areas of the project that are novel or original.
More from the conference later.