La disciplina más exactamente llamada "Ciencias de la Computación" es, en la mayoría de las universidades que he verificado, una ciencia aplicada, similar a las disciplinas de ingeniería; si te especializas en ello, recibirás un "BS" o "MS". El título de CS de Texas Tech fue ofrecido por la universidad de Ingeniería. La disciplina, como se enseña, es principalmente teórica; aprende el concepto de máquinas de Turing, DA / NDA y otros conceptos fundamentales que el programador "día a día" realmente no tiene que seguir sacudiendo en su cráneo. También obtienes una carga de matemáticas más altas; el título de Texas Tech CS, y apuesto a muchos otros también, más o menos te da un menor de Matemáticas para que lo acompañe. Para eso, la mayoría de los títulos universitarios se suman a una gran cantidad de aplicaciones prácticas de bajo nivel; aprendes un lenguaje ensamblador, un lenguaje de tercera generación,
Sin embargo, la mayoría de las personas que codifican para ganarse la vida no son "informáticos"; son, estrictamente hablando, "desarrolladores de software" o (cuando agrega análisis / diseño) "ingenieros de software"; ese trabajo es mucho menos nivel de hardware (aunque debe conocer los conceptos básicos de eso), mucho más análisis de sistemas, diseño y codificación directa. Muchas universidades tienen una pista diferente solo para eso; en Texas Tech se llamaba "Gestión de sistemas de información" y era un título en negocios (BBA / MBA). Esa pista era más ligera en matemática superior (lo que tenía que saber sobre álgebra y cálculo diferencial / integral se exprimió en dos semestres de "matemática empresarial", y no incluía cálculo vectorial / tensorial, álgebra lineal, etc.), mucho más pesado en matemática financiera (un semestre de estadísticas y finanzas, con dos cada uno de contabilidad y economía). Más liviano en sistemas operativos, más pesado en tecnologías de "pila" como bases de datos, servidores web, redes y administración general de sistemas. Más ligero en lenguajes de bajo nivel, diseño de circuitos e inteligencia artificial, más pesado en lenguajes de tercera y cuarta generación, análisis de sistemas y gestión de proyectos. Obtuve este título de Texas Tech y para cuando me fui había tenido al menos un semestre de cada uno de Java, VB, C # y lenguajes web (HTML / CSS / PHP), más un año de OOA & D y varios otros cursos. en gestión de proyectos informáticos.
¿Cuál es mejor en el mundo real? Obtuve el MIS BBA, mi hermano obtuvo el CS BS, y ambos estamos empleados aproximadamente al mismo nivel salarial (ajustando por el costo de vida) que los ingenieros de software senior. Tenía que aprender mucho de la OOA & D requerida en el trabajo, así como girar rápidamente en C # / Java a partir de su conocimiento básico de C ++. Por mi parte, desearía tener los dos semestres de estudio de algoritmos conceptuales que obtuvo mientras estaba atrapado en cursos de gestión empresarial (sí, MIS es un título de "Gestión", pero he descubierto que el 99% de mi conocimiento de cómo aprender y no administrar a otras personas se ha aprendido con el ejemplo).