Plugged or Unplugged Teaching: A Case Study of Students’ Preferences for the Teaching Programming

This study is an investigation of the effects of plugged and unplugged activities in a programming course using the Programming in Seven Steps (PSS) model on pupils' satisfaction and activity type preferences. A case study method was used in the classroom was the case. Data included students' diary, their responses on semi-structured interview forms, and semi-structured interviews with a selected sub-set of students. The collected data were analyzed by content analysis technique. It has been found that there are different factors that positively affect student satisfaction for "Conditional Structures", "Variables" and "Loops" courses that are processed according to YAP model. In addition, students' preferences and reasons for activity type differ. Study results show that training students with their preferred activity types increases their satisfaction and enable them to overcome associated difficulties more easily. It is concluded that because the PSS model is effective with students with different learning environment preferences, it can be used as a model to increase learner satisfaction with programming instruction.


Introduction
With the rapid advance of the developments in the field of science and technology since the industrial revolution up to the present, the skills individuals need to have in the 21st century have evolved. Wagner (2008) lists such skills as critical thinking and problem solving, quick wit and adaptation, entrepreneurship and taking initiative, and inter-system and interpersonal cooperation as well as leadership, effective oral and written communication, curiosity and imagination, and ability to access and analyze information.
The literature shows that teaching programming holds an important potential for helping students gain 21st century skills. Through programming teaching in the literature; students' logical thinking (Lai & Lai, 2012;Shih, 2014), problem solving (Brown et al., 2013;Lai & Lai, 2012), computational thinking (Sáez-López et al., 2016), higher level thinking There has been positive progress in skills (Kafai & Burke, 2014) and critical thinking (Erümit et al., 2019). Besides developing students' cognitive skills, however, programming requires other higher level skills for the learning process itself (Law, Lee and Yu, 2010), which makes learning programming is quite challenging (Helminen and Malmi, 2010), and students have an overall lower level of achievement in this subject (Robins, Rountree, and Rountree, 2003). In order to increase the success of teaching programming and to facilitate students' understanding, it is necessary to first teach the logic of algorithms to students (Ala-Mutka, 2004). For this purpose, interesting and entertaining visual programming tools have been developed in order to facilitate learning for beginners in programming education (Schwartz, Stagner, and Morrison, 2006).
Teaching programming entails challenges in selecting suitable activities for a group of learners (Çatlak, Tekdal, and Baz, 2015), helping students understand and apply algorithms (Futschek and Moschitz, 2010), and helping them use programming languages in writing codes (Arabacıoğlu, Bülbül, and Filiz, 2007). The syntax of textbased programming is considered as one of the most challenging issues for students (Mannila, Peltomaki, and Salakoski, 2006;Özmen and Altun, 2014), while the code blocks presented in visual programming are easier for beginning level programmers to understand and apply (Wilson and Moffat, 2010). Calder (2010) argues that working with the block-based visual tools of programming software increases students' satisfaction and motivation to persist. In many studies, it was noted that the use of visual programming accelerates comprehension of the process (Naharro-Berrocal, Pareja-Flores, Urquiza-Fuentes, and Velazquez-Iturbide, 2002). For beginning learners, therefore, elementary level software programs such as Scratch (Malan and Leitner, 2007;Wu, Chang and He, 2010), Kodu (Stolee and Fristoe, 2011), StarLogo (Klopfer and Yoon, 2005), and Alice (Kelleher, Pausch, and Kiesler, 2007) are recommended as they allow students to perform coding by placing code blocks in order through drag and drop functions. In this way, the frequently faced problem of syntactic errors in text-based programming can be largely overcome.
In addition, attitudes toward programming (Gomes and Mendes, 2007;Hawi, 2010) and self-efficacy beliefs (Aşkar and Davenport, 2009) are some of the affective issues encountered in the teaching programming. These challenges often arise during the teaching of basic programming concepts such as the structure of a programming language (Lahtinen, Ala-Mutka, and Järvinen, 2005), loops (Ginat, 2004), and algorithm structures (Seppälä, Malmi, and Korhonen, 2006).
In the implementation of these approaches, both plugged and unplugged activities (activities with and without use of computers) may be used. For example, Sáez-López, Román-González and Vázquez-Cano (2016) carried out a study with 107 middle schoolers using Scratch and computerized activities. Their purpose was to explore the differences, if any, their approach made in the students' attitudes and competencies. They found that the students made progress in satisfaction, attachment, computational thinking, and calculating skills. Taylor, Harlow and Forret (2010) implemented plugged activities with 9-and 10-year-old students using Scratch and found out that the learners were interested in Scratch as a programming tool. In addition, they pointed out that the tool provides an environment in which students employ problem solving processes such as idea generation, target setting and testing. Similar studies using visual programming tools like Scratch have shown that such tools improved students' satisfaction, interest, and enjoyment in learning (Kalelioğlu and Gülbahar, 2014;Kelleher et al., 2007;Malan and Leitner, 2007;Pinto and Escudeiro, 2014;Wu et al., 2010).
Especially at an early age, there are difficulties in learning abstract programming topics. As a solution, unplugged activities can be used to teach programming. Because unplugged activities contain the lowest level of technical information, they involve fewer cognitive challenges than other programming tasks and are commonly used in basic computer instruction as a starting point before student progress to plugged activities (Kotsopoulos et al., 2017). Starting teaching programming according to the activity type preferences (plugged/unplugged) of the students or planning the activities to include both types of activities can facilitate the teaching programming for younger students and affect their perceptions and attitudes towards programming positively (Şahin, 2018). For example, Futschek and Moschitz (2011) introduced unplugged activities prior to plugged activities to students at the basic level of programming. They found out that this sequence of teaching increased students' satisfaction with plugged activities, and even those who previously had not been interested in programming ended up being enthusiastic. Giannakos et al. (2013) also found that using both plugged and unplugged activities increased students' interest in and satisfaction with both programming and computer sciences as a subject. They also found that female students became more interested in computer sciences than their male peers. Hermans and Aivaloglou (2017) investigated which method, plugged or unplugged, is more effective as a starting activity in programming in order to facilitate learning the concepts of programming, support learners' self-efficacy in programming tasks, and motivate them to do research. As a result, the group starting with unplugged activities recorded higher selfefficacy. Also, those students used a larger range of Scratch blocks.
Pedagogical approaches and types of activities (plugged and unplugged) mentioned in the literature, however, tend to be applied independently in programming instruction. Moreover, there exists no specific model for these coordinating these pedagogical approaches in class and laboratory settings with the age of the target group, for making them workable steps, and thus for systematizing programming instruction. Targeting these problems, Erümit et al. (2019) devised a teaching model entitled Programming in Seven Steps (PSS) for teaching programming so as to improve students' algorithmic thinking and problem-solving skills independent of any specific programming environment.
The seven steps of the model include plugged and unplugged activities as shown in Figure 1: The first four steps, "Understand the Problem," "Devise a Plan," "Compare the Strategies," and "Devise an Algorithm," use unplugged activities. The last three steps, "Code the Algorithm," "Identify and Correct an Error in a Different Code," and "Prepare and Code New Algorithms," involve plugged activities. These steps are further elaborated below.
The first step -understand the problem involves identifying what relevant information is given in the problem, what further information is needed, and what given information is irrelevant, more or less simultaneously. The next step, devise a plan, requires developing strategies appropriate to seeking the solution of the problem and deciding how to implement them. In the step comparing the strategies, the results of implementing different strategies are evaluated and compared to determine through negotiation the best path to the solution. In the following step, devise an algorithm, the most effective algorithm emerging from the previous step is determined, and in the following step, the generated algorithm is coded. Identify and correct an error is a debugging process independent of the other steps to detect errors in the coding of a program. Finally, prepare and code new algorithms, involves revising the algorithm and/or generating new algorithms suitable for the given problem and coding them.
The purpose of the current study was to discover students' preferences for plugged and unplugged activities along with their justifications and also their satisfaction with the activities performed in the programming lessons taught with the PSS model. For this purpose, answer was sought for the following questions: 1) What is the effect of applying the PSS model in programming lessons l on students' satisfaction with the instruction provided?
2) What type(s) of activities do students prefer in programming lessons employing the PSS model and what are the reasons for their preferences?

