Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Indian Institute of Technology Bombay

Design and pedagogy of the introductory programming course

Indian Institute of Technology Bombay and NPTEL via Swayam


College level computer programming is difficult to teach. Failure rates in programming courses are high worldwide, and in India it is noted that students are not able to write simple programs despite completing degrees in computer science.   This course will consider the following questions. • How do you design the syllabus for an introductory programming course? • How do you teach it so that it captures the attention of students? • How do you design examinations, and programming assignments which are fair and encourage students to learn in the desired manner? We will sketch out a course design, and strategies for teaching the course. It will use the C++ languages, but most ideas will be independent of the language.

Important For Certification/Credit Transfer:

Weekly Assignments and Discussion Forum can be accessed ONLY by enrolling here

Scroll down to Enroll

Note: Content is Free!

All content including discussion forum and assignments, is free

INTENDED AUDIENCE: Teachers in Computer Science and related departments
PREREQUISITES: Bachelor’s degree in Computer Science or experience in teaching computer programming
INDUSTRY SUPPORT: Industries that offer training to their employees


COURSE LAYOUT Week 1: The introductory programming course: approaches, experience, and challenges. Week 2: Our approach. Premises and basic ideas. Importance of manual computation and translating from manual computation to programs. Learning outcomes. Choice of language. Week 3: Pedagogical strategies. The first lecture: convey the spirit of the course and grab student attention. Use of graphics and "repeat" statement. Teaching strategies for specific topics. Week 4: Program design. Correctness and reasoning about programs. The continuum from problem solving to algorithm design. Design of assignments and examinations.

Taught by

Prof. Abhiram G. Ranade

Related Courses


Start your review of Design and pedagogy of the introductory programming course

Never Stop Learning!

Get personalized course recommendations, track subjects and courses with reminders, and more.

Sign up for free