Period 1: Introduction to Programming

Language: English
Dates: 26 July – 6 August 2021


Course Description

A general introduction to programming using the Python programming language. Explore key components of problem solving using logically ordered steps and apply them to problems across disciplines. Gain a solid foundation in algorithmic design of programs and implementing them in Python.

Scope and Objectives

Python Coding Summer Academy is targeting high school students who are interested in Computer Science and coding. Attending such a program not only provides students personal enrichment, but also helps to develop ‘algorithmic thinking’ to handle significant challenges. The Summer Program focuses on teaching the creation of computer algorithm development, numerical computations, data visualization and data analysis using Python.

Faculty
Buket Yüksel Lecturer Department of Computer Engineering

Buket Yüksel is a Python instructor at Koç University. She has more than 10 years of experience in Python programming language and used it on her research during her Ph.D as well. She has been teaching UNIV199 (Python) Course for 4 semesters at Koç University. Her current research is about Object Tracking using Deep Learning. Her research interests include Neural Networks and Reinforcement learning.

In a world where computers and coding are having a wider application area every day, computer programming literacy is becoming more and more important. This Winter Program aims at giving students from non-technical majors literacy of computer programming, so that they can use those skills in their professional life to build more efficient solutions to real-world computational problems.

Another aim of this course is to give students the means of breaking down complex problems to smaller parts and solving the overall problem by finding solutions to the small components.

Topics to Be Covered

  • Programming structure overview with Karel the robot.
  • Variables, constants, operators, expressions.
  • Flow control (selection structures).
  • Repetitions (loop structures).
  • User-defined functions.
  • Strings, lists, dictionaries, tuples, nested structures.
  • File processing.
  • Turtle Graphics.
  • Plotting.
  • Object oriented programming.

Course Outline

Week 1

26 July 27 July 28 July 29 July 30 July
10:00-10:50 Extracurricular Activities Lecture1: Introduction to Python Extracurricular Activities Lecture7: Karel Control Flow Extracurricular Activities
10:50-11:10 Break Break
11:10-12:00 Lecture2: IDE Installation Lecture8: Control Flow Exercises (Group Work)
12:00-13:00 Break Break
13:00-13:50 Lecture3: Meet Karel Robot Lecture5: Karel – Loops Lecture9: Variables, print, input, math library Lecture11: Functions
13:50-14:10 Break Break Break Break
14:10-15:00 Lecture4: Karel Robot (Exercises) Lecture6: Loop Exercises (Group Work) Lecture10: IF Statements Lecture12: Functions (Exercises)
15:00-16:00 Break Break Break Break
16:00-17:00 Extracurricular Activities Extracurricular Activities Extracurricular Activities Extracurricular Activities

Week 2

2 August 3 August 4 August 5 August 6 August
10:00-10:50 Lecture13: Strings Extracurricular Activities Project (Group Work) Extracurricular Activities Extracurricular Activities
10:50-11:10 Break Break
11:10-12:00 Lecture14: String Exercises (Group Work) Project (Group Work)
12:00-13:00 Break Break
13:00-13:50 Lecture15: Lists Lecture17: Files Project (Group Work) Project Presentations (Group Work)
13:50-14:10 Break Break Break Break
14:10-15:00 Lecture16: List Exercises (Group Work) Lecture18: File Exercises Project (Group Work)  Project Presentations (Group Work)
15:00-16:00 Break Break Break Break
16:00-17:00 Extracurricular Activities Extracurricular Activities Extracurricular Activities Extracurricular Activities

Please note that this schedule is subject to changes.