86679 - Computational Thinking - Bologna

Course Unit Page

Academic Year 2018/2019

Learning outcomes

With Computational Thinking we indicate a set of transversal skills related to the fundamentals of computer science as a scientific discipline. In an increasingly digital society, where software technological tools permeate daily life and consequently modify the experience and fruition of reality, it is necessary that every educated person is exposed to the most relevant principles of the discipline. The goal is not - of course - acquiring specific technical skills, but, on the contrary, gaining interpretative perspectives of reality, which make it possible to read the digital experience in a competent and responsible way. In particular, the following goals will be pursued:

  • Introduce some key ideas of computer science.
  • Stimulate creativity and the ability to develop computational artifacts, using an iterative approach to design and implement innovative solutions.
  • Highlight the impact that information technology has on people and society.
  • Know how to use computer science to explore questions and problems in domains of interest to the student.
  • Develop effective communication and collaboration skills

Course contents

The course is an exploration of "computational thinking" concept through making of computational artifacts (software programs) and reflecting on creative process.

Students will be introduced to visual programming language such as Scratch or AppInventor and will learn how to design and make different types of projects such as videogames, animated stories or interactive art.

Making these projects will let students:

  • understand fundamental computational concepts (e.g. algorithms, sequence, loops, data, parallelism, ...)
  • experiment common practices in creative process and problem solving (e.g. try and error, iterative design, debugging, abstraction)
  • be open to new perspectives about technology (e.g. technology as creative expression tools, developing critical thinking, ...)

The course will also be an opportunity to reflect on how technology impact our society, starting from students interests.


Readings will be provided digitally during the lessons.

Teaching methods

The course is organized in a workshop mode and require the creation of individual and group projects using the Scratch visual programming environment. In addition, discussions and in-depth analyzes will be proposed in the classroom and the production of papers to be presented to the teacher at the end of the meetings.

Lessons will take place from 10.30 to 13.30 at Laboratorio N – palazzina B, Complesso Aule Belmeloro. Via Andreatta 8, Bologna, in the following days:

  • 06/03/2019
  • 13/03/2019
  • 20/03/2019
  • 27/03/2019
  • 03/04/2019
  • 10/04/2019
  • 17/04/2019
  • 24/04/2019

It is important to attend at least 70% of the lessons. In case of absence for justified reasons, please contact the teacher in advance by e-mail (giulio.bonanome@unibo.it)

Assessment methods

At the end of the course students will be asked to present a project created in one of the programming languages introduced during the course.

Office hours

See the website of Giulio Bonanome