Research Model
Case study was the qualitative research method used in this study. Qualitative research is a research model which uses non-metric data collection methods such as observations, interviews, and document analysis, and follows procedures for eliciting perceptions and depicting events in a realistic and holistic way in their natural setting (Yıldırım and Şimşek, 2005). It also provides flexibility to the researcher during the design and execution of the research (Silverman, 2013). Among many qualitative research designs, McMillan (2000) describes case study as a method for in-depth exploration of one or more events, settings, programs, social groups, or other interconnected systems. It is a research pattern in which an entity is defined and customized with reference to time and space (Büyüköztürk, Çakmak, Akgün, Karadeniz, and Demirel, 2016). To allow in-depth investigation of different aspects of a particular case, a variety of data sources and collection techniques are used (Cohen, Manion, and Morrison, 2005).
In this research, case study was chosen to achieve the following: • in-depth content analysis of the data collected from the students related to activities offered by the PSS model, • better understanding feelings, thoughts and emotions through qualitative methods, • evaluating the findings in a descriptive way.

Participants
Participants were 38 sixth grade students (20 girls and 18 boys) attending a public school, when the lesson plans were used in classes. Students were coded from K1 to K38. Students study in a classroom with average achievement in a school with a medium ranking among schools with computer lab. They had not previously used Scratch or received any programming training. The research-related activities were carried out by the teacher in charge of Information Technologies and Software (ITS) course, who had 15 years of professional experience and 5 years of experience in teaching Scratch programming. The researcher personally collected data while visiting the school throughout the implementation stage.

