Indian Computer Science (CS) & Information Technology (IT) Academic Reform Activism Consolidated Blog Document

A Princeton Sociology Professor's Online Teaching Experience

Download 1.98 Mb.
Size1.98 Mb.
1   ...   35   36   37   38   39   40   41   42   ...   87

A Princeton Sociology Professor's Online Teaching Experience

Net url: has the fascinating experience of a Princeton Sociology professor with online teaching. He had taught the "Introduction to Sociology" course 30 times before and recently moved it to a free online course. I find it so nice to see humanities courses go online.

The article covers many interesting points:

  • The professor wondering where to focus his gaze while teaching?

  • The prof. thinking about how to handle a worldwide student audience without a real idea of what their backgrounds are?

  • How crowd-sourcing technology helped the prof. focus on important feedback from the thousands of feedback messages and how he responded to them in his later lectures.

  • The key problem of grading so many students being tackled by students themselves using grading criteria designed by the professor.

  • The huge feedback gives the professor more feedback on his sociological ideas than he has had in his entire teaching career so far!

  • Mid-term and final exams were hand graded. There was plagiarism detected in the mid-term. The prof. detailed rules to avoid plagiarism before final exam and that seemed to have worked.

  • Less than 5% of enrolled students completed the course. 40,000 odd students enrolled, 2,200 did the mid-term exam, 1,283 did the final exam.

  • But Princeton does not give certificate of completion and that may have not given some students enough reason to take the exam.

Thursday, October 13, 2011

CS & IT Academia: Use Stanford Engineering Everywhere to Teach Programming

Net url:

Stanford Engineering Everywhere (SEE) seems to be a very interesting experiment in Internet Based CS teaching.

It is currently offering 12 of Stanford's engineering courses free to students, educators (and professionals) anywhere & everywhere. And its site states: "A Creative Commons license allows for free and open use, reuse, adaptation and redistribution of Stanford Engineering Everywhere material.":

One of the courses it offers is, "Introduction to Computer Science | Programming Methodology". It provides Lectures (videos & transcripts), Syllabus, Handouts, Assignments, Exams and Software (Downloads)!! The course uses Java as the programming language. That is a pretty complete Free Internet Based Course from one of the top CS educational institutions in the world! What it may lack is a certification that one has passed the course and associated grading. Here's the course home page:

The above course would be relevant for IT Academia as well. The course home page states, "This course is the largest of the introductory programming courses and is one of the largest courses at Stanford." and "The course is explicitly designed to appeal to humanists and social scientists as well as hard-core techies. In fact, most Programming Methodology graduates end up majoring outside of the School of Engineering." So this seems to be aimed at anybody in any science, arts, commerce or engineering stream, who is interested in programming. The prerequisite mentioned is important to note: "The course requires no previous background in programming, but does require considerable dedication and hard work.". There is no easy way to learn programming (for most mortals); you have to sweat it out.

Another course offered is "Introduction to Computer Science | Programming Abstractions" which has a pre-requisite of "Solid performance in Programming Methodology and readiness to move on to advanced programming topics". This course teaches OOP, stacks, queues, sets, recursion, linked lists, trees, graphs, and introduces time & space complexity analysis. And, it is done in C++. It also has Lectures, Syllabus, Handouts, Assignments & Exams. Here is the course link:

Yet another introductory CS course is, "Introduction to Computer Science | Programming Paradigms" which covers advanced memory management features of C & C++, concurrent programming using C & C++, functional paradigm (using LISP), and also has a brief survey of other modern languages like Python, Objective C & C#. The prerequisite is rather elaborate - to me it seems that a person who has "solidly performed" in the Programming Methodology and Programming Abstractions courses will fit the prerequisites. Here is the course link:

These three are the Introduction to CS courses offered at SEE, currently. Nine other courses in areas of Artificial Intelligence, Linear Systems & Optimization and a misc category (iPhone App. prog., Massively parallel processors programming) are also offered. Here are the courses on offer: 

For teaching CS programming, the Introduction to CS courses mentioned above can be a fantastic boon to AICTE/UGC governed university CS departments. They can base their introductory programming courses on the above and can even advertise that these courses are based on world-famous Stanford University CS dept. courses. As educators are free to adapt and redistribute the material (for non-commercial use) CS department teachers can tweak the material as per their needs. Ideally, of course, they should offer their tweaked material back to the Internet community under an appropriate Creative Commons license.

The challenges may be that the teachers are not well versed in programming to understand these Stanford courses. I mean, the teachers will need to understand it to be able to help students with their doubts. If that is the case, AICTE/UGC CS/IT policy makers should create policies encouraging software industry experts knowledgeable in these areas to step in as teachers for these courses. And AICTE/UGC CS/IT policies should reward teachers who master such programming knowledge as against rewarding only those teachers who publish research papers.

The other challenge may be lack of time for students to finish all the assignments and perform well at the exams. If so, then the cause may be that the CS curriculum is skewed towards theory with little importance being given to practical work. A solution will be to remove some theory courses so that students have enough time to complete the Stanford CS programming courses. If they are not willing to do that then students will continue to suffer with an overload of theory knowledge but weak programming skills.

MIT's Open Courseware has 2000 courses!! Its CS & EE dept. courses available for everybody seems to be in the range of a hundred! See: But its programming courses seem to aimed at elite students. It seems they, like the elite IITs in India, treat programming in a generic way not focusing on any particular programming language. Here are the lecture titles for its "Introduction to Computer Science & Programming" course: As a kind-of special case they have what seems to be short-term programming courses like this one on C++:

NPTEL in India has free courses in CSE (Computer Science & Engineering) from IITs mainly, here: I feel it has the same elitist approach that MIT's Open Courseware has. The "Introduction to Problem Solving & Programming" course(s) do not seem to be based on a particular programming language.

I think IITs & MIT can afford to have the elitist approach. But most CS departments in AICTE/UGC governed universities/colleges in India simply cannot take such an elitist approach. For them the Stanford Engineering Everywhere courses seem to be a fantastic boon. I know I am repeating it, but I think it is worth repeating :).


Eklavya Sai Maalik, October 14, 2011 at 10:41 PM

A mail exchange on this post with a friend is posted here: Online Programming Courses: Use MIT's OCW or IIT's NPTEL or Stanford's SEE

Eklavya Sai Maalik, October 18, 2011 at 4:19 PM

Stanford Open Classroom

Has some interesting courses including a Web Applications course.

Friday, October 14, 2011

Download 1.98 Mb.

Share with your friends:
1   ...   35   36   37   38   39   40   41   42   ...   87

The database is protected by copyright © 2020
send message

    Main page