Best Practices in CS Education – Part – III: Curriculum’s Emphasis on Diversified Educational Experience and Students’ Choices

Posted on March 24, 2012


Author:   Sanjay Goel,


All great universities offer undergraduate programs that offer broad-based general education in well diversified knowledge domains. When we look at the course distribution for computer science/computer engineering students at some top universities, e.g., MIT, Stanford, CMU UC Berkeley, etc. we notice that the students are required to get a diversified exposure to multiple disciplines of  HSS, Maths, Science, CS and Engineering, and even Arts.

At most of these top universities, often more than 40% curriculum requires students to make choices between few specified core courses, approved electives, or free electives.   Universities like Georgia Institute of Technology and Purdue go a step ahead in increasing student’s choices by offering options of multiple thread and track respectively.  In contrast, the Indian students are typically given very limited choices in their curriculum. In the curriculum of most Indian universities, 80-90% courses are declared as compulsory.  One of the main purposes of education must be to learn to make choices.  Our conventional approach fails to sufficiently address this need.   Regulatory bodies like UGC and AICTE also do not play a constructive or catalytic role in this regard.  It is time that Indian universities start restructuring their curriculum by giving more choices to the students.  Perhaps, Knowledge commission or UGC should also provide the leadership in this direction.

Further, at most of  top universities, a minimum of 7-8 Humanities and Social Sciences (HSS) courses are necessary for all computing students.  At some universities like Georgia Institute of Technology, for some options, this number goes up to 10. With the help of the option of free/open electives, an interested student can further increase this number.  In addition to HSS courses, MIT ensures that their students also take at least one course in arts. Georgia Institute of Technology has included a compulsory course on wellness for its students. At Stanford, it is necessary to take courses in foreign languages and education for citizenship. A course in ethics or professionalism is necessary at universities like UC Berkeley and Georgia Institute of Technology.   

However, in India, our universities have the habit of de-emphasising HSS courses.  Often the HSS slots are used for teaching management courses.  A good exposure to HSS and Arts is very important for all engineers more especially computing professionals to help them deepen their critical thinking, system thinking, and creative thinking. This exposure helps in enhancing a person’s sensitivity to societal concerns and sustainability. It helps engineering students in enriching their approaches and skills in problem identification, problem formulation, problem solving and also holistic evaluation.  With reference to computing discipline, a lot of interdisciplinary work is happening at the edges of computing and HSS and Arts. In a few future posts, I shall give an overview of such work and even interdiscipinary educational programs at various universities inlcuding CMU, Georgia Institute of Technolopgy etc.  Under a big UNDP funded project,  Indira Gandhi National Centre of the Arts, new Delhi established the first “Cultural Informatics Lab” in India in 1995. During 1995-2002,  I was fortunate to be part of the pioneering initiative by Govt. of India and UNDP.   Department of IT under Ministry of Communication and IT, Government of India,  has also funded various projects in this area.     In the last few years, IIIT Hyderabad has started research program in Cultural Informatics.   A good HSS exposure also helps in preparing more responsible citizens.  Hence, this deficiency also needs to be urgently addressed by Indian curriculum designers.

Here I am giving a brief overview of the some top universities’ course distribution for computer science/computer engineering students. 

A).   MIT:  All BS (CS) students in the department of EE and CS need to complete the following requirements.

Total requirement:  34 courses (including project and lab)

Each unit represents about 14 hours of work per term. Standard courses are 12 units each where units indicate the total number of hours spent each week in class and laboratory, plus the estimated time that the average student spends each week in outside preparation, for one regular term. Many courses have integrated lab/design/fieldwork. Some special lab courses are also required

  A.    Common requirements

  1. Total General Institute Requirements (GIR): 17 courses

                    a.     Science  requirement:    7 courses

                                              I.            Maths           2 courses 

                                              II.            Physics         2 courses

                                               III.            Chemistry   1 course

                                                IV.            Biology         1 course

                                                V.            Lab                 1 course

                        b.     Restricted Electives in Science and Technology: 2 Maths courses

                         c.      Humanities, Arts, and Social Sciences (HASS) Requirement: 8 courses

                                              (Including two communication intensive courses)

                                      I.            Distribution Requirement:   3 courses

                                              –   Humanities                 1 course

                                               –  Arts                                1 course

                                                –  Social sciences           1 course

                                     II.            Concentration Requirement :  3/4 courses

                                     III.            HASS Electives:  1-2 courses

       2.     Minimum unrestricted electives:  48 units

  B.    Major specific  courses:    Total required units Beyond the GIR:  180 (8/9 core courses, lab course, 2 Advanced undergraduate courses, professional communication (UAT), and capstone project (UAP))

B).    Stanford University:  All BS (CS) students need to complete the following requirements.

Total requirement:  180 units through 4 quarters/year

