Software Engineering vs. Computer Programming

<p>So I was checking out FGCU's website, seeing if they had a Computer Science major, and they didn't. However, they had two majors that caught my eye, and I was wondering the difference between them.</p>

<p>One was Software engineering, part of the SOE. The other was a CIS major with a concentration in Computer programming, which was part of the School of Business. The SoftE curriculum looked a bit more challenging in terms of math courses. </p>

<p>Which is most similar to a "normal" Computer Science degree at another university? And which would offer the best job prospects?</p>

<p>Software engineering is very similar to a computer science degree, but instead of some higher-level math / cs electives, you take some software process classes instead.</p>

<p>Software Engineering is the closest degree to CS. I don’t know much about CIS but it doesn’t seem that related to CS.</p>

<p>Software Engineering is how to program if you cannot :slight_smile: (not my quote). In Software Engineering Land, all the pieces work as expected, all the design documents were written by skilled Software Engineers with English minors, and there are actually unicorns in the lab…</p>

<p>Having said this, I agree with the other posters. Depends on what you want to do though…</p>

<p>^ what do you mean by “Software Engineering is how to program if you cannot?”</p>

<p>What if I wanted to work for the government (DoD, NSA, etc)? Should I just go somewhere with a normal CompSci degree instead lol?!</p>

<p>Without looking at the particular programs in question, a CS degree will likely have some EE and more advanced math classes involved. It’s nice to know about that kind of stuff, but it’s not usually required to do software engineering.</p>

<p>To me, software engineer is a pretentious title for computer programmer. Kind of like “Sanitation Engineer vs. Garbage man” or “Domestic Engineer vs. Housewife.” When people ask me what I do, I say programmer rather than software engineer. (People over 70 y/o then ask me which television station I work for.)</p>

<p>

</p>

<p>I’d go for the CS degree in that case. When I used to work in defense, there always seemed to be some kind of hardware and/or advanced algorithms involved. On the other hand, Edward Snowden apparently didn’t even need a high school degree.</p>

<p>Simba- He had past Army experience I believe. Would the CIS- Programming degree be more beneficial for your own devlopment company due to the business classes involved?</p>

<p>A CIS major in a business school is usually for those looking at MIS/IT type of jobs managing computers and their software, rather than designing computers and their software.</p>

<p>Of course, it is relatively common to self-educate the ability to write computer programs and other CS knowledge. But if you are looking into formal education, you probably want to find a CS major degree program.</p>

<p>Nick0726, I was just looking at the CIS curriculum for Florida Gulf Coast, and the CIS program with a computer programming concentration would be very marketable.</p>

<p>Honestly, the business classes wouldn’t be that valuable. It’s the technical classes that will get someone a job.</p>

<p>

</p>

<p>I’ve got a couple of degrees in CS, and a couple more in other engineering disciplines, so I feel I’m qualified to add to Prof. Dijkstra’s quote.</p>

<p>I can teach anyone how to calculate a concrete beam or solve a pallet stacking problem. That’s easy. Cookbook. Programming, depending on what branch of Computational Theology one follows, is not like that. Some people have the “gift” and some don’t. Those of us with the gift find it pretty easy to learn new stuff, troubleshoot existing stuff, and get work done much faster than competent, but “ungifted” coders. </p>

<p>Software engineering is good, but talent wins out over technical qualification every time. For example, my “talent” is more about learning new stuff quickly, and using it to get the work done, rather than focusing on a handful of technologies and becoming super-good at them. Two weeks ago I had to learn PHP and the Facebook Graph API like instantly for a work project. Nothing to it. Now I’m not going to claim that any of this is engineering, but engineering assumes that stuff generally works, and when it does not, that normal common mortal techniques can be used to debug things. That does not always happen…</p>

<p>Software engineering teaches that pretty much anyone can learn how to program, and that programming is but a small part in the software development process. I don’t disagree with either of those, but there’s a lot more individual characteristics at play there. </p>

<p>Read this for more details: [E.W</a>. Dijkstra Archive: On the cruelty of really teaching computing science (EWD 1036)](<a href=“http://www.cs.utexas.edu/~EWD/transcriptions/EWD10xx/EWD1036.html]E.W”>E.W. Dijkstra Archive: On the cruelty of really teaching computing science (EWD 1036))</p>

<p>I see writing software, especially strange types of software, as an art much more than a science.</p>

<p>At my company, a ‘software engineer’ is someone who might write code for computer chips or instrumentation. A ‘computer programmer’ (like me) writes code for business processes like payroll, inventory, accounting, reports, etc. Like someone above said - I work in the IT department, while the software engineers work in the engineering groups. My actual degree was Computer Science, with a concentration in Business Programming.</p>

<p>As a software engineer with 23 years experience, I am going to say the following:</p>

<p>1) ALWAYS select a Computer Science or Computer & Information Science degree over a Software Engineering degree as far being a student. An employer can teach a CS grad (or Math, Physics, Engineering majors) software engineering principles. Employers do not have the time to teach Data Structures, Algorithms, Programming Language Theory, Operating Systems Principles, Databases and Network Theory.</p>

<p>2) Each employer has their “own flavor” of software engineering. Boeing slightly differs from Northrop Grumman which differs from SAIC which differs from General Dynamics which differs from the various DoD government agencies.</p>

<p>3) The software engineering process is very similar to the system engineering process of: Requirements Analysis–>Design–>Development–>Testing–>Deployment–>Sustainment. I am not sold on having 15-week semester courses on each phase. Hell, some of your projects at your job won’t have phases that long.</p>

<p>Most hiring managers will think “I need that Java/C++/Python wiz right now…I’ll get what’s-his-name/what’s-her-name to coach them in software engineering”.</p>

<p>So you’d go with the CIS-Programming degree, Global?</p>

<p>

</p>

<p>When offered as Computer & Information SCIENCE…not Computer Information Systems…big difference in courses taken. Check out the Ohio State and/or U-Delaware CIS programs.</p>

<p>For reference, are these the two degree programs?
[Software</a> Engineering (B.S.)](<a href=“http://www.fgcu.edu/Eng/sebs/programreq.asp]Software”>http://www.fgcu.edu/Eng/sebs/programreq.asp)
[Computer</a> Information Systems (B.S.)](<a href=“http://www.fgcu.edu/CoB/cisbs/programreq.asp]Computer”>http://www.fgcu.edu/CoB/cisbs/programreq.asp)</p>

<p>Neither is really an adequate substitute for a good CS degree program.</p>

<p>About the best you can do at FGCU is to include the following courses in whatever degree program you choose:</p>

<p>CDA 3104 Comp Org’n & Assem Lang Prog
COP 3530 Data Structures
COP 4610 Operating Systems
COT 3400 Algorithms</p>

<p>The following courses may also be helpful, depending on your subarea of interest:</p>

<p>CDA 4150 Computer Architecture
CDA 3200 Digital Systems
CEN 3031 Software Engng Fundamentals
CEN 3213 Embedded Systems Programming</p>

<p>ucbalumnus- Those are the two programs. I’m leaning towards avoiding FGCU and going somewhere with a normal CS program.</p>

<p>Yes, it would be better to find a normal CS major with a full set of course offerings. Why was FGCU being considered in the first place (especially from Indiana)?</p>

<p>Grandparents live nearby and parents want to!</p>

<p>

There really isn’t any gift, unless you mean it in terms of intellect. Computer science is learned like any other subject.</p>