This course is no longer offered

69003 Methodology of Computer Science Teaching 1

Author: David Ginat

The course imparts a didactic approach to computer science instruction. The course combines video-taped lectures, self-study of academic material, group work and exercises and includes several mandatory 4-hour tutorial sessions. The material is presented through varied examples combined with writing in pseudocode and in Pascal. Students submit a final paper.

Topics: Introduction - what is computer science?; The computer science curriculum - principles and objectives; curriculum planning and implementation - disciplinary committee, supervision of computers; Fundamental topics in computer science - the concept of algorithms, writing in pseudocode, basic computation model, programming algorithms; algorithm correctness; algorithm complexity; recursion; various programming paradigms; Problem-solving heuristics - abstraction; decomposing a problem into sub-problems, top-down design, bottom-up design, gradual refinement; generalization, analogy, etc.; Misconceptions - misconceptions in the following areas: variables, input statements, output statements, conditional execution, repetition, procedures, functions, arrays, etc.; Teaching and learning strategies: teaching/learning methods - motivating toward concepts/ideas, case studies, demonstrations, games, projects, self-explanation, etc.; teaching in a heterogeneous classroom: pupil grouping in the classroom - group work, individual work, frontal teaching; the structure of a lesson - combining class work, lab and practice at home; writing lesson plans; assessment - writing and grading tests and exercises; Summary.


1This course is being divided into two courses: Teaching Computer Science: Methodology and Teaching Computer Science: Practical Training.

See detailed explanation in the description of the teaching certificate in Computer Science in the Information Guide [in Hebrew].