Skip to main content

Fundamentals of Programming (5 cr)

Code: TT00CR12-3001

General information


Enrollment

02.07.2023 - 31.07.2023

Timing

02.10.2023 - 30.11.2023

Number of ECTS credits allocated

5 op

Virtual portion

5 op

Mode of delivery

Distance learning

Teaching languages

  • English

Degree programmes

  • Joint Elective Studies
  • Degree Programme in Information and Communications Technology

Teachers

  • Sami Pyöttiälä

Scheduling groups

  • Avoimen AMK:n kiintiöpaikat (Size: 500. Open UAS: 500.)

Small groups

  • Open UAS quota

Objective

The course introduces the basic concepts and structures of programming languages, the algorithmic thinking needed for programming, and practical programming skills sufficient for working with an editor and interpreter. The main goal is to learn how to build small, functional, 1-5 subprogram-based applications based on sequences, selection, and repetition.

Content

The learning tool and example programming language for the course is Python. Topics covered include, among others, writing programs in an editor, proper programming style, variables, references, basic control structures, basic data structures, input and output, algorithmic problem solving, modularity, and functions. In addition to studying theory, students will be required to practice independently from the start of the course.

This course is equivalent to University of Turku course TKO_2110/BIOI2250 Introduction to Programming.

Materials

Online material in ViLLE environment

Teaching methods

Theory studies and independent practicing of programming and problem solving using ViLLE-learning environment with editor and interpreter. Written exam, weekly exercises and material on-line; the course is organized in co-operation between University of Turku and Turku University of Applied Sciences

Student workload

Total 135 hours.

Content scheduling

The course introduces the basic concepts and structures of programming languages, the algorithmic thinking needed for programming, and practical programming skills sufficient for working with an editor and interpreter. The main goal is to learn how to build small, functional, 1-5 subprogram-based applications based on sequences, selection, and repetition.

The learning tool and example programming language for the course is Python. Topics covered include, among others, writing programs in an editor, proper programming style, variables, references, basic control structures, basic data structures, input and output, algorithmic problem solving, modularity, and functions. In addition to studying theory, students will be required to practice independently from the start of the course.

Starts on 2nd of October 2023 and lasts for two months.

Further information

At the beginning, participating students will receive an e-mail to both their e-mail-addresses - personal (if they have provided one) and student e-mail. The e-mail contains instructions on how to access all necessary channels of information and systems. The systems used will be Itslearning-environment (of TUAS), ViLLE-learning environment and Discord for discussions. Itslearning is mainly used for distributing extra materials, notifications and instructions, whereas ViLLE contains the main course material and all assignments. The discussions on Discord are both between students and between teachers and students.

Evaluation scale

H-5

Assessment methods and criteria

A written exam at the end of the course.

Assessment criteria, fail (0)

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

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

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

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
• can make programs that include aforesaid concepts.