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 LAYOUTWeek 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.