Thehas seen the usage of the word expand and change over the years:
- 1300s: maker of war machines
- 1400s: inventor, designer
- 1600s: builder of public works (civil engineer)
- 1832: steam locomotive driver
- 1900s: clear split into multiple overlapping disciplines (mechanical, civil, chemical, aerospace, biomedical, electrical, materials)
- 1980s: addition of software, meaning the design and implementation of computer programs
- 1990s: addition of dealing with software systems at an abstract level (installation and maintenance of computer systems)
As of the 1950s onwards, the general definition of engineering could be summarized as a technical job needing differential equations and control systems theory to do it properly. The problem is that software engineering, while clearly a highly-skilled profession, does not require differential equations (unless you are working on particular algorithms). Hence the argument with the other disciplines.
So what happened to the "engineering" in software? After all, software engineering does incorporate deep concepts of information theory and information integrity, but it seems to be mainly discrete mathematics. The first computers were analog and thus had plenty of differential equations, but the switch to digital meant that this was all abstracted away at levels above the underlying semiconductor device physics. More recently, however, advances in neuromorphic computing devices which work in analog, and computing methods using large populations of interacting elements (e.g. "neural" networks), have seen the return of differential equations as an everyday part of describing computing systems. These systems also start to blur the line between software and hardware, or at least between algorithm and system architecture. Therefore, in the long term, I think future computing systems will be much more obviously "engineering" than they are now.
This question originally appeared on Quora - the knowledge sharing network where compelling questions are answered by people with unique insights. You can follow Quora on Twitter, Facebook, and Google+.More questions: