Ngành học được gọi chính xác nhất là "Khoa học máy tính", trong hầu hết các trường đại học tôi đã kiểm tra, một ngành khoa học ứng dụng, tương tự như các ngành kỹ thuật; nếu bạn học chuyên ngành, bạn sẽ nhận được "BS" hoặc "MS". Bằng CS của Texas Tech được cung cấp bởi trường Cao đẳng Kỹ thuật. Các môn học, như được dạy, chủ yếu là lý thuyết; bạn tìm hiểu khái niệm về máy Turing, DA / NDA và các khái niệm cơ bản khác mà lập trình viên "hàng ngày" không thực sự phải loay hoay trong hộp sọ của họ. Bạn cũng có được một khối lượng toán học cao hơn; Bằng cấp Texas Tech CS, và tôi cũng sẽ đặt cược cho nhiều người khác, khá nhiều người sẽ trao cho bạn một môn toán nhỏ để học. Do đó, hầu hết các bằng cấp của trường đại học thêm vào một loạt các ứng dụng cấp thấp thực tế; bạn học một ngôn ngữ lắp ráp, ngôn ngữ thế hệ 3,
Tuy nhiên, hầu hết những người viết mã để kiếm sống không phải là "nhà khoa học máy tính"; nói đúng ra, họ là "nhà phát triển phần mềm" hoặc (khi bạn thêm vào phân tích / thiết kế) "kỹ sư phần mềm"; công việc đó ít cấp độ phần cứng hơn (mặc dù bạn phải biết những điều cơ bản về điều đó), phân tích hệ thống, thiết kế và mã hóa thẳng hơn nhiều. Nhiều trường đại học có một ca khúc khác nhau chỉ vì điều đó; tại Texas Tech, nó được gọi là "Quản lý hệ thống thông tin" và nó là bằng cấp Kinh doanh (BBA / MBA). Bài hát đó nhẹ hơn ở môn toán cao hơn (những gì bạn phải biết về đại số và vi phân / tích phân calc được nén thành hai học kỳ của "toán kinh doanh", và không bao gồm vectơ / tenxơ, đại số tuyến tính, v.v.), nặng hơn nhiều toán tài chính (một học kỳ mỗi chỉ số và tài chính, với hai mỗi kế toán và kinh tế). Nhẹ hơn trên các hệ điều hành, nặng hơn về các công nghệ "ngăn xếp" như cơ sở dữ liệu, máy chủ web, mạng và quản trị hệ thống chung. Nhẹ hơn về ngôn ngữ cấp thấp, thiết kế mạch và AI, nặng hơn về ngôn ngữ thế hệ 3 và 4, phân tích hệ thống và quản lý dự án. Tôi đã nhận được bằng cấp này từ Texas Tech và vào thời điểm tôi rời đi, tôi đã có ít nhất một học kỳ mỗi ngôn ngữ Java, VB, C # và ngôn ngữ web (HTML / CSS / PHP), cộng với một năm học OOA & D và các khóa học khác trong quản lý dự án CNTT.
Cái nào tốt hơn trong thế giới thực? Tôi đã nhận được MIS BBA, anh trai tôi có bằng CS CS và cả hai chúng tôi đều làm việc với mức lương tương đương (điều chỉnh chi phí sinh hoạt) như các kỹ sư phần mềm cao cấp. Anh ấy đã phải học rất nhiều OOA & D cần thiết trong công việc, cũng như quay vòng khá nhanh trong C # / Java từ kiến thức C ++ cơ bản của mình. Về phần tôi, tôi ước mình có hai học kỳ nghiên cứu thuật toán khái niệm mà anh ấy có được khi tôi bị kẹt trong các khóa học quản lý kinh doanh (vâng, MIS là một bằng cấp "Quản lý", nhưng tôi đã tìm thấy 99% kiến thức của mình về cách để quản lý và không quản lý người khác đã được học bằng ví dụ).