I think it also depends on where you want to work. A lot of large companies look for CS degrees when they look for developers or tech jobs. At job fairs at Purdue, companies such as Google, Lockheed Martin, IBM, etc were all very eager to talk with CS majors. You do a lot of programming in CS but you also learn the theory behind it. This includes theory of efficient algorithms, encryption/security, good database design, system architecture/design, and many other things. To develop new technologies, you need to understand the theory of the existing technology. By learning the theory behind how a system works, you can fairly easily pick up many of the practical 'real world' aspects of it as well because you understand how compilers work (I wrote one for a class), how operating systems work and handle things, etc. However, with some of the new really highend languages such as C#, the compiler handles much of the optimizations and such that make the theory unnecessary when writing regular apps. However, if you were to write the programs that these technologies require to run (such as the java runtime environment with its just-in-time compiler, or the .NET runtime which interprets the .net intermediate language), you need to understand the theory. Also, I haven't really heard much about a Software development with networking major... so I do not know if it has further educational opportunities. However, I do know that you ca get masters and PhD's in CS.
I am not sure (because I am not familiar with it), but I suspect that the Software development with Networking major will deal with a lot of other 'real world' aspects such as project management and business aspects as well as programming. My CS degree did not place a lot of emphasis on project management and no emphasis on the business aspects. I had to learn these aspects at my first job. However, my first job was programming and the others handled the designing and management of the projects.... so either major would have been fine because the job was only programming. I suspect that the Software Development degree would also be better for developing applications for existing technologies and types of programs. So if you were to go to a company that writes software for warehouse management or mapping family trees or anything that only uses existing technology, I think that this major would be better because you would have other 'real world' skills already on hand.
As I said, I am not familiar with the Software Development degree... so I cannot be certain. However, I suspect that which one you want will be determined by what you want to do. If you only want to do software development, go for the Software Development degree. However, if you want to develop newer technologies, you need to understand the theory behind the technology to make advancements in it and, in that case, I think a CS degree would be better.
Anyways, here is a tip. No matter what major you go for, try to get an internship during the summer (assuming you are not taking summer courses). Internships give you experience, which is a VERY big plus on resumes for your first job. Also, it lets you already have your foot-in-the-door if you choose to work at the company you used for your internship after you graduate.
Good Luck
|