Introduction to Programming (5 cr)
Code: R504D52-3005
General information
Enrollment
18.03.2024 - 15.09.2024
Timing
09.09.2024 - 18.12.2024
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
-
R54D24SBachelor of Engineering, Machine Learning and Data Engineering (full time studies), 2024
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 exercise sets.
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
- Coding style and its role in software projects
- Python extra libraries/modules
- Python vs. C-based programming languages (optional)
- Basics of OOP in Python (optional)
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 exercise sets, optional advanced/extra exercises and the final course report.