(1 unit = 3 hrs. of actual work/week for an average student)

         A.    Common requirements

                           i.      Foreign languages:              3 courses

                           ii.     Introductory Humanities: 3 courses

                           iii.     Citizenship:                             2 courses

                            iv.    Writing and rhetoric:          3 courses

                            v.      Disciplinary breadth:           5 courses (1 each in Engineering and Applied Sciences, Humanities, Mathematics, Natural Sciences, and the Social Sciences)

       B.    Major  specific requirements

                               i.     Mathematics:                                        26 units  (5 courses including 2 CS maths courses)

                               ii.     Science:                                                  11 units (3 courses)

                               iii.    Engineering fundamentals:             13 units (3 courses)

                                iv.    Technology in Society:                       3-5 units (1 course)

                                  v.   Computer Science Core:                   14 units ( 3 courses)

                                  vi.  Computer Science depth:                                26 units  (4-5 track courses, 2-3 restricted electives)

                                   vii.  Capstone project:                                        03 units (1 course)

      C.     The remaining required units are earned as per student’s choice.

C). UC Berkeley : All BS (CS) students need to complete the following requirements.

Total requirement:  120 units (1 unit = 3 hrs. of work/week or 45 hrs of total work in a term for an average student)

  1. Common requirementsa.    Breadth requirement: 7 courses (1 each in Arts and Literature, Biological Science, Historical Studies, International Studies, Philosophy and Values, Physical Science, Social and Behavioral Sciences)b.     Reading and Composition:  2 coursesc.      Foreign Language:  1 course

              d.      Quantitative reasoning: 1 course (Maths/Statistics/CS)

     2.      Major  specific requirements

                 a.       Natural Sciences:             11 units

                  b.      Maths:                                  5 courses (including 1 CS maths course)

                 c.       Technical engineering:   45 units

                  d.      Ethics requirement:        1 course                                              

     C.         The remaining required units are earned as per student’s choice.

D). CMU:   All BS (CS) students need to complete the following requirements.

Total requirement:  360 units   (As a guideline, three-credit courses from other universities equate to 9-unit CMU courses)

  1. Maths/Probability:                                          5 courses
  2. Engineering and Natural Sciences:            4 course
  3. Humanities and Arts:                                      63 units (typically 7 courses)
  4. Computer Science:                                          13 courses
  5. The remaining requirements are completed through electives and other courses

To ensure  a well diversified educational experience,  it is essential for all BS (CS) students of CMU  to complete a minor in another field of their choice.

E).   Cornell:  All BS (CS) students need to complete the following requirements.

Total requirement:  122+ Credits

  1. Liberal studies                   18+ credits
  2. Writing seminars              6 credits
  3. Maths                                   12 credits
  4. Physics and Chemistry   16 credits
  5. Engg.  distribution            9 credits
  6. Courses outside major  09+ credits
  7. CS courses                          44+ credits  (Including project and electives)

F).   Georgia Institute of Technology:

  1. All BS (Computer Engg.) students need to complete the following requirements.

   Total requirement:  130 Credits + 2 credits of wellness

  1. Language/Humanities/Social Sciences    8 courses (24 cr., core + electives)
  2. Wellness                                                              1 course (2 cr)
  3. Maths                                                                   5 courses (23 cr., core + electives)
  4. Science                                                                 4 courses (15 cr., core + electives)
  5. CS & Engineering                                              19+ courses  (63 cr., core, electives, project)
  6. Approved electives                                         3 courses (9 cr)                 

           Overall, the students have 14+ electives or choice based subjects comprising  5 credits. 

  1. All BS (Ccomputer Science) students need to complete the following requirements.  Georgia offers tremendous flexibility to its BS (CS) students.  They have identified 8 threads of CS discipline and students can choose any two to complete their degree.

Total requirement:  126 Credits

  1. Wellness                                              1 course (2 cr.)
  2. Technical Communication            1 course (3 cr.)
  3. Science                                                 3 courses (12 cr. core)
  4. Language/HSS                                   8-10 courses (24-31 cr., core + electives)  (Thread specific 2-5 core, 5-6 elective)
  5. Maths                                                   5 -8 courses (Thread specific 18-28 cr., core + electives)
  6. CS & Engineering                              15-20 courses  (44-60 cr., thread specific core, elective, project)
  7. Free electives                                    2+  courses (Thread dependent 06-16 cr.)

 In addition to the choice of 2 out of 8 threads, the students also have 14-18 electives or choice based subjects comprising 41-55 credits depending upon thread choices.

G)  Princeton:

All Engineering students need to complete 36 courses including the following general education requirements:

1.  Maths:   4 courses

2.   Physics:  2 courses

3.   Chemistry:  1 course

4.   Computer science: 1 course

5.   Writing seminar:   1 course

6.   Humanities and Social Science:  minimum 7 courses distributed in six  areas listed below:

  • Epistemology and Cognition 
  • Ethical Thought and Moral Values 
  • Foreign Language 
  • Historical Analysis
  • Literature and the Arts 
  • Social Analysis 




Posted in: Uncategorized