Skip to main content

Introduction to Programming (5 cr)

Code: R504D52-3004

General information


Enrollment

13.03.2023 - 25.09.2023

Timing

11.09.2023 - 24.12.2023

Credits

5 op

Mode of delivery

Contact teaching

Unit

Bachelor of Engineering, Information Technology

Teaching languages

  • English

Seats

0 - 30

Teachers

  • Tuomas Valtanen

Responsible person

Tuomas Valtanen

Student groups

  • R54D23S
    Bachelor of Engineering, Machine Learning and Data Engineering (full time studies), 2023

Objective

The student can implement small scale programs, understand the programming logic and structured programming. The student can utilize the library functions available for the programming language.

Content

- Algorithmic thinking, programming paradigms
- Programming environments and version control tools
- Basic concepts of programming
- Structured programming
- Programming libraries

Materials

Lecture material
- Web material
- Examples and live coding
- Exercises
- Web learning environments
- CodeCombat programming learning environment

Teaching methods

The study unit is one of the first courses, and therefore prior programming knowledge is not required. The programming language used in the course is Python (version 3). Lectures are classroom lectures according to timetable. The student will perform independent work on exercises.

Content scheduling

1. Basics of programming and computational thinking
2. Conditional statements and handling strings
3. Repetition structures and collections
4. Functions and files
5. Data management, JSON
6. Other topics:
- Problem solving
- Computer vs. programming
- Python vs. C-based programming languages
- Python extra libraries/modules
- Basics of OOP in Python

Evaluation scale

H-5

Assessment criteria, satisfactory (1)

The student understands the principles of structural programming and can implement simple programs.

The student can use the basic structures of a programming language (selection and iteration) and utilize functions.

Assessment criteria, good (3)

The student can utilize the structural programming and libraries offered by the language. In addition the student can implement easily readable, testable and maintainable code.

Assessment criteria, excellent (5)

The student can utilize the structural programming and libraries offered by the language. In addition the student can implement easily readable, testable and maintainable code.

The student can apply appropriate algorithms to specific programming problems.

Assessment methods and criteria

The study unit will be graded based on weekly exercises, optional extra exercises and final report.