Skip to main content

Introduction to Programming (5 cr)

Code: 5051111-3046

General information


Enrollment

30.11.2022 - 18.01.2023

Timing

09.01.2023 - 30.04.2023

Number of ECTS credits allocated

5 op

Mode of delivery

Contact teaching

Unit

Engineering and Business

Campus

Kupittaa Campus

Teaching languages

  • English

Degree programmes

  • Degree Programme in Information and Communications Technology

Teachers

  • Tiina Ferm

Groups

  • PINFOK23B
    PINFOK23B

Objective

After completing the course the student can:
- describe the most important software application types and their typical features
- discuss the selection of a proper solution technology
- define the main concepts of programming such as source code, compiler, variable and data type
- read program code written by someone else
- utilize the most important decision and control structures
- recognize basic object-oriented concepts (class and its members, object, reference, exceptions)
- design and implement simple software applications
- draw a flow chart of the program.

Content

- software application structure
- development environment and tools
- variables and data types
- functions
- decision and control structures
- arrays and lists

Materials

PythonBasics: APracticalIntroductiontoPython3 4th edition by DavidAmos,DanBader,JoannaJablonski,FletcherHeisler, ISBN:9781775093329(paperback), ISBN:9781775093336(electronic)

Teaching methods

Learning by programming

Completion alternatives

The course can be compensated with an exam, the date is agreed upon with the first lecture

Student workload

Contact hours 77 h
Independent study continuously throughout the course, preparation for the exam 58 h

Content scheduling

The course consists of eight topics and rehearsal questions, quizzes and labs for each.
- introduction, basic syntax, and input and output in the console
- 1: variables and types, quiz and lab 1 (total 10 points)
- 2: operators and branching, quiz and lab 2 (total 10 points)
Exam 1 (10 points)
- 3: loops (for and while), quiz and lab 4 (total 10 points)
- 4: functions, quiz and lab 5 (total 10 points)
Exam 2 (10 points)
- 5: collections (list, tuple, set, dictionary), quiz and lab 3 (total 10 points)
- 6: file IO, quiz and lab 6 (total 10 points)
- 7: review, quiz and lab 7 (total 10 points)
Exam 3 (10 points)
- 8: putting it all together in different environments (pygame, django, tkinter)

total of 100 points

Further information

Lectures and labs are implemented at the campus. This is not an online course. The classes will be on the timetable by the beginning of the semester.

Evaluation scale

H-5

Assessment methods and criteria

10 HOMEWORKS – online, rehearsing, not evaluated
7 Quizzes – online, evaluated, 5 points each, minimum 14, maximum 35
7 Labs – classroom activity, evaluated, plagiarism check result must be < 50%, 5 points each, minimum 14, maximum 35
3 Exams – classroom activity, evaluated, 10 points each, minimum 12, maximum 30


To pass the course a student has to reach a minimum in all categories (quizzes, labs and exams). If the minimum is reached all the points are added and the scale of 1 – 5 is calculated.

Assessment criteria, fail (0)

Student
• does not know the basic concepts of programming
• cannot read or write simple programs

< 40 points or failed the exam

Assessment criteria, satisfactory (1-2)

Student
• knows such basic concepts of programming as variables, control structures and functions
• understands how the program flow is going
• can read or write simple programs

40 - 59 points and the minimum is reached in all categories (quizzes, labs and exams)

Assessment criteria, good (3-4)

Student
• knows such basic concepts of programming as variables, control structures, functions, classes, objects and arrays
• understands how the program flow is going and is able to find easy errors
• can make simple programs

40 - 79 points and the minimum is reached in all categories (quizzes, labs and exams)

Assessment criteria, excellent (5)

Student
• knows such basic concepts of programming as variables, control structures and functions, classes and objects
• utilizes some data Structures such as arrays, lists and hash tables.
• understands how the program flow is going and is able to use debugger and error handling
• can make programs that include aforesaid concepts.

> 80 points and the minimum is reached in all categories (quizzes, labs and exams)

> 90 points, 1 additional credit (total of 6 credits)

Qualifications

Basic computer skills and high school or vocational school mathematics curriculum or equivalent skills.