3 ms·
Would you agree that chip design, via a EE degree, is in fact an engineering discipline? It uses metrics, tolerances, correctness, etc, just like a civil engin
by Husafan 19y ago
Would you agree that chip design, via a EE degree, is in fact an engineering discipline? It uses metrics, tolerances, correctness, etc, just like a civil engineer has when building a bridge.
Software is simply a layer of abstraction on top of this. For instance, when the USAF wants software for the F-22, you better believe there are requirements and processes just as stringent as Intel's process for designing/developing a CPU. And the people producing that code, imho, are every bit as much engineers as the EE's.
- dewitters 19y agoIndeed, I even agree that the people that write software for the F-22 are engineers, and better use engineering practices to build their software. The requirements are probably pretty strict/well defined. But there is plenty of software out there (maybe most software) like ERP/CRM, desktop/web applications, games, etc ... , where the technical parts are not that important, or aren't really the main problem. The main problem is to try to create the most clear representations of real life items (customers, business processes, human resources, etc.), and make them clear to other programmers in the source code, and to the customers (who most of the time aren't technical). It's probably true that my theory doesn't make much sense for lower level/close to the hardware software development. But for high level things I still think I'm absolutely right ;).
- Husafan 19y agoPoint taken. :) Let me ever so humbly posit, however, that this is the exact attitude that separates software developers from software engineers. If you want to develop software without strict practices, that's just dandy, and you don't have to refer to yourself as a software engineer. It does not follow that software engineering is a joke: http://news.ycombinator.com/item?id=132640 http://news.ycombinator.com/item?id=132640. On the other hand, if you do want to be a software engineer, these practices can be applied to all projects, no matter how small or high-level. I think this may be what your professor was trying to say.