Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!uwm.edu!ogicse!uidaho!groucho.mrc.uidaho.edu!windley From: windley@ted.cs.uidaho.edu (Phillip J. Windley) Newsgroups: comp.software-eng Subject: Re: engineer training (was Re: bridge building) Message-ID: Date: 2 May 91 17:27:17 GMT References: <1245@grapevine.EBay.Sun.COM> <33848@mimsy.umd.edu> Sender: @groucho Distribution: na Organization: University of Idaho CS Dept. Lines: 43 In-Reply-To: cml@care.cs.umd.edu's message of 2 May 91 01:07:04 GMT Nntp-Posting-Host: panther.cs.uidaho.edu In article <33848@mimsy.umd.edu> cml@care.cs.umd.edu (Christopher Lott) writes: May a computer-scientist-by-training grad student ask about this in more detail? I'm certain you have something very concrete in mind when you refer to being trained by an engineer, but what? I have a buddy who is an M.E.; what did he get in his 5 years of B.S.M.E. education that I missed in my 5 years of B.S.C.I.S. and continuation in grad school? (Other than diff eq ;-) This is a good question. I have an undergraduate engineering degree and worked as a mechanical engineer for 5 years before going back to grad school to finish a PhD in CS. On one hand, I'd say that one can't simply perform a diff on the EE and CS curriculum and conclude that real engineers take loads of calculus and CS majors only take two semseters, etc. There's more to it than that or simply putting engineers in the classroom (many CS professors started out as engineers). Its starts with knowing how to engineer software and then teaching it. There are some very good engineering techniques that CS majors never even hear about (or hear about too late in their senior year). There are others that we (CS/SE people) don't have a clue how to do. I suggest Mary Shaw's piece in IEEE Software (Sep or Nov, 1990) for an interesting perspective. One the other hand, there must be something since I talk to a number of companies that hire EE's to write software for them because years of experience have taught them that they get better code that way. Why? I don't know. I suspect that some of it has to do with this attitude that I find is all too prevelant in CS that software can't be engineered since its different than everything else that's ever been done. You'd be surprised how many CS people think an OS is the most complicated thing man has ever built. I'd like to show them an aircraft carrier under construction. If you want to measure an OS's complexity, consider that Ultrix comes an a CD that would hold about 75 minutes worth of music. Granted, music is written at a much (MUCH) higher level abstraction. -- Phil Windley | windley@cs.uidaho.edu Assistant Professor | windley@cheetah.cs.uidaho.edu Department of Computer Science | University of Idaho | Phone: 208.885.6501 Moscow, ID 83843 | Fax: 208.885.6645