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