What are good colleges for computer science?

What do Colleges now teach in BS in Computer Science?

  • 20 years I was taught languages (Pascal, Basic, LISP), data structures and algorithms, and math classes. I would like to know what is being taught in the last 10 years? Are there courses on process and life cycle? Are there Microsoft .Net and Java specific courses? Are there business application development and enterprise computing courses?

  • Answer:

    My school had required courses on general computer science topics, computer organization (i.e., how processors work and interact with memory, etc.), programming language theory, algorithms and data structures, and basic operating systems design. Electives included compiler optimization, graph theory, graphics, networks, and security, among others. Required math courses included calculus, discrete math, and probability and statistics. We were taught to program in Java on Red Hat Linux, although some courses utilized C and C++ as well; the programming language theory course used Haskell. We had only very basic instruction on the software development process and life cycle. But this is a good thing -- that's software engineering stuff, and computer science is not software engineering. We barely had time to scratch the surface of CS, so SE would've just been too time-consuming. (That said, seniors did take a course that involved the development of a software project using extreme/agile programming techniques.)

Ken H at Stack Overflow Visit the source

Was this solution helpful to you?

Other answers

Many colleges and universities now follow the IEEE/ACM Model curriculum: http://www.acm.org/education/curricula-recommendations Cheers, -Richard

Huntrods

You could just pick your favorite university's web site and look at their degree plans and course catalog. http://www.cs.utexas.edu/ http://registrar.utexas.edu/catalogs/ug08-10/ch12/ug08.cr12b.cs-mns.html#computer-sciences-cs

Robert S.

Obviously I can't speak for everyone, but this is from my own experience. I graduated in May 2007 with a BS in Computer Science. Several languages are still taught. My school focused on one language (Java) to teach to new students, but you learned more languages as you advanced. One course in particular was a survey of programming languages and different paradigms (OO, functional, and procedural languages are taught). There was a Software Engineering course that touched on processes. Lifecycle is taught from the beginning, since you can't get far without it. There were business application development courses that used VB.NET as a platform. There were also a few enterprise computing courses that used J2EE. There were also courses in Algorithms and Data Structures Operating Systems Client-Server Programming Network Administration Database Design

Bill the Lizard

I finished my degree 2 years ago. We covered languages (Java, C, Eiffel, Lisp, Prolog), data structures, interface design, statistics, and math. There were theory courses as well (OS basics, machine language). You had some choice courses, so you could take some business courses, but it wasn't mandatory. Nor was the interface design course, but it did cover building business applications, and was a fairly popular choice. http://www.cse.yorku.ca

Elie

15-10 years ago, in addition to the topics you mentioned, I took courses in operating systems, networks, computer graphics, AI, theory of computation, and human-computer interaction. Java just came about at the end of my undergrad years, and .Net did not exist yet. There were no business application development courses of any kind.

Dima

Lots of math, Data Structures, Digital Systems, Computer Architecture, Analysis of Algorithms, general programming language concepts, OS, Software Engineering, and some other specialties as electives. These include things like AI, image processing, graphics, etc.

idontwanttortfm

I finished my degree alittle more then a year ago. While obviously I can't speak for all programs. The curriculum I had was very similar to yours. C++ for most courses including data structures in C++. AI in prolog and python. I had an operating systems course where we used Java, my database course also used Java and JDBC. However, most .net and java specifics I have learned outside of school. My program really focused on CS theory and mathematics.

James McMahon

Purdue University, taught C,C++,Java as primary languages and exposed us Scheme, Smalltalk, Ada, and Prolog. We also got to choose our own languages for certain project and classes, I usually would choose python or ruby. Also, learning and using Linux was mandatory. The classes offered were fairly standard: Data Structures, Networking, Artificial Intelligence, Database, Algorithms, Web Application Development, User Interface Design, Operating Systems, Compiler Construction, and Language design.

mmattax

A lot will depend on what country you're in, and what school you go to. Certainly the basics are taught everywhere that I know of: introductory programming algorithm analysis data structures large project class discrete math programming languages Beyond that, it's largely up to the institution as to how math-/theory-/business-/practical-heavy they want to be. And whether it's a BS or BA.

warren

Just Added Q & A:

Find solution

For every problem there is a solution! Proved by Solucija.

  • Got an issue and looking for advice?

  • Ask Solucija to search every corner of the Web for help.

  • Get workable solutions and helpful tips in a moment.

Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.