**3. Description of the course**

### **3.1 The choice of the programming language**

Novice programmers who are not interested in traditional approaches to coding become motivated when coding activities are introduced as a way to tell a story, or in connection with other disciplines and interest areas, such as music and art [44]. One of the main issues in the realization of the workshop was the choice of the programming language and how much time to allocate to the programming part [1]. As it is desirable that the preservice teachers be exposed to CT, and to its related concepts so as to be able to apply them effectively in the classroom and in learning activities, we decided to adopt Scratch as the introductory programming language environment at the Department of Preschool Education in the University of Crete. The reasons behind conception and design of this project are: we supposed that preservice teachers had different programming backgrounds and/or experience, and we felt that using Scratch as an introduction could be motivating, as it provides novices in programming with a meaningful and playful learning environment to create interactive games, animated stories, and simulations.

## **3.2 Objectives of the course**

Technology and digital tools have become ubiquitous, but they can be ineffective or distracting if they are not integrated into the learning process in meaningful ways [5]. This paper presents an innovative approach that is guided by the constructionist philosophy developed by Seymour Papert. In constructionist learning environments, new knowledge is built through the programs created by learners [45]. In those environments not only can novice programmers design, build, and program their own interactive artifacts while having fun, but they can also learn how to work in groups and develop socioemotional skills [7]. In the process, they encounter powerful ideas from the realms of math, science, technology, and engineering [7].

#### **Image 4.** *The trajectory of the course approach.*

The course was developed to help preservice teachers introduce CS as a new subject to their students. It was also developed to demonstrate that even without a background or training in this subject, preservice kindergarten teachers have the ability to learn fundamental CS theory and concepts. It was focused on CS education in the context of developing higher-order thinking and problem-solving skills. We also wanted to encourage students to become innovative and think critically about how technology impacts their daily teaching techniques (see **Image 4**).
