Institute of Computer Science
  1. Courses
  2. 2021/22 spring
  3. Computer Programming (LTAT.03.001)
ET
Log in

Computer Programming 2021/22 spring

  • Home

Computer Programming

This is the introductory programming course for Cybersecurity students but other students can also join. No previous knowledge of programming or prerequisite subjects are required, other than basic computer skills. The course consists of video lectures by Charles Severance and/or reading materials, and there are online practice sessions on Fridays. The course is held entirely online. Please make sure that you have a computer with a stable Internet connection. All necessary software will be made available to the course participants.

Before each practice session, you have to watch the video lectures, solve a quiz about the current topic, and solve and submit programming exercises. In the practice sessions, main topics and exercises are reviewed, and more exercises are solved.

  • Syllabus in ÕIS

Schedule and resources

  • Practice session: Fri 12:15-13:45, online, Reimo Palm
  • Consultation: Tue 16:15, online
  • Main course page in Moodle: https://moodle.ut.ee/course/view.php?id=8434
  • Lecture videos: https://www.py4e.com/lessons
  • Thonny: https://thonny.org/
WeekHomeworkDateTopicsProject
1.Homework11.02Introduction 
2.Homework18.02Variables, expressions, and statements 
3.Homework25.02Conditional Execution 
4.Homework04.03Functions 
5.Homework11.03Loops and Iterations 
6. 18.03First test 
7.Homework25.03StringsProject start
8.Homework01.04FilesProject idea
9.Homework08.04Lists 
10.Homework15.04Nested Loops 
11. 22.04Second test 
12.Homework29.04Graphics (Tkinter)Project alpha
13.Homework06.05Dictionaries 
14.Homework13.05Tuples, sets 
15.Homework20.05Recursion 
16.Homework27.05Regular ExpressionsProject beta

There will be retakes for both tests, which will be scheduled and announced separately. In addition, there will be a programming project starting on week 7 and the exam in June.

Grading

 TimeMaxMinCommentDeadline
Quizzes + homeworksWeeks 1-161471 point per weekBefore each session
Practice sessionsWeeks 1-166 0.5 points per weekEach session
ProjectWeeks 7-162412In two parts (12 + 12)Week 12 + Week 16
First testWeek 616Quiz passedQuiz + programming 
Second testWeek 1116Quiz passedQuiz + programming 
ExamIn June24Quiz passedQuiz + programming 
Extra exercises 10   
  • To get points for the pre-session work (quizzes + programming homeworks), it has to be submitted through Moodle before each session by Friday 8:00. In grading the homeworks, effort is preferred to correctness.
  • To get points for the practice session work, active involvement and own contribution should be visible; submission closes on Sunday evening.
  • To pass the quiz parts of the tests and exam, all questions must be answered correctly (small mistakes don't count). Weekly quizzes don't have a threshold.

For a positive grade in the course, all minimum thresholds must be met.

During the semester, you can see your current points and feedback in Moodle.

Grades: A ≥ 90, B ≥ 80, C ≥ 70, D ≥ 60, E ≥ 50, F < 50.

Learning Outcomes

After passing this course, the student:

  • knows and can use fundamental programming constructions: variables, expressions, assignments, conditionals, loops, subroutines, recursion, simple input/output
  • knows basic data types and -structures (numeric types, booleans, strings, lists, etc.) and can use corresponding standard operations
  • can analyze and explain in detail the behavior of simple programs and modify, complement, and develop them
  • can design algorithms for solving simple problems and implement, test, and debug the corresponding program
  • can implement projects related to programming in collaboration with teammates.

The average workload in the course is 6-9 hours of study each week.

In case of questions, please write to the course forum in Moodle or ask the supervisor:

  • Reimo Palm - reimo.palm at ut.ee

Credits:

  • Charles Severance (lecture videos)
  • Ljubov Jaanuska, Marina Lepp (parts of reading materials)
  • Institute of Computer Science
  • Faculty of Science and Technology
  • University of Tartu
In case of technical problems or questions write to:

Contact the course organizers with the organizational and course content questions.
The proprietary copyrights of educational materials belong to the University of Tartu. The use of educational materials is permitted for the purposes and under the conditions provided for in the copyright law for the free use of a work. When using educational materials, the user is obligated to give credit to the author of the educational materials.
The use of educational materials for other purposes is allowed only with the prior written consent of the University of Tartu.
Terms of use for the Courses environment