Skip to content

Free University of Bozen-Bolzano

Fundamentals of programming

Semester 2 · 42611 · Professional Bachelor in Wood Technology · 3CP · EN


1. Introduction to: different computing devices, their hardware and software; computer organisation; data hierarchy; machine languages, assembly languages, high-level programming languages. Introduction to programming conventions and paradigms, with a focus on the structured programming paradigm. Basic syntax and structure in Python: data types, variables, constants, operators, Boolean and arithmetic expressions; standard input/output handling.
2. Basic control flow structures, e.g., conditional control structures; error handling.
3. Basic data structures and subroutines, e.g., functions.
The above is tackled for covering the basics of computing to critically understand a computational problem and develop a resolution in a Python-based programming language.

Lecturers: Chiara Ghidini

Teaching Hours: 30
Lab Hours: 0
Mandatory Attendance: Attendance is not compulsory for lectures, albeit highly recommended. Attendance is compulsory for labs to profit from the course material (e.g., programmable boards) which cannot be borrowed outside class hours.

Course Topics
- statements - conditionals - boolean expressions - loops - functions - lists - dictionaries - search - tuples

Teaching format
In-presence, lecture and workshop-based.

Educational objectives
The course belongs to the type "caratterizzanti – discipline informatiche". By following the latest European Commission and national recommendations and guidelines on computational thinking and computing education, the course gives a general overview of scientific contents and computing technologies, which are relevant for tomorrow’s citizens. The overall goal of the course is to empower different students to tackle a simple computational problem and develop a solution for it, critically and collaboratively. The specific objectives to achieve the goal are as follows. 1) First, the course aims to provide participants with basic knowledge of computing to understand a basic computational problem, that is, to analyse it and abstract away what needed for developing a basic computing solution for it. 2) Second, the course aims to enable students to develop basic computing solutions for different problems, which requires them to specify and program them. Third the course aims to enable students to collaborate in the analysis of problems and development of solutions, and to critically reflect on what they are doing. Intended Learning Outcomes (ILO): Knowledge and understanding: 1. Know fundamental principles of computing. 2. Know different models of computation and computing devices. 3. Have a basic knowledge of programming for different computing devices. 4. Understand how to efficiently interact with basic programming environments. Applying knowledge and understanding 5. Be able to analyse basic computational problems. 6. Be able to specify one among many computational solutions. 7. Be able to program computational solutions. 8. Be able to understand computational solutions. Making judgements 9. Be able to collect and interpret useful data and to judge computational solutions and their applicability. 10. Be able to identify critical aspects in the development process and take a critical stance towards what is developed. Communication skills 11. Be able to describe and motivate choices. 12. Be able to properly document a computing solution.

Assessment
Formative assessment Not foreseen Summative assessment Assessment format: paper-based written exam, with questions related to all the listed topics (1–3). The exam is organised and weighted as follows: 1. C. 30% multiple-choice questions 2. C. 70% open-ended questions Its duration is expected to be c. 2 hours. The total number of hours the student devotes to the course is #CFU * 25 (e.g., 150 hours for a 6 CFU course), including: o the time spent in class; o the preparation of the project; o the time for independent study.

Evaluation criteria
The outcome is based on the answers to the written exam. The following ILOs will be taken in consideration for evaluating answers and awarding marks: - Via multiple choice questions (30%): knowledge and understanding - Via open-ended questions (70%): o Applying knowledge and understanding o Making judgements o Communication skills

Required readings

Material provided by the lecturer.



Supplementary readings

Online resources suggested by the lecturer, and available through the unibz library to all enrolled students



Further information
Software used: Python, basic IDEs.


Download as pdf

Sustainable Development Goals
This teaching activity contributes to the achievement of the following Sustainable Development Goals.

4

Request info