Data Collection Tools
Data included students' journals (Appendix B), periodic semi-structured interviews responses with a sub-set of students, and their responses to a semi-structured interview form (Appendix A), developed by the researcher to explore students' perceptions and evaluation of the process. While preparing the data collection tools, the researcher consulted with six field specialists (two lecturers in Computer Education and Instructional Technologies, two PhD candidates, and two master's students). Thus, the scope validity of the data collection tools was ensured. Data collection tools were applied to 10 different students (5 females, 5 males) in the sixth grade before the actual application and their opinions were obtained and the necessary arrangements were made, and their opinions were obtained again. In this way, the validity of meaning is also provided.

Data Collection and Analysis
All students wrote journal entries every week at the end of each week (nine times in total, see Appendix B). Also, the researcher and the teacher jointly conducted five semi-structured interviews with nine students (each student individually) at the juncture between one topic and the next. Interviewees were selected to represent a balance of mathematics and ITS proficiency levels (three low, three medium, three high) and genders (five females and four males). Interviews were audio-recorded, and all students' data were transferred to the computer for content analysis. Participants' informed consent was obtained prior to the interviews, and they participated on an absolutely voluntary basis. All participants' information was kept confidential.

Validity and Reliability of Study
The qualitative data were analyzed using content analysis methods, which included combining, reducing and interpreting what the participants said and what the researcher witnessed and read (Merriam and Tisdell, 2015). Audio-recordings of the student interviews were recorded, digitalized, and analyzed which included editing, coding by themes, and supporting the themes with citations and excerpts (Creswell, 2013). In addition, during the interviews the researcher kept detailed notes, paying due diligence to capturing all information. All data were securely saved in case of need to verify the results. Three researchers specializing in the field of Computer Education and Instructional Technologies first analyzed the data independently and then aligned their results. Initially the researchers' analyses were 88% congruent, following which they convened and reached full consensus on the study themes and related areas. The data were confirmed by member-checks by participants when deemed necessary. The researchers played an active role in reporting as well as in analyzing data.

Implementation Approvals
Because the research involved human subjects and their data, an approval certificate was obtained from the Ethics Committee for Social and Human Sciences of University, documenting conformity with ethical principles of purpose, justification, method and data collection instruments and procedures. The document was then submitted to the Ministry of National Education (MoNE), which granted approval for research in schools. After both approvals were obtained, an information form about the study and consent form were sent to parents of the participant students. The study was conducted with students only after receiving their parents' consent.

The Implementation
The research was carried out for 9 weeks (80 minutes each) with 38 students studying in the 6th grade. Each of the students in the class had his/her own computer, which was controlled from a central computer. In the first week, a researcher informed the students about the implementation process and its importance. Within the scope of the seven-step lesson plans, the first four steps were carried out without computers, while the other three steps were plugged. The weekly implementation process is shown in Figure 2.
7 steps of PSS model may not be applied in the same week. This is related to the duration of the lesson. The important thing is to use 7 steps to teach the same subject. In the same week, 7 steps of PSS may not catch up since the lesson time is limited. However, since each step constitutes a meaningful piece, it is not a problem that 7 steps are independent.
As shown in Figure 2, the first week covered Problem-Solving Concepts and Approaches. In the first lesson, the activity, "Helping the Shepherd" (Appendix C) was carried out with an activity sheet providing the scenario of the problem, a story visual, and a space in which to write the solution algorithm using pseudo-code. In the following lesson, the activity "I am finding the cities" (Appendix D) also included an activity sheet for students to analyze and solve a problem. Again, they used the blank area to provide the solution algorithm created through pseudocode.
During the two classes of week two, the topic "Let's Recognize Scratch" was addressed. In the first lesson, the students studied sample projects on the Scratch web platform, guided by the course teacher to make sure they paid attention to the salient features of the projects. In order to ensure that the students pay attention to the characteristics of the projects they are studying, instructions were given by the course teacher (Appendix E). The next lesson was allocated for students to freely perform activities inspired from the projects examined. In the following week, the previous week's topic was continued. In the first lesson, the students watched Scratch training videos via the Education Informatics Network (EBA, http://www.eba.gov.tr/). In the next class by students completed some easy exercises.

Figure 2. The Implementation Processes
In week four the "Conditionals" were taught, again in two lessons beginning with the activity, "Ali and Ayşe are going on holiday," (Appendix F) in which the first four steps of the PSS model were applied. For "Understand the problem", the students answered questions about the problem situation using the Problem Acknowledgement Table  (PAT) form (Appendix G). For "Devise a Plan", they used the Strategy Devise Form (SDF) (Appendix H) to decide on the most appropriate strategy and solved the problem.
For the following step, "Compare the Strategies," the teacher worked with the students to identify the most appropriate strategy from those generated in the previous step. As the next step, the students wrote the algorithm for their own plan using pseudo-code. Later, some students voluntarily dramatized their algorithm using materials provided by the teacher (Picture 1).

Picture 1. In Class Application
The next lesson began with a Scratch computer application, "Questions and Answers," followed by "Maze Map" as the fifth and last step of the model in this phase.

Picture 2. "Maze Map" Scratch Activity
In the fifth week, the topic from the previous week was continued. In lesson one, the teacher presented a Scratch application with an incorrect code structure which the students studied to detect and correct the errors.

Figure 3. Incorrect and Correct Code
During the next class, the students and the teacher finished the activity by modifying the faulty code structure together. After that, the teacher sent the students an assignment via the EBA system, which corresponds to steps 6 and 7 of the PSS Model.
In the sixth week, the topic of Variables was discussed. The first hour was used for an activity titled "Ali needs fruit," in which students completed the first four steps of the model. The next lesson followed for the implementation of Step 5 of the PSS Model in the context of "Fruit Basket" as a Scratch application. The seventh week was a continuation of the previous week. The procedure was put into practice as described under "Conditionals" in the second week During week eight, "Loops" was discussed. The first lesson, which featured the activity "Ali playing a game," was completed after the first four steps of the PSS model as described in the fourth week had been implemented. The following class started with the Scratch computer application "My fuel amount," followed by "Auto racing," finalizing stage 5 of the PSS model. In the ninth week of the implementation, the issue of "Loops" continued. The application in the ninth week was carried out in the same way as the application in the fifth week, and the whole application process was completed.
To recapitulate the scope of the PSS model, as part of the first step, understand the problem, the students answered the questions formed in accordance with the activity in the lesson plan. In this step, the students were asked to distinguish the necessary and unnecessary information in the problem presentation. During the second step, devise a plan, the students sought the best among multiple paths to reach a solution to a problem. In step three, comparing the strategies, the teacher constructed the optimum result by examining all the students' proposed solutions together.
Step four, code the algorithm, was completed in two parts. First, the students represented their solutions as algorithms written in pseudo-code. Later, volunteers acted out their algorithms in dramatic performances for the class. All of these four steps could fit into one class hour. During the next step, code the algorithm, the students undertook the task of transferring the previous activity onto Scratch. This step took about two hours.
In step six, identify and correct an error in a different code, the students were given Scratch applications with missing or incorrect code structures independent from the activity in the lesson plan and required to identify and eliminate the errors. After they completed the task individually, the teacher collaborated with the students to complete it on the smart board. This stage took one lesson period.
At the final stage, prepare and code new algorithms, the teacher mailed assignments to the students via EBA with specified criteria. In this assignment, the students were asked to first write the algorithm that met the criteria given and then to encode the algorithm in the programming environment. An overview and use of lesson plans are given in Table 1

Conditionals
• Analyzes a problem.
• Describes the importance of generating authentic solutions for problems. • Discusses the problem-solving process and basic concepts.
• Devises an algorithm for solving the problem.
• Analyzes different algorithms and chooses the fastest and most accurate solution. • Generalizes the solution to similar problems.
• Tests the solution of an algorithm.
• Improves and edits a program in the block-based programming tool against given criteria. • Creates programs which include the linear logic structure.
• Creates programs which include the condition structure.
• Creates programs which include multiple condition structures.
• Corrects a program in the block-based programming tool.
• Tests and corrects programs involving the linear logic structure.
• Tests and corrects programs involving the condition structure.
• Tests and corrects programs involving the multiple condition structure.
"Ali and Ayşe are going on holiday" • Divides a problem into sub-problems.

Variables
• Analyzes a problem.
• Describes the importance of generating authentic solutions for problems. • Discusses the problem-solving process and basic concepts.
• Devises an algorithm for solving the problem.
• Analyzes different algorithms and chooses the fastest and most accurate solution. • Generalizes the solution to similar problems.
• Classifies data by type.
• Tests the solution of an algorithm.
• Uses the constants and variables to solve the given problem.
• Creates programs which include the linear logic structure.
• Improves and edits a program in the block-based programming tool against given criteria. • Corrects a program in the block-based programming tool.
• Tests and corrects programs involving the linear logic structure.
• Divides a problem into sub-problems. • Analyzes a problem.
• Describes the importance of generating authentic solutions for problems. • Discusses the problem-solving process and basic concepts.
• Devises an algorithm for solving the problem.
• Analyzes different algorithms and chooses the fastest and most accurate solution. • Generalizes the solution to similar problems.
• Tests the solution of an algorithm.
• Improves and edits a program in the block-based programming tool against given criteria. • Creates programs which include the linear logic structure.
• Creates programs which include the loop structure.
• Chooses the most appropriate condition structures to implement an algorithm. • Determines the relation between mathematics and computer sciences. • Devises an authentic project which involves all programming structures. • Divides a problem into sub-problems.
All of the activities listed in Table 1 were developed in accordance with the PSS model. Şahin's (2018) thesis provided a reference for developing the lesson plans and activities used in the implementation stage and for testing the suitability of the activities for the students' cognitive levels, determining lesson durations, and coping with overcrowded classrooms. Also, the lesson plans were prepared in accordance with the Directive of the Ministry of National Education on Planned Implementation of Education and Instruction Activities (2003).

Effects of programming lessons taught with the PSS model on students' satisfaction
To answer the first research question (What is the effect of applying the PSS model in programming lessons on students' satisfaction with the instruction provided), the researchers analyzed the data collected through students' semi-structured interviews and journals using content analysis, including such topics as "Conditionals," "Variables," and "Loops". Table 2 presents students' reflections on the teaching of "Conditionals". As can be understood from Table 2 and the excerpts above, the students particularly enjoyed learning through the PSS model in connection with "Conditionals." Although some students found some of the relevant activities difficult, they did not make negative comments about the overall instructional process. Only two students said that they were bored by the lesson because they found the problem in unplugged activities difficult to understand. Table  3 presents students' views regarding the teaching of the topic "Variables". It was a bit boring. 4 Table 3 demonstrates that students' perceptions of the lesson on variables were highly positive, as exemplified in the following excerpts: Plugged and Unplugged Activities "The animation was also nice. It was also easy to transfer this to the Scratch environment." (K31) Plugged Activities "They were very nice and logical activities. I enjoy such activities." (K7) "It was enjoyable and instructive. Maybe it could have been a little harder. Other than that, I liked the faulty code activity the most." (K12) Unplugged Activities "I had fun doing it, the activity was nice and instructive, but it was too easy." (K8) "I couldn't find any negative sides. As for positive, I learned strategy." (K19) "I had a lot of fun; I learned variables better and clearly." (K5) "It was nice. The activity was very easy for me, so I was a little bored." (K3) "I had so much fun. It was a lot of fun to act the fruits and Ali. My thinking ability has improved." (K7) "That was so fun. This game helped me understand variables." (K12) Table 3 and the excerpts, , "Variables" was enjoyed the most as a result of teaching with the PSS model. However, four students stated that they were bored because they found the problem too easy.

As indicated in
Students' reflections on the topic "Loops" are given in Table 4.  Table 4 shows that the students reported substantially positive views regarding the use of the PSS for learning loops. Some of the students' reflections on the process are excerpted below: As reported in Table 4 and the excerpts, the participants found learning "Loops" using the PSS model to be a pleasant and entertaining experience. Notably, no students reported negative opinions about the course of the lesson.

Students' activity type preferences in programming lessons taught with the PSS model along with their justifications
Students' responses to "What types of activities do you prefer, plugged only, unplugged only, or both?" are summarized across three topics in Table 5:  Table 5 shows that although both types of activities were predominantly preferred, some students opted for only plugged or unplugged activities.
In order to find out the reasons for their preferences, the students were asked "Why would you prefer a particular type of activity (plugged, unplugged, both) for teaching of the lessons?" Table 6 summarizes the students' reasons for their preferences along with supporting excerpts from their answers. Table 6. Students' Reasons for Activity Preferences

Reason for Preference Student's Comments
Unplugged Activities (A) • It presents a problem status with more than one path of solution.
• The problem has an analogical design. • The solution of the problem offers "Devise a Plan" step. • It types the algorithm for the best plan available. • The plan can be performed with drama activities.
Conditionals -Colourful steps game-"I could understand the problem and the solution better in this way. I realized that I can understand problems more effectively by activities and playing games." (K6) Conditionals -Colourful steps game-"It helped me better understand the parts I didn't understand. It was a fun activity." (K20)

Conditionals -Colourful steps game-"I could better understand the activity by seeing, and I believe it will stay longer in my mind in terms of time." (K29)
Conditionals-Colourful steps game-"I think we have visualized the problems thanks to that activity. It also made the lesson more fun." (K31)

Variables-Fruit basket-"I had a lot of fun; I learned variables better and clearly." (K5)
Variables-Fruit basket-"I had so much fun. It was a lot of fun to act the fruits and Ali. What it has brought me is the convenience of doing this application in the Scratch program. My thinking ability has improved." (K7)

Variables-Fruit baskets-"That was so fun. This game helped me understand variables." (K12)
Loops-"Yes, it was fun. It better taught me the activity." (K4) The results in Table 6 were based on themes obtained from the content analysis. As stated in the right column, some of the students appreciated plugged activities more, while some others favoured unplugged activities in a environment. Some others stated that they liked all the activities in the classroom (including plugged and unplugged) and found them amusing.

Discussion and Conclusion
This case study was carried out to shed light on students' satisfaction with the plugged and unplugged activities provided in programming lessons using the PSS model and their preferences for activity type along with their reasons. As a result, it was found that some participants preferred plugged activities and others, though not as many, preferred unplugged activities, but most frequent response was that they were positive about both. Furthermore, the study shows that neither plugged nor unplugged activities affect all students in the same way. It can be concluded that our model holds the potential to meet the needs of all students since it encompasses both unplugged and computer activities in the first four and the last three steps, respectively. On the whole, the students' views regarding the learning process with the PSS model using such terms as fun, liking, effective, and efficient indicate positive effects of the implementation on their interest and motivation.
In the literature, it is reported that students' satisfaction is bound to multiple factors. Sáez-López et al. (2016), in a study on fifth and sixth graders, found out that students were pleased to work with Scratch visual programming tools, enjoyed the activities, found the Scratch programming environment amusing, and felt motivated. Calder (2010) in his study involving sixth graders found that Scratch programming is motivating and interesting for learners. In their research with nine-and ten-year-old students, Taylor, Harlow, and Forret's (2010) also found that plugged activities with the Scratch programming tool were interesting for students. These results are consistent with our finding that students learning programming through the PSS model showed a greater preference for plugged activities more. Using Scratch as a visual and block-based programming tool appeared to increase their interest in and satisfaction with plugged activities and account the findings in the present study. Likewise, previous researchers point out that the use of visual programming tools increases positive reactions such as interest, satisfaction, and amusement (Kalelioğlu, 2015;Kalelioğlu and Gülbahar, 2014;Kelleher et al., 2007;Malan and Leitner, 2007;Pinto and Escudeiro, 2014;Wu et al., 2010).
Previous studies have also established that students enjoy and are motivated by learning through unplugged activities. For instance, Futschek and Moschitz (2011) included entertaining activities at different levels in an unplugged environment for teaching students the basic concepts of algorithm and developing their algorithmic thinking skills prior to switching to a programming environment. In the same vein, Tsalapatas et al. (2012) found that there was an increase in primary students' satisfaction with instruction to develop algorithmic thinking skills when they were offered activities and drama games in an unplugged environment. Moreover, it was noted that including drama activities in ITS lessons beneficial, more amusing, and increased satisfaction with the lessons and beneficial and entertaining (Karaosmanoğlu and Adıgüzel, 2017). Some researchers further defended role playing as a way to lure students to take an active part in the lesson and successfully learn by doing and interacting with peers, which supports collaborative learning (Atalay, 2010).
In addition, the literature suggests that analogies increase the interest, curiosity, and satisfaction of learners (Keller, 1983 as cited by Seyhan, 2015, p.18;Sarıoğlu and Kartal, 2017). Such findings are in congruence with our finding that students learning programming through PSS tend to prefer unplugged activities. It is thought the students in our case favoured unplugged activities mainly because such steps have an analogical basis, drama activities are entertaining, necessary and unnecessary data are separated in the step of understanding the problem, and devising a strategy for a solution to the problem increased students' interest and satisfaction. Gomes, Falcão and Tedesco (2018) investigated how children can be taught programming concepts with digital games. A primary finding was that students had difficulty understanding the topic of loops and needed unplugged activities to reinforce their understanding of this concept, leading the researchers to recommend including in-class activities besides plugged activities in programming instruction. Tsarava et al. (2017) conducted a curriculum development study to improve the computational thinking skills of primary school students. In the target curriculum, concepts common to computational thinking, computers, and programming were highlighted. While developing the curriculum, they intended to promote the cognitive operations that underlie computational thinking skills by approaching programming from a cognitive perspective. The curriculum included both plugged and unplugged game-based activities aiming to motivate students. Leifheit, Jabs, Ninaus, Moeller and Ostermann (2018) also assessed the appropriateness of a game-based approach to teaching programming in primary school to develop students' computational thinking skills such as abstraction, generalization, algorithms, and ability to systematically solve complex problems. In the lessons, algorithm concepts were covered first, and then game-based learning materials were used to introduce the other programming concepts using tangible objects rather than direct coding. In the following lessons, students' learning was reinforced with plugged programming exercises. It was concluded that the game-based, non-digital activity approach had a positive effect on teaching computational thinking and related skills. Weigend (2014) reports that plugged and unplugged activities together can complement each other and hold students' interest and enthusiasm. Futschek and Moschitz (2011) found that using unplugged exercises at the basic level of teaching programming resulted in students' higher levels of satisfaction for programming on the computer as they experience increasing levels of programming, and even those who had no interest in programming at early stages developed positive attitudes toward programming. Giannakos et al. (2013) pointed out that students' interest in and satisfaction with computer sciences and programming increased as a result of engaging in both unplugged and plugged activities, especially for female students.
Thus the literature supports the effectiveness of a combination of plugged and unplugged activities for enhancing both conceptual understanding of programming and computational thinking skills. It has been fund that unplugged tasks support understanding of a problem, devising and implementing a strategy, creating an algorithm, and dramatizing activities while plugged activities involving the digital media (Scratch, code.org, Lightbot etc.) are motivating.
In this study it was found out that the type of activity had a significant effect on students' satisfaction in the teaching programming as a means of developing cognitive skills. Students' satisfaction increased when they were engaged in programming lessons in their preferred activity type. Thus, combining the two approaches can help students overcome the difficulties they encounter face in programming teaching. Therefore the PSS model, which includes both types of activity, is highly likely to support and appeal to all learners in a programming course.

Recommendations
For the teaching programming, we recommend that plugged activities should be included in order to • Determine students' levels of interest in using a computer before starting teaching programming for increase satisfaction with programming, and • Find out students' views regarding their preferred learning environment.
We recommend unplugged activities that • include a problem situation that may have more than one solution.
• Include role-playing or other drama methods.