Article
To read the full-text of this research, you can request a copy directly from the authors.

Abstract

Scratch is a visual programming environment that is widely used by young people. We investigated if Scratch can be used to teach concepts of computer science (CS). We developed learning materials for middle-school students that were designed according to the constructionist philosophy of Scratch and evaluated them in a few schools during two years. Tests were constructed based upon a novel combination of the revised Bloom taxonomy and the Structure of the Observed Learning Scratch is a visual programming environment that is widely used by young people. We investigated if Scratch can be used to teach concepts of computer science (CS). We developed learning materials for middle-school students that were designed according to the constructionist philosophy of Scratch and evaluated them in a few schools during two years. Tests were constructed based upon a novel combination of the revised Bloom taxonomy and the Structure of the Observed Learning Outcome taxonomy. These instruments were augmented with qualitative tools, such as observations and interviews. The results showed that students could successfully learn important concepts of CS, although there were problems with some concepts such as repeated execution, variables, and concurrency. We believe that these problems can be overcome by modifications to the teaching process that we suggest. Outcome taxonomy. These instruments were augmented with qualitative tools, such as observations and interviews. The results showed that students could successfully learn important concepts of CS, although there were problems with some concepts such as repeated execution, variables, and concurrency. We believe that these problems can be overcome by modifications to the teaching process that we suggest.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

... We evaluated the students' answers to the questions in the achievement tests, employing a combined taxonomy (Bloom and SOLO), as used in [3] . ...
... Adapting from prior research [3] , we developed 2 instruments: the CS1 Student Profile Questionnaire (CSPROQ) and Introductory Programming Achievement Test (IPAT). The participants provided demographic data with the CSPROQ and achievement data using the IPAT. ...
... IPAT was used as a pretest, then with reordering questions, as a posttest. An author in [3] and two researchers validated both the CSPROQ and IPAT. ...
Article
Full-text available
This article presents datasets representing the demographics and achievements of computer science students in their first programming courses (CS1). They were collected from a research project comparing the effects of a constructionist Scratch programming and the conventional instructions on the achievements of CS1 students from selected Nigerian public colleges. The project consisted of two consecutive quasi-experiments. In both cases, we adopted a non-equivalent pretest-posttest control group design and multistage sampling. Institutions were selected following purposive sampling, and those selected were randomly assigned to the Scratch programming class (experimental) and the conventional (comparison) class. A questionnaire and pre- and post-introductory programming achievement tests were used to collect data. To strengthen the research design, we used the Coarsened Exact Matching (CEM) algorithm to create matched samples from the unmatched data obtained from both experiments. Future studies can use these data to identify the factors influencing CS1 students' performance, investigate how programming pedagogies or tools affect CS1 students' achievements in higher education, identify important trends using machine learning techniques, and address additional research ideas.
... Visual programming environments such as Scratch (Resnick et al., 2009), Alice (Cooper et al., 2000), and Greenfoot (Kölling, 2010) were used by researchers to teach the basics of object-oriented programming (OOP) and CT, and the findings of the research on these programming environments were promising. Even though the visual programming environments had positive effects on students' learning performance, they still need to be used with well-designed teaching methods and learning materials (Chen et al., 2019;Meerbaum-Salant et al., 2013;Mladenovic et al., 2021). Moreover, these programming environments do not have a proper feedback mechanism to help novice programmers understand the errors in their algorithms (Meerbaum-Salant et al., 2011). ...
... The researchers integrated visual programming environments into CS education to help novice programmers overcome their learning difficulties. For example, a study (Meerbaum-Salant et al., 2013) with Scratch showed that students' learning of CS concepts was improved. Yet the students still had difficulty in understanding concepts such as variables, concurrency and repeated executions: Although Scratch has some positive effects on the learning of CS concepts, it does not properly support OOP. ...
... Current research reveals that visual programming environments need to be used with a well-designed teaching methods, and learning materials should be provided to support their use (Meerbaum-Salant et al., 2013;Repenning et al., 2010;Weintrop & Wilensky, 2019) even though they have positive effects on teaching programming. Otherwise, these programming environments will only bring a short burst of enthusiasm for novice programmers (Repenning et al., 2010). ...
Article
Background and Context Though still a nascent area of research, serious games have been presented as means of engaging students in computer programming and computational thinking due to their immersive and interactive nature. Existing research is limited in its ability to provide systems based on sound instructional design models, and only a few studies validate their design with statistical support. Objective This study investigated the effects of a game which is based on experiential learning theory under framework of the four-component instructional design model on undergraduate students’ learning performance in conceptual knowledge of object-oriented programming and computational thinking skills. Method A pre-test and post-test quasi-experimental design was used to study the effects of the experiential serious games on conceptual knowledge of OOP and CT skills of 61 non-engineering students with and without prior programming knowledge. Findings The statistical analyses reveal that students with and without programming experience significantly improved their understanding of fundamental concepts of OOP. There were only weak correlations among students’ creative problem solving, attitudes towards digital game-based learning of programming, and learning. Implications We provide several recommendations for researchers and practitioners for designing and developing an effective serious game to teach novice programmers computer programming.
... Uno de los principales objetivos de Scratch es que la programación se incluya en los escenarios educativos para el desarrollo de habilidades y para mejorar el aprendizaje en otras disciplinas [14]. Al respecto, fue incluido en escuelas primarias [19], en escuelas secundarias [22], en universidades [9] y en actividades extracurriculares [15]. ...
... Por su parte Meerbaum-Salant y colaboradores [22] investigaron la utilización de Scratch y el desarrollo del PC. Encontraron que pocos proyectos incluyen bucles de repetición y variables ya que estos requieren de diferentes niveles estructurales y relacionales, es decir de mayores habilidades cognitivas. ...
... Abajo se indica el nivel alcanzado para cada habilidad del PC considerada. Estos resultados son coincidentes con los presentados por Meerbaum Salant [22] quienes encontraron que los niveles de rendimientos del estudiantado utilizando Scratch no siempre fueron altos y que los conceptos más abstractos requieren del involucramiento de actividades cognitivas superiores. Si bien la programación en Scratch encuentra ciertas similitudes con, por ejemplo la personalización de smartphone, se convierte en una práctica prometedora para que las y los jóvenes se conviertan en productores/diseñadores no siendo meros consumidores de entornos digitales [25]. ...
Article
Full-text available
La programación se está incorporando en los espacios educativos a través de diferentes resoluciones. Una de las perspectivas de su incorporación es hacerlo de manera transversal conjuntamente con otros espacios curriculares y en este contexto el Pensamiento Computacional adquiere relevancia. En este trabajo presentamos una investigación que adoptó la metodología conocida como estudios de diseño donde se planificó una secuencia didáctica para el aprendizaje de la Ingeniería Genética, en la escuela secundaria, la cual se encuentra prescripta en los diseños curriculares de 5º año con orientación en Ciencias Naturales. Para ello se le propuso a las y los estudiantes situaciones problemáticas en donde debían construir modelos de Ingeniería Genética utilizando Scratch. Los principales resultados muestran que la utilización de Scratch como primer lenguaje de programación permite el acercamiento del estudiantado al desarrollo del Pensamiento Computacional al tiempo que desarrollan prácticas científicas como la modelización.
... Concurrency: multi-threading is an interesting feature of Scratch, which allows students to get accustomed with concurrent programming concepts by the means of sprite (the main abstractions from the language) control. As it was presented in (Meerbaum-Salant et. al., 2013), the concepts related with concurrency can be considered at two levels: "type 1 concurrency occurs when several sprites are executing scripts simultaneously, [...] type 2 concurrency occurs when a single sprite executes more than one script simultaneously". Also, there is a rather lightweight multi-threading mechanism, as the language i ...
... "The concept of message passing is quite complex, combining concurrency, synchronization, and the asymmetric roles of the sender and receiver." (Meerbaum-Salant, 2013). ...
... In the foll owing weeks, they were able to use control blocks and had no problems with synchronization. Meerbaum-Salant et al. (2013) argue that Scratch allows students to develop affective skills but fails to help them internalize some concepts (variables, synchronicity, and repetition). Only a few participants used the other blocks (sound, sensing, variables, and pen). ...
... There are a handful of studies addressing Scratch use among preschool teachers or preservice preschool teachers. Researchers generally focus on middle school students(Meerbaum-Salant, Armoni & Ben-Ari, 2013;Oluk & Korkmaz, 2016), teachers(Van Zyl, Mentz & Havenga, 2016; Yildiz, Çobanoğlu & Kişla, 2020), and preservice teachers(Altanis & Retalis, 2019;Kwon, Lee & Chung, 2018;Tijani, Callaghan & de Villers, 2020). For example, Moreno-León and Robles ...
Article
This paper analyzed Scratch projects developed by undergraduate students. The sample consisted of 22 child development students (18 women and four men) in the 2018-2019 academic year. The study adopted an action research design within the scope of a course titled “Teaching Science and Mathematics in Preschool Education.” The research was conducted within 14 weeks. In the first four weeks, we provided participants with training on why and how to use Scratch in science and mathematics teaching. In the following ten weeks, participants designed Scratch projects every week based on age groups, topics, and learning outcomes of their choice. Participants evaluated their projects themselves and also received feedback from peers and academics. Each participant designed ten Scratch projects (five for math and five for science). The data consisted of 220 Scratch projects and design logs. The data were analyzed using content analysis. In the first weeks, participants knew little about the content of Scratch and used one or two characters and mostly control and looks blocks. In the following weeks, they learned more about Scratch and used different Blocks. Anahtar Kelimeler Scratch, science education, mathematics education, preschool education, coding
... In a study by Yallihep and Kutlu (2020) which investigated the effect of games on students' understanding of programming concepts, it was reported that teaching through games did not have a positive effect on students' attitude towards the course. Meerbaum-Salant et al. (2013), who evaluated the teaching materials they developed via Scratch with secondary school students, reported that they experienced difficulties in teaching certain topics such as compilation, variables, and flow. However, to avoid bias, for which platform the academic achievement test was developed should be taken into consideration when evaluating these results. ...
... When they get into it, it goes faster. In the present study, the finding that the impact of the teacher's classroom management approach was viewed positively by the students shows a consistency with the findings reported in other studies that unplugged activities contribute positively to students' long-term memory span and motivation level due to the interactions they have with each other and with their teachers (Zhan et al., 2022), and that close and effective supervision by teachers can facilitate more effective learning than leaving students alone with the devices (Meerbaum-Salant et al., 2013). ...
Article
Full-text available
The aim of this study is to compare the effects of unplugged and plugged-in activities on academic achievement and computational thinking (CT) skills of sixth-grade students. Mixed-method research was carried out to explore whether there were differences between the groups, and to learn the students' opinions and experiences regarding the practices. For the quantitative phase, a quasi-experimental design was used with two groups. For qualitative phase, 12 students were interviewed. The participants were 84 sixth-grade students (between the ages of 10 and 11). The intervention was designed on a selection/construction of activities from seven different basic programming web platforms for the plugged-in group and the proposed national curriculum unplugged activities for the unplugged group. The results showed that significant differences between groups in academic achievement favoring the unplugged activities, but not in CT skills. Development in CT skills contributed to the unplugged group's academic achievement. In addition, qualitative results showed that the plugged-in group perceived their activities as fun and entertaining, but not exactly like a lesson; in contrast, the unplugged group did not experience anxiety or boredom since they perceived the activities as educational. CT explained 27 percent of the variance in academic achievement, suggesting that this skill is important for academic achievement in basic programming. These results suggest that students can improve their academic achievement and maintain the level of CT acquisition across unplugged and plugged-in activities. This article contributes to the body of knowledge about the positive impact of unplugged activities on teaching CT and programming fundamentals.
... The installation of the program is completely free, but its use is for educational purposes. Users can also share their games and animations on the Scratch website as they share on social media sites because Scratch has a social computing network to share projects (Meerbaum-Salant, Armoni, & Ben-Ari, 2013). When the Scratch program is examined, it is observed that its design is quite simple and understandable. ...
Article
"Abstract: In this study, it was aimed to examine the pre-service pre-school teachers’ opinions about using block-based coding/Scratch in education. 28 pre-service pre-school teachers were participated studying at a public university in a Marmara province region. Within the scope of the study, pre-service teachers were trained on the block-based coding Scratch program for four weeks. A semi-structured interview form consisting of 12 questions was used to determine the opinions of the participants. The data of the study were analyzed using the descriptive analysis method. As a result of the study, 85.71% of pre-school teacher candidates stated that block-based coding education should start at an early age like a language education, this education is important as a necessity of the technology age and all students should benefit from this education in order to provide an effective education, 14.25% of teacher candidates specified that this education is untimely for younger age levels and should not be given to everyone. In addition, the pre-service teachers stated that the block-based coding/Scratch program training helped them gain new ideas in terms of creating materials, improved their creativity and contributed to design abstract material in addition to concrete ones. Additionally, 46.42% of pre-service teachers stated that block-based coding education should start between the ages of 5-7. In this context, it is recommended to provide coding education both in pre-school and undergraduate education."
... Students need not worry about the properties of the underlying notional machine. Several studies show that these environments yield positive results with k-12, non-major, or under-performing students (Meerbaum-Salant et al., 2013). A few research shows that these environments do not scale up or carry over: that is, the students still lack the skills to design algorithms for non-trivial problems (Franklin et al., 2020). ...
Article
Full-text available
Aim/Purpose: The key objective of this research is to examine whether fix-and-play educational games improve students' performance in learning programming languages. We also quantified the flow experiences of the students and analyzed how the flow contributes to their academic performances. Background: Traditionally, learning the first computer programming language is considered challenging, In this study, we propose the fix-and-play gaming approach that utilizes the following three facts to alleviate certain difficulties associated with learning programming: 1. digital games are computer programs, 2. young students are fond of playing digital games, and 3. students are interested in creating their own games. Methodology: A simple casual game Shoot2Learn was created for learning the fundamentals of branching. A number of errors were intentionally implanted in the game at different levels, and the students were challenged to fix the bugs before continuing the game. During the play, the program keeps records of the student’s academic progress and the time logs at different stages to measure the flow experience of the students. The proposed approach was systematically evaluated using a quasi-experimental design in real classroom settings in two countries, Sri Lanka, and USA. Contribution: The results derived from this research provide empirical evidence that the fix-and-play educational games ease some challenges in learning programming and motivate the students to play and learn. Findings: The results show that the first-year programming students who play the fix-and-play game gain statistically significant improvement in their academic performance. However, the result fails to suggest a significant positive correlation between the flow experience and academic performance. Recommendations for Practitioners: Empowering the students to fix the bugs in the educational games they play will motivate them to stay in the game and learn continuously. However, we have to make sure that the types and timing of bugs do not hinder the flow experience of the players, Recommendation for Researchers: Students normally play industry-level high-quality games. Experience and interest in game-playing differ significantly between students. Gender difference also plays an important role in selecting game genres. We need to identify how to address these issues when resources are not sufficient to provide an individualized gaming experience. Impact on Society: Programming is an essential skill for computer science students. The outcome of this research shows that the proposed approach helps to reduce the disenchantment associated with learning the first programming language. Future Research: Further investigation is necessary to verify whether the AI techniques such as user modeling can be used in educational games to reduce the effects of uncertainty associated with the variations in students' gaming skills and other factors.
... Online courses have disrupted traditional education such as in-person college classes [26], but they may eventually prove most useful as a supplement rather than a replacement to traditional education [25]. For one, computer science students have found online learning useful when it incorporates interactive components such as hands-on exercises which may not be possible to execute during a lecture [16,23]. Additionally, while the centralized approach to traditional education can provide useful structure for students new to a domain, the decentralized approach of many online courses can provide room for socialization and creativity in content delivery [27,28]. ...
Preprint
Full-text available
Many scientific fields -- including biology, health, education, and the social sciences -- use machine learning (ML) to help them analyze data at an unprecedented scale. However, ML researchers who develop advanced methods rarely provide detailed tutorials showing how to apply these methods. Existing tutorials are often costly to participants, presume extensive programming knowledge, and are not tailored to specific application fields. In an attempt to democratize ML methods, we organized a year-long, free, online tutorial series targeted at teaching advanced natural language processing (NLP) methods to computational social science (CSS) scholars. Two organizers worked with fifteen subject matter experts to develop one-hour presentations with hands-on Python code for a range of ML methods and use cases, from data pre-processing to analyzing temporal variation of language change. Although live participation was more limited than expected, a comparison of pre- and post-tutorial surveys showed an increase in participants' perceived knowledge of almost one point on a 7-point Likert scale. Furthermore, participants asked thoughtful questions during tutorials and engaged readily with tutorial content afterwards, as demonstrated by 10K~total views of posted tutorial recordings. In this report, we summarize our organizational efforts and distill five principles for democratizing ML+X tutorials. We hope future organizers improve upon these principles and continue to lower barriers to developing ML skills for researchers of all fields.
... It focuses not on the confident use of technology, but on understanding its basic concepts. The current trend for the integration of CT in compulsory education makes the study of its relationship with the term digital competence even more appropriate [4]. ...
... Studies on Scratch show that it is effective in removing many obstacles to programming instruction (Grover, Pea, & Cooper, 2015;Meerbaum-Salant, Armoni, & Ben-Ari, 2013;Sáez-López, Román-González, & Vázquez-Cano, 2016). Similarly, there are studies (Yukselturk & Altiok, 2017) that indicate that Scratch is also effective in overcoming obstacles such as negative attitude towards programming and low self-efficacy. ...
Article
p style="text-align: justify;">This study aims to assess the effects of teaching programming with mBlock on self-efficacy perceptions and attitudes considering programming. Particularly, this study tries to research whether there is a gender difference in middle school students or not. The study was conducted in pre-test/post-test quasi experimental design. The participants of the study which was completed in twelve weeks were 82 middle school students. The data were collected through “Educational Computer Games Assisted Learning Coding Attitude Scale” and “Computer Programming Self-efficacy Scale”. The results of the research indicate that although the self-efficacy perceptions of boys towards programming were higher than the girls’ at the beginning of the research, this difference was closed at the end of the research. The results also show that teaching programming with mBlock to middle school students did not cause gender differences in self-efficacy perceptions and attitudes regarding programming. Although girls’ attitudes regarding programming were slightly higher than boys’, the difference was not considered to be significant. In addition, it was found that programming with mBlock significantly increased students' self-efficacy perceptions and attitudes towards programming. As a result, teaching programming with mBlock can provide similar possibilities for both genders in self-efficacy perceptions and attitudes regarding programming.</p
... Several of these studies aim at investigating students' learning and determining whether the knowledge and performance-related learning objectives were achieved (e.g., Armoni and Gal-Ezer, 2006;Bell at al., 2014;Kert et al., 2019). Generally, there are mixed results, some (e.g., Reppening et al., 2015;Statter and Armoni, 2020) pointing to learning achieved, and some indicating partial success, with meaningful learning for some concepts but insufficient internalization for others (e.g., Meerbaum-Salant at al., 2013). For the purpose of this paper, we are mostly interested in studies that deal with three goals for integrating computing into K-12 curricula, those that we discussed in the introduction. ...
Article
In a previous publication we examined the connections between high-school computer science (CS) and computing higher education. The results were promising—students who were exposed to computing in high school were more likely to take one of the computing disciplines. However, these correlations were not necessarily causal. Possibly those students who took CS courses, and especially high-level CS courses in high school, were already a priori inclined to pursue computing education. This uncertainty led us to pursue the current research. We aimed at finding those factors that induced students to choose CS at high school and later at higher-education institutes. We present quantitative findings obtained from analyzing freshmen computing students' responses to a designated questionnaire. The findings show that not only did high-school CS studies have a major impact on students’ choice whether to study computing in higher education—it may have also improved their view of the discipline.
... It was further described as a free web-based programming tool that allows the creation of media projects, such as games, interactive stories and animations, connected to young peoples' personal interests and experiences (Fagerlund et al., 2020). Scratch is used in all levels of formal educational environments in K-12 schools (Meerbaum-Salant et al., 2013;Moreno-León et al., 2015) and even universities (Malan and Leitner, 2007) worldwide. Studies have explored the use of scratch in teaching CT in K-12. ...
Article
Full-text available
Frameworks for the evaluation of technological instructional tools provide educators with criteria to assess the pedagogical suitability and effectiveness of those tools to address learners’ needs, support teachers’ understanding of learning progress, and recognize the levels of achievement and the learning outcomes of the students. This study applied secondary document analysis and case study to identify five pedagogical indicators for teaching and learning computational thinking, including technology, pedagogical approaches, assessment techniques, data aspect, and teacher professional development. Based on the pedagogical indicators, this study proposed a computational thinking pedagogical assessment framework (CT-PAF) aimed at supporting educators with a strategy to assess the different technological learning tools in terms of pedagogical impact and outcome. Furthermore, three case-study instructional tools for teaching CT in K-12 were analyzed for the initial assessment of CT-PAF. Scratch, Google Teachable Machine, and the iThinkSmart minigames were marched to the underpinning characteristics and attributes of CT-PAF to evaluate the framework across the instructional tools. The initial assessment of CT-PAF indicates that the framework is suitable for the intended purpose of evaluating technological instructional tools for pedagogical impact and outcome. A need for expanded assessment is, therefore, necessary to further ascertain the relevance of the framework in other cases.
... Also, the computer technologies have opened new pathways of learning in the educational settings [3][4][5][6]. The use of computer programming as an educational tool to enhance learning in other disciplines is becoming increasingly common in all levels of education in many countries [7][8][9][10][11][12][13]. Using such facilities, courses should be updated from old paper-based methods to hands-on and computerized versions [14]. ...
... This result is consistent with the claims that teaching coding is effective in fostering the knowledge of computational concepts [11,19,20,39,53]. More specifically, some researchers examined the effects of attending a coding course that used a block-based environment, and they agreed on the positive impact of those on developing students' knowledge of computational concepts [33,44,54]. However, previous research mostly focused on using programming tools and environments such as Scratch [55][56][57], Alice [46], or robotic kits [58]. ...
Article
Full-text available
The purpose of this study is to examine the role of Minecraft-based coding activities on computational thinking (CT) of middle school students. In the study, CT was conceptualized so that it encapsulates not only the knowledge of computational concepts (e.g., loops and conditionals) but also the use of CT practices (e.g., testing and debugging). Data were collected using a combination of knowledge of computational concepts tests, the Minecraft-based coding artifacts, and one-on-one student interviews focusing on the processes of developing computational artifacts. The participants were 20 fifth-grade middle school students from a low-income public school with very limited (if none) formal computer programming experiences before the study. The Minecraft-based coding activities were designed and implemented as an instructional program to last 6 weeks. The results of the study showed a statistically significant increase in students’ knowledge of computational concepts. Based on the analysis of the students’ final coding artifacts, we identified that students mostly used the concepts of sequences, events, loops, and parallelism correctly, whereas variables, operators, and conditionals appeared to be the least successfully used concepts. The qualitative analysis of the artifact-based interviews showed that students employed the CT practices of testing and debugging most of the time while developing an artifact through coding. In contrast, the least resorted CT practice appeared to be reusing and remixing.
... Instead of using one or the other, some researches have shown that learning a blockbased language first would help novice programmers learn a more traditional text-based language. For instance, Meerbaum-Salant, Armoni, and Ben-Ari (2013) and Armoni, Meerbaum-Salant, and Ben-Ari (2015) investigated the transition from learning coding with SCRATCH in middle school to learning a text-based language like C or Java in secondary school and discovered not only that the core CS concepts were successfully learned using the SCRATCH interface, but also that learning SCRATCH first in middle school greatly facilitated student learning more complex language in secondary school; as they noted, "less time was needed to learn new topics, fewer learning difficulties, and they achieved higher cognitive levels of understanding of most concepts" (Armoni, Meerbaum-Salant, and Ben-Ari 2015, p. 1). A recent study done by Grover (2021) revealed similar promising results of this block-to-text approach in middle school classrooms. ...
Article
Full-text available
SCRATCH, developed by the Media Lab at MIT, is a kid-friendly visual programming language, designed to introduce programming to children and teens in a “more thinkable, more meaningful, and more social” way. Although it was initially intended for K-12 students, educators have utilized it for higher education as well, and found it particularly helpful for those who haven’t had the privilege of learning coding before college. In this paper, we propose using SCRATCH to create an interactive and fun project for introduction as a gateway to learn R in introductory or intermediate statistics courses. We begin with a literature review on recent K-12 computing education, as well as how visual coding has been used in college classrooms as an aid for teaching syntax-based coding. Then, we explain the design of the proposed project and share the observations from a pilot study in a liberal arts college with 39 students who had diverse coding experiences. We find that the most disadvantaged students are not those with no coding experience, but those with poor prior coding experience or with low coding self-efficacy. This innovative SCRATCH-to-R approach also offers us a pathway toward an inclusive pedagogy in teaching coding.
... Recognising the importance of coding as a core element of digital literacy (Corneliussen and Prøitz, 2016;Huynh, 2018;Papavlasopoulou et al., 2017), schools around the world have been incorporating coding into their curricula (Corneliussen and Prøitz, 2016;Meerbaum-Salant et al., 2013;Smith et al., 2014;Ward, 2016). Unfortunately, the demand for coding in schools still outpaces available resources, including qualified teaching personnel (Garneli et al., 2015;Huynh, 2018). ...
Article
Full-text available
While digital infrastructure is clearly a critical factor in addressing the digital divide for rural society, it is only one component in realising the benefits of information and communication technology (ICT). It is increasingly acknowledged that citizens, governments, and businesses need to develop skills and motivations to use technologies. It is also recognised that young people and their rural communities are among those who gain the least from opportunities to engage in and benefit from an ever-evolving digital society. As with other areas of rural development, local community institutions and actors assume their own leadership in developing initiatives to overcome challenges and advance digital literacy and in this regard, public libraries have led and continue to hold considerable potential to champion this area. This article reports on the experiences of a 14-month community-based collaborative research project with public libraries engaged in a process of developing coding clubs for children and youth in rural Manitoba, Canada. Our research sets out to answer the questions: first, whether it is viable for public libraries to cultivate advanced digital skills among rural youth and contribute to bridging the rural-urban digital divide by running coding clubs following the CoderDojo model? And second, what are the critical conditions to ensure the success of public library coding clubs? In examining some of the experiences encountered in adopting the coding club as a model of digital literacy building, we discuss wider themes for rural public libraries interested in advancing digital literacy building within their communities.
... However, learning to program is a long and difficult process, even for adult university learners [19,20]. This learning process can be even more complex for young learners for three reasons: 1) traditional programming languages are not grade-appropriate for young students, since their syntax is far removed from natural language [21]; 2) learning programming is challenging for young learners, since it requires some capacity for abstraction in order to see the purpose of a program; and 3) the feedback offered by traditional programming software is limited and not well grounded in the physical reality of young learners [22]. ...
Article
Full-text available
From 2014 to 2017, the Islamic State in Irak and Syria (ISIS), a terrorist political organization of Salafist jihadist ideology, had put in place an operational and relatively stable educational system. Among its Complementary Programs, ISIS included a curriculum for programming using the Scratch software. In this article, we discuss this curriculum by analyzing the content of the official ISIS programming textbook, with the objectives of characterizing: 1) the curriculum’s pedagogical intentions and definition of programming; 2) the programming curriculum; and 3) the religious and military indoctrination value. We found that, first, ISIS’s programming curriculum intentions are more about religious and military injunctions to build the caliphate than they are about developing 21st-century skills such as computational thinking. Second, although the progression of learning in the sequence of activities designed by ISIS seems logical and, overall, well-ordered, the ISIS programming curriculum does not encourage the development of 21st-century skills such as problem solving, discovery learning, or creativity—nor for that matter, the transfer of programming knowledge to different contexts. Finally, the textbook is particularly rich in elements of military and religious indoctrination and effectively participates in the indoctrination of students by helping to inculcate values consistent with ISIS’s jihadist ideology. This contribution seeks to better understand ISIS’s approach to education, which could provide support for initiatives aimed at rebuilding impacted education systems and groups.
... Alanyazın taraması yapıldığında Code.org platformu ile benzer bir çalışma mantığı olan Scratch yazılımı üzerinde çok sayıda çalışmanın olduğu görülmektedir (Çatlak, Tekdal ve Baz, 2015;Gökçearslan ve Kukul, 2012;Meerbaum-Salant, Armoni ve Ben-Ari, 2013;Resnick vd., 2009;Yükseltürk ve Altıok, 2016). Ancak uluslararası düzeyde yoğun şekilde kullanılan platformlardan birisi olan Code. ...
Article
Full-text available
Bu araştırmada, kodlama öğretimi çevrimiçi platformlarından biri olan Code.org’un Kurs 2 ünitesinin değerlendirilmesi amaçlanmıştır. Çalışma kapsamında “Tyler’ın Hedefe Dayalı Değerlendirme Modeli” temel alınmıştır. Çalışmada betimsel ve deneysel yöntemlerden elde edilen nicel ve nitel verilerdir arada yorumlanmıştır. Veri toplama araçları olarak araştırmacı notları, başarı testi, gözlem formu, öğrenci görüş formu ve program değerlendirme anketi kullanılmıştır. Ayrıca, Code.org platformu üzerinde sunulan istatistiklerden de yararlanılmıştır. Çalışmada, platformun sunduğu öğretim programına sadık kalınarak ortaokul seviyesindeki 22 öğrenciyle toplam 22 saatlik uygulama gerçek-leştirilmiştir. Araştırma bulgularına göre başarı testi ortalama puanlarında son test lehine istatistiksel olarak anlamlı düzeyde bir artışın olduğu ancak bu artışın kodlamada yüksek başarıyı sağlamada yeterli olmadığı görülmüştür. Çalışmaya katılan öğrencilerin Code.org uygulamalarına ilişkin olumlu görüş bildirdikleri, öğretmenlerin ise Code.org öğretim programını “orta derecede yeterli” olarak değerlendirdikleri görülmüştür. Bu bulgulara dayanarak Code.org Kurs 2 ünite-sinin daha yeterli hale getirilmesi için revizyon yapılması ve kodlama öğretimin-de kullanılması önerilmektedir.
... Because we believe that STEM with computer science can provide opportunities to learn mathematical concepts (Barr & Stephenson, 2011;Deitrick et al., 2015;Ritz & Fan, 2015;Sengupta et al., 2013). Therefore, computer science can facilitate teaching and learning activities to be interesting and not monotonous (Meerbaum-Salant et al., 2013;Ruthven et al., 2004;Sari et al., 2016;Yin et al., 2007), so that teaching through the technological advances (Duarte & Baranauskas, 2018;Vakil, 2018), the process of curriculum delivery and understanding of various disciplinary/interdisciplinary can be facilitated (Bell et al., 2017;Sagala et al., 2019;Woo et al., 2012). ...
Article
Full-text available
Metaphorical thinking is important in improving the formation and discovery of learning ideas in the 21st-century. However, the metaphorical thinking of Indonesian students is below the international average in terms of cognitive process, according to PISA 2018. This study aims to identify differences in the ability of students' metaphorical thinking in learning STEM and Computer Science (STEM-CS). This research employed the experimental design with a simple random sampling technique to determine the sample. The population of this study was 280 junior high school students in Bandar Lampung, Indonesia. The data collection technique has been tested to see the improvement of metaphorical thinking. Hypothetical testing has been used by one-way ANOVA with a meaningful level of 5%. The results found that the average class value applied to the STEM-CS training model was 88.00, which was higher compared to the STEM class with an average score of 86.00 and the control class with an average score of 73.00. It is concluded that the STEM-CS model can be used as an alternative solution for learning in the industrial era 4.0. El pensamiento metafórico es importante para mejorar la formación y el descubrimiento de ideas de aprendizaje en el siglo XXI. Sin embargo, el pensamiento metafórico de los estudiantes indonesios está por debajo de la media internacional en términos de proceso cognitivo, según PISA 2018. Este estudio tiene como objetivo identificar las diferencias en la capacidad del pensamiento metafórico de los estudiantes en el aprendizaje de STEM y Ciencias de la Computación (STEM-CS). Esta investigación empleó el diseño experimental con una técnica de muestreo aleatorio simple para determinar la muestra. La población de este estudio fue de 280 estudiantes de secundaria en Bandar Lampung, Indonesia. La técnica de recopilación de datos se ha probado para ver la mejora del pensamiento metafórico. Se han utilizado pruebas hipotéticas mediante ANOVA unidireccional con un nivel significativo del 5%. Los resultados encontraron que el valor de clase promedio aplicado al modelo de entrenamiento STEM-CS fue 88,00, que fue mayor en comparación con la clase STEM con una puntuación media de 86,00 y la clase control con una puntuación media de 73,00. Se concluye que el modelo STEM-CS se puede utilizar como una solución alternativa para el aprendizaje en la era industrial 4.0.
... Alanyazın taraması yapıldığında Code.org platformu ile benzer bir çalışma mantığı olan Scratch yazılımı üzerinde çok sayıda çalışmanın olduğu görülmektedir (Çatlak, Tekdal ve Baz, 2015;Gökçearslan ve Kukul, 2012;Meerbaum-Salant, Armoni ve Ben-Ari, 2013;Resnick vd., 2009;Yükseltürk ve Altıok, 2016). Ancak uluslararası düzeyde yoğun şekilde kullanılan platformlardan birisi olan Code. ...
Article
Full-text available
In this study, it was aimed to evaluate the Course 2 unit of Code.org, one of the coding teaching online platforms. Within the scope of the study, "Tyler's Objective-Centered Evaluation Model" was taken as basis. In the study, quantitative and qualitative data obtained from descriptive and experimental methods were interpreted together. Researcher notes, achievement test, observation form, student opinion form and program evaluation questionnaire were used as data collection tools. In addition, the statistics presented on the Code.org platform were also used. In the study, a total of 22 hours of application was carried out with 22 students at the secondary level, adhering to the teaching program offered by the platform. According to the research findings, it was observed that there was a statistically significant increase in the achievement test average scores in favor of the posttest, but this increase was not sufficient in ensuring high success in coding. It was observed that the students who participated in the study gave positive opinions about the Code.org applications and the teachers evaluated the Code.org curriculum as "moderately sufficient". Based on these findings, it is recommended to make the revisions and use the Code.org Course 2 unit in teaching coding.
... As an opensource programming tool, Scratch is used purposefully to promote creativity and enhance the motivation of students to deal with computers (Dohn, 2020). Scratch's programming components, such as expressions, conditions, statements, and variables, are characterized by dragging and dropping blocks (Meerboum-Salant et al., 2013). With the drag and drop method of programming, this environment allows students to design and develop their games, animations, storeys, and simulations, and then share the creations in the online community (Saez-Lopez et al., 2016). ...
This study investigates sixth-grade students’ explorations of tessellations with Scratch through the mathematical aesthetics. For this purpose, the study analyzed the students’ explorations by considering the roles of mathematical aesthetics identified by Sinclair (2004): generative, evaluative, and motivational role. Six middle-school students were asked to create regular and semi-regular tessellations by using Scratch and interviewed individually about the investigation of tessellations. The findings indicated that the students’ generative aesthetic responses to mathematical tasks were most evident in their explorations with Scratch. The students recognized the aesthetic value of mathematical entities while working on tessellations. They never gave up studying on tessellations with Scratch and did not need any external motivation to complete the tasks. Implications for research and practice for teaching are drawn.
... The application of the function to the two groups of students was not significant. Previous studies also found that some concepts are difficult for beginner programmers (Meerbaum-Salant et al., 2013). Grover et al. (2015) developed a course of "Foundations for Advancing Computational Thinking" to promote learners' understanding of algorithmic concepts, but the mechanics of some constructs were difficult for learners to grasp in the context of textbased languages. ...
Article
Full-text available
The rapid development of computers and technology affects modern daily life. Individuals in the digital age need to develop computational thinking (CT) skills. Existing studies have shown that programming teaching is conducive to cultivating students’ CT, and various learning models have different effects on the cultivation of CT. This study proposed a problem-oriented learning (POL) model that is closely related to programming and computational thinking. In all, 60 eighth-grade students from a middle school in China were divided into an experimental group (EG) which adopted the POL model, and a control group (CG) which adopted the lecture-and-practice (LAP) learning model. The results showed that the students who were instructed using the POL model performed better than those who were instructed using the LAP model on CT concepts, CT practices, and CT perspectives. Significant differences were found for CT concepts and CT perspectives, but not for CT practices. Findings have implications for teachers who wish to apply new learning models to facilitate students’ CT skills, and the study provides a reference case for CT training and Python programming teaching.
Article
Background and Context There is a need for teachers who are prepared to teach integrated CS/CT throughout the K-12 curriculum. Drawing on three vignettes of teacher instructional practice, we build on a growing body of literature around how teachers integrate CS/CT into their classrooms after attending CS/CT focused professional development. Objective We are interested in what different instructional approaches look like when elementary teachers engage in teaching CS/CT and what kinds of discourse accompany each of these instructional approaches. Method We utilized a two-step process to code video data of classroom instruction for four teachers. We conducted macro level coding to gain an understanding of the types of knowledge, instructional strategies, and discourse displayed by each teacher. We then conducted micro-level discourse analysis utilizing Brennan and Resnick’s framework for assessing the development of computational thinking. Findings We present vignettes of teachers using three distinct instructional approaches, direct instruction, discovery learning, and scaffolding and modeling. We look across vignettes to discuss the affordances and limitations of each instructional approach. Implications Our findings have implications for how we design curriculum and instruction and conduct CS/CT professional development for K-12 teachers who will integrate CS/CT with other subjects.
Article
Full-text available
Background As a non‐cognitive trait, grit plays an important role in human learning. Although students higher in grit are more likely to perform well on tests, how they learn in the process has been underexamined. Objectives This study attempted to explore how students with different levels of grit behave and learn in an exploratory learning environment. Methods In this study, 66 students participated in seven exploratory tasks in Snap! for approximately 60 min after a 30‐min lecture. Students were categorized into a high grit group and low grit group using a grit scale. The Mann–Whitney U test, epistemic network analysis and lag sequential analysis were used to explore the differences between groups in learning performance, technology acceptance and behavioural patterns. Results Students with different levels of grit engaged in explorative tasks in a short period of time might not present significantly different learning performance, perceptions of usefulness and ease of use, but students higher in grit, actively engaging more different types of activities, tended to put greater sustained effort to solve the challenging task. Take Away Although grit was not significantly correlated with learning performance when students engage in classroom‐based explorative activities, grit did predict whether students are more likely to explore and put greater sustained effort into solving the challenging task.
Conference Paper
Full-text available
Forecasting techniques are evaluated with past data before forecasting future figures. Error series of past periods are used to calculate error statistics to evaluate accuracy of forecasting technique or to compare different methods. Forecast accuracy measures of MSE, RMSE, MPE, MAPE, SMAPE and Theill’s U will be evaluated with Turkish gasoline cars sales data set. ARIMA, ANN and exponential smoothing forecasting techniques will be used to generate forecasts of past periods. These forecasts are evaluated with the given forecast accuracy measures. Selected forecast accuracy measures presented consistent results about selected forecasts.
Article
Problem solving capabilities have often been reported by teachers as a key benefit from creative coding activities in school-age children. However, few studies to date have defined problem solving, and investigated how it is operationalised in interdisciplinary creative coding tasks. This study aims to build knowledge about students’ use of computational thinking and computer science concepts for problem solving when coding animated narratives. The research investigated students’ coding processes using data gathered from audio and device display recordings and semi-structured interviews. Results suggest limitations to the use of creative coding tasks if the expectation is to develop computational thinking and systematic problem solving strategies, or learn basic computer science concepts. They revealed that novice students rarely solved coding problems using optimal technically-based strategies despite being given explicit instruction on their use, opting instead to bypass problems by adjusting intended outcomes, or by using low level code translation strategies. Results demonstrate that engaging computational thinking or even demonstrating understanding of basic computer science concepts was not a requirement to produce a viable creative coding outcome. This study contributes new understanding of students’ coding practices when engaged in creative coding tasks in regular, non-specialist classrooms. Its findings challenge the commonly-held assumption that coding is a natural ‘vehicle’ to develop computational thinking and systematic approaches to problem solving. It also questions the learning that results from the non-technical, inefficient and often ineffective problem solving practices students employ during ‘creative coding’ tasks, that are frequently used by non-specialist teachers in response to curriculum requirements.
Article
This study investigates how digital game co-creation promotes Computational Thinking (CT) skills among children in sub-urban primary schools. Understanding how CT skills can be fostered in learning programming concepts through co-creating digital games is crucial to determine instructional strategies that match the young students' interests and capacities. The empirical study has successfully produced a new checklist that can be used as a tool to describe the learning of CT skills when children co-create digital games. The checklist consists of 10 core CT skills: abstraction, decomposition, algorithmic thinking, generalisation, representation, socialisation, code literacy, automation, coordination, and debugging. Thirty-six 10–12 year-olds from sub-urban primary schools in Borneo participated in creating games in three separate eight-hour sessions. In addition, one pilot session with five participants was conducted. The game co-creation process was recorded to identify and determine how these young, inexperienced, untrained young learners collaborated while using CT skills. Analysis of their narratives while co-creating digital games revealed a pattern of using CT while developing the games. Although none of the groups demonstrated the use of all ten CTs, conclusively, all ten components of the CT were visibly present in their co-created digital games.
Chapter
Full-text available
COVID-19 pandemisinin eğitim ortamlarında yarattığı tahribatı önlemeye yönelik çevrimiçi ortamların kullanılması, gerçekleştirilen faaliyetlerde kalite güvencesini sağlamak önemlidir. Geleneksel yüz yüze ortamlardan çevrimiçi ortamlara geçişte kurumların gösterdiği ani refleks yapılan çalışmaların Acil Uzaktan Eğitim (Emergency Remote Teaching) olarak adlandırılmasını beraberinde getirmiştir. Eğitim kurumları kendi imkan ve kabiliyetleri doğrultusunda beliren durumu önlemeye yönelik iyi niyetli birtakım girişimlerde bulunmuş olsalar da bu girişimler mevcut durumun üstesinden gelme çabasından çok da öteye gidememiştir. 21. yüzyılda aniden beliren ve tüm dünyayı etkisi altına alan COVID-19 krizinin çevrimiçi öğrenme ortamlarının etkili, verimli ve çekici bir şekilde planlamasına bir fırsat oluşturacağı düşünülmektedir. Öyle ki, uzaktan eğitimin tarihine bakıldığında geçmişinin 17. yüzyılın başlarında mektupla eğitime; teknoloji temelli uzaktan eğitimin başlangıcının ise 1900'lü yılların ilk yarısında görsel-işitsel araçların okullara girişine dayandığı (Jeffries, 2008) söylenebilir. uzun bir geçmişi olan uzaktan eğitim çalışmaları teknolojinin de gelişmesiyle birlikte küresel boyutta etki edecek biçimde genişlemiştir. Özellikle son 40 yıla bakıldığında (Şekil 1) bu etkinin nasıl değiştiği görülmekte ve bu kitabın oluşmasına motive olan, kitabın editörleri tarafından gerçekleştirilmiş bir çalışma bulgusu yer almaktadır. ŞEKİL 1 Şekil 1. Uzaktan eğitim ile ilgili ERIC veritabanında taranan çalışmaların gerçekleştirildiği ülke değişkeni açısından dönemsel grafiği Şekil 1'e göre, uzaktan eğitim ile ilgili yapılan çalışmalarda önde gelen ülkelerin genelde Kanada, Avustralya, İngiltere ve Amerika Birleşik Devletlerinin olduğu söylenebilir. Her ne kadar Türkiye menşeli yapılan uzaktan eğitim çalışmalarının ERIC veritabanında indekslenmesi 2005 yılına dayansa da, geçtiğimiz son beş yılda (2015-2020) İngiltere'den sonra ikinci sırada gelmektedir. Konu ile ilgili detaylı bilgi edinmek, soru ve görüşlerinizi iletmek için aşağıdaki e-posta adresleri vasıtasıyla bizlerle iletişime geçebilirsiniz. Editörler: Nazire Burçin HAMUTOĞLU, Barış ÇUKURBAŞI, Mübin KIYICI
Article
Programming education is strongly emerging in elementary and high school. Diversity and inclusion are important topics, however insights on suited programming materials for younger learners with visual impairments are lacking. A wide range of programming materials for children exists, diverse in both what is being programmed (output) and how this is done (input), yet often relying on visual features. An understanding of usability and accessibility aspects of these different materials is important to inform educational practice and to increase understanding of what makes programming materials suited for low vision and blind children. The aim of this study is to explore usability and accessibility of programming materials currently used in education to low vision and blind children in the Netherlands. A focus group was conducted with six teachers or IT experts, all working with the target group in special education. The thematic analysis of the discussion of 25 materials (including unplugged lessons, robots and robotic kits, block-based and text-based languages) showed the potential of several materials, especially unplugged lessons, and the continuing search for suited materials and workforms specifically for the blind children. Further, prioritizing “fun” and close connections to children’s daily life as well as careful explorations of usability at the cognitive level came forward as important factors for future research and development in programming materials for low vision and blind children. These insights can contribute to obtain an inclusive approach to programming for young learners.
Article
Full-text available
Various aspects of computational thinking (CT) could be supported by educational contexts such as simulations and video-games construction. In this field study, potential differences in student motivation and learning were empirically examined through students’ code. For this purpose, we performed a teaching intervention that took place over five weeks, with two-hour sessions per week, plus two more weeks for the pretest and post-test projects. Students were taught programming concepts through a science project; one group represented the function of a basic electric circuit by creating a simulation, while the other group represented the same function by creating a video game in which a player should achieve a score in order to win. Video game construction resulted in projects with higher CT skills and more primitives, as measured through projects’ code analysis. Moreover, the video-game context seems to better motivate students for future engagement with computing activities.
Conference Paper
Full-text available
This paper features a model for promoting Science, Technology, Engineering, and Mathematics (STEM) in the K-12 education level by developing teaching platforms together with university students. Usually, technical universities develop simulators and technologies as part of academic plans and research projects with students. For instance, in sessions of a university semester project, students often develop technical solutions useful for later use to promote STEM topics. We document experiences at TU Berlin where bachelor students developed a simulator using a drone for measuring CO 2 levels in the atmosphere. The topic was challenging enough to fulfill the research requirements at the university; at the same time, the resulting code provided the material to prepare teaching activities at the K-12 level. Using the publicly accessible code, we also elaborate on lesson plans and activities to apply this specific example at the K-12 level.
Chapter
Computer programming skills are essential for a variety of disciplines in the fields of Science, Technology, Engineering and Mathematics (STEM). To support learning of programming in personalized ways, Programming Tutors (PTs) have been utilized in higher education contexts for decades. However, implementation of PTs with mobile devices has remained unexplored from both design and adoption standpoints. In this research, we designed, implemented, and trialled a PT based on Telegram Messenger. The tutor was introduced to a cohort of engineering freshmen (N=227) in a computer programming course; however, it was introduced as an optional learning tool with no extrinsic incentives for fostering its adoption. Under these conditions, students’ activity with the tool was monitored for 11 days. A total of 99 students (44.7%) chose to use the tutor and did so at least once. In average, students who used the tutor solved 9.2 tasks out of a maximum of 18 (SD=5.49). The use of notifications was found highly influential to motivate tutor use: within 3 days of a student receiving a reminder notification, 80.6% of responses to tasks were registered. The tutor scored a mean of 73.8 (SD=13.81) in the Systems Usability Scale. Students suggestions for improvement emphasized the need for more elaborate feedback after submitting their responses to problems and leveling of task difficulty. Regarding the tutor’s best features, mobility and ease of use of the interface were found the most prominent.
Article
Use of theory within a field of research provides the foundation for designing effective research programs and establishing a deeper understanding of the results obtained. This, together with the emergence of domain-specific theory, is often taken as an indicator of the maturity of any research area. This paper explores the development and subsequent usage of domain-specific theories and theoretical constructs (TCs) in computing education research (CER). All TCs found in 878 papers published in three major CER publication venues over the period 2005–2020 were identified and assessed to determine the nature and purpose of the constructs found. We focused more closely on areas related to learning, studying, and progression, where our analysis found 80 new TCs that had been developed, based on multiple epistemological perspectives. Several existing frameworks were used to categorize the areas of CER focus in which TCs were found, the methodology by which they were developed, and the nature and purpose of the TCs. A citation analysis was undertaken, with 1727 citing papers accessed to determine to what extent and in what ways TCs had been used and developed to inform subsequent work, also considering whether these aspects vary according to different focus areas within computing education. We noted which TCs were used most often and least often, and we present several brief case studies that demonstrate progressive development of domain-specific theory. The exploration provides insights into trends in theory development and suggests areas in which further work might be called for. Our findings indicate a general interest in the development of TCs during the period studied, and we show examples of how different approaches to theory development have been used. We present a framework suggesting how strategies for developing new TCs in CER might be structured, and discuss the nature of theory development in relation to the field of CER.
Article
The 1980s and 1990s saw a robust connection between computer science education and cognitive psychology as researchers worked to understand how students learn to program. More recently, academic disciplines such as science and engineering have begun drawing on cognitive psychology research and theories of learning to create instructional materials and teacher professional development materials based on theories of learning, to some success. In this paper, we follow a similar approach by highlighting common areas of interest between computer science education and cognitive psychology–specifically theories of analogical transfer–and discuss how cross-pollination of theoretical constructs between disciplines can support research on the teaching and learning of multiple programming languages. We will also discuss areas where computing education research can adapt the existing theories from cognitive psychology to develop domain-specific theories of knowledge transfer in computing and feed back into cognitive psychology research to inform larger debates about the nature of cognition and learning.
Article
Fostering students' computer programming skills has become an important educational issue in the globe. However, it remains a challenge for students to understand those abstract concepts when learning computer programming, implying the need to provide instant learning diagnosis and feedback in computer programming activities. In this study, a Two-Tier Test-Based Programming Training (T ³ PT) approach was proposed. Accordingly, an online learning system was developed to provide students with precision feedback for guiding them to identify misconceptions of computer programming to improve their computer programming learning achievement. In order to examine the effects of the proposed approach, a learning system was developed and a quasi-experiment was conducted. Two classes of 99 eighth-grade students from Taiwan were divided into an experimental group and a control group. The students in the experimental group used the learning system based on the T ³ PT approach, while the control group used the conventional learning system. The experimental results showed that the proposed approach was significantly superior to the conventional programming learning approach in terms of students' programming logic concepts, problem-solving awareness, technology acceptance, and satisfaction with the learning approach. Accordingly, discussion and suggestions are provided for future research.
Chapter
Full-text available
Etkili ve verimli öğrenme-öğretme yaşantıları oluşturulmasında eğitimcile�rin mesleki yeterlilikleri ilk sırada yer almaktadır. Bu yeterlikler kapsamında her dersin içeriğine uygun öğretim yöntem ve tekniklerinin belirlenmesi noktasında eğitim fakültesi lisans programlarında yer alan öğretim ilke ve yöntemleri dersi ol�dukça önemli bir yere sahiptir. Bu dersin işlenmesinde salgın koşullarının etkisiyle gerçekleştirilen çevrimiçi öğrenme ortamlarında en yüksek etkililiğe ulaşılması için yapılması gerekenlere büyüteç tutulması elzemdir. Bu noktada öğretim ilke ve yöntemleri dersinin çevrimiçi öğrenme ortamlarında tasarlanması ve uygulanma�sı hedeflenmiştir. Bu kapsamda öğretmen adaylarının, öğretim sürecinde kullana�cakları öğretim ilke ve yöntemlerini uygulama becerisini geliştirmek için gerekli olan temel kavramları öğrenmelerini sağlamak amaçlanmıştır. Bu amaç doğrultu�sunda öğretmen adaylarının temel kavramları öğrenmelerini sağlama açısından örnek çevrimiçi ders planı hazırlanmıştır. Ders planında yer alan konu alanındaki kazanımlar; ilgili olduğu program çıktıları ve Türkiye Yükseköğretim Yeterlilikleri Çerçevesi (TYYÇ) kapsamında yer alan bilgi, beceri ve yetkinlik düzeyleri ile iliş�kilendirilmiştir. Öğretmen adaylarına yönelik öğretim ilke ve yöntem teknikleri temel kavramlar konusu ile ilgili bilgi ve uygulama becerilerinin kazandırılması, çevrimiçi öğrenme ortamlarının tasarlanması noktasında gerekli bir yaklaşımdır. Çevrimiçi öğrenme ortamlarının tasarımında kazanımları elde etmeye yardım�cı olarak kullanılan Web 2.0 uygulamalarının; öğretmen adaylarının öğretim ilke ve yöntemlerini belirlenen konular üzerinden yaparak yaşayarak öğrenmelerine, aynı zamanda 21. yüzyıl becerileri ile donatılmış, girişimcilik ve sosyal becerile�ri kazanmış, düşüncelerini ifade edebilen, kendini gerçekleştirmiş bireyler olarak topluma kazandırılmalarına aracılık edeceği düşünülmektedir
Article
Full-text available
An engaging first programming class (CS1) often inspires students’ passion for computer science (CS). However, the evidence in the literature suggests that the average CS1 classes are anything but engaging for many students. The performance of CS compared to other science, technology, engineering, and mathematics (STEM) courses in international student engagement surveys seems to substantiate CS1 failure, attrition rates, and lack of diversity in most CS classes. Meanwhile, for its simplicity in introducing programming to beginners, primary and secondary schools use Scratch, an educational programming environment developed by the Massachusetts Institute of Technology, USA. For the same reason, higher institutions now include some forms of Scratch instruction in CS1.The question remains, to what extent is Scratch engaging, especially for students in higher education? This study addressed this gap by observing college computer science students exposed to a constructionist Scratch programming pedagogy. We adopted a descriptive design based on quantitative observations. To observe the class during a weekly 2-hour session, we employed five CS educators, one observer per week. Each observer, employing a 20-item observation protocol, rated the extent of affective, behavioral, and cognitive engagement of first-year CS students in a polytechnic in North Central Nigeria. Most of the students were learning to program for the first time. Analysis of the data showed a significant agreement in the ratings of the five observers for overall student engagement, although the impact was moderate. However, while agreement in their ratings for affective engagement was significant, with a large effect, there was no significant concordance in their ratings for behavioral engagement. Observers also significantly agreed in their ratings for cognitive engagement; however, the impact was moderate. These findings suggest that employing Scratch in higher education can be engaging and useful, especially for students with no prior programming experience.
Chapter
Full-text available
Dijital çağın hayatın her alanını benzersiz bir hızla dönüştürdüğü yeni dönemde, öğrenme-öğretme faaliyetleri de bu durumdan büyük ölçüde etkilenmiştir. Özellikle Covid-19 salgını ile birlikte öğrenme-öğretme sürecinde geleneksel metotların gereksinimleri karşılamak için yetersiz kaldığı daha açık bir şekilde anlaşılmıştır. Salgının etkisiyle “zorunlu” ve “hızlı” bir şekilde çevrimiçi ortamlara taşınan öğrenme-öğretme faaliyetleri, gelecek dönemde bu durumun kısmen ya da tamamen sürecin bir ortağı haline geleceği konusunda şüphe taşımamaktadır. Özellikle Maliye Bölümü gibi, teorik ders ağırlığının ders planlarının tamamı ya da büyük bir bölümünü kapsadığı sosyal bilimler alanında, çevrimiçi öğrenme ve öğretmenin geleceği konusundaki çalışmaların önemi oldukça fazladır. Bu çalışma sözü edilen ihtiyaca yönelik, Maliye Bölümü derslerinin çevrimiçi ortamda gerçekleştirilmesine ilişkin öğretimin tasarım süreçleri ile bu süreçlerin kalite güvencesinden ödün vermeyerek; öğrenme kazanımlarını ve bu kazanımların ilişkili olduğu program çıktıları ile Türkiye Yükseköğretim Yeterlilikler Çerçevesi (TYYÇ) kapsamındaki bilgi, beceri ve yetkinlik düzeylerini elde etme konusunda mevcut durum ve gelecek döneme ilişkin değerlendirmeleri içermektedir. Bu bağlamda Kamu Maliyesi dersi kapsamında “Vergilendirmenin Makroekonomik Etkileri” konusu, Maliye Bölümü derslerinin çevrimiçi ortamda daha etkili ve verimli bir şekilde gerçekleştirilmesi için örnek bir ders planı hazırlanmıştır. Bu ders planı ile birlikte, TYYÇ yeterliliklerine uygun bir standardın belirlenmesi ve Maliye Bölümü derslerinin çevrimiçi ortama hızlı bir şekilde uyum sağlaması için hem öğretim elemanları hem de öğrenciler özelinde bazı değerlendirmeler yapılmış ve öneriler sunulmuştur.
Chapter
In our Computing with Emil project, currently in its 4th year, we are engaged in the design and research focused on productive constructionist learning of programming at the primary level, as a continuum from year to year. We are exclusively concerned with computing for all learners approach, being implemented by generalist primary teachers in their own classes. For similar purposes, national curricula usually list computational concepts, which pupils should learn and, in general agreement among educational experts, are considered developmentally appropriate for the primary school. However, in our work, we feel the vocabulary being normally used for this is too coarse-grained to clearly specify the learning goals, especially in the area of programming. Therefore, for each computational concept, we try to identify a set of related operations that primary pupils should learn in any particular year. In this research, we tried to verify whether our approach is comprehensible for teachers and prolific in outcomes for their pupils. We wanted to find out whether they realise that (a) different operations performed with each concept have different cognitive demands, and (b) these demands determine the arrangement of activities in an intervention. We addressed a large group of teachers who had already participated in our professional development sessions on the intervention for Year 3. We chose repetition as one of the concepts and designed six assessment tasks focused on various operations that pupils perform with it. We did not inform them of how we rank the tasks; we asked them to solve them and rank from the simplest to the most difficult, and explain their decision. We analysed the collected data by various methods, and in the paper, we discuss our findings. Teachers correctly distinguished different operations and helped us better understand challenges of projecting and assessing conceptual understanding.KeywordsProgramming in lower primaryConcepts and their cognitive demandsGeneralist primary teachers’ perspective
Conference Paper
Full-text available
Applying new innovative learning methods in schools can strongly influence and reform them. Schools are vital organizations adequate under constant changes, reformations and developments. Teachers, students and parents, all contribute into these changes materializing educational envisions. We strongly questioned ourselves how these innovative educational approaches can influence and reform an urban and a rural school respectively. We selected an urban, Model Experimental School and a typical rural High School in Greek countryside. We applied almost the same innovative approaches to both schools inquiring gradually the out coming changes. In the case of the urban school new education methods were necessary to be applied in order to raise students’ interest, entangle them into educational practices that are not so font of and reduce school abandoning. On the other hand applying almost the same practices to an Experimental School has to do with its fundamentals and basic principles. Students attending a Model Experimental School were chosen after exams and are in general willing to take part into educational programs, excellence groups, experimental workshops, exchange mobilities and other innovative projects. Although, we founded that the rural school reformed rapidly into a highly developing school, achieving gradually some of its pronounced educational goals. Teachers’ and administration’s vision began by encouraging teachers to participate into educational meetings, conferences and developing courses. Additionally, groups of students were organized to prepare several projects according to their interests. We can mention the Astronomy group, the Environmental group and the Drama group. Accordingly, we invested on extroversion and presentation of projects. Astronomical and Environmental events and Drama performances were some activities that joined the rural school with the local society, parents and communities. Furthermore, students revealed a remarkable interest about sciences and culture. On the other hand at the Model Experimental School, all these activities regarded as standard activities, sometimes as obligations. Of course also this school had some remarkable educational programs, interesting experimental workshops and extroversion to the local community. What differentiates the Experimental School is its excellence groups, were teachers and students are approaching non typical subjects of Science, Art and Culture. These groups seem to be the comparative advantage of the urban school leading to extra-curriculum knowledge. In any case the urban school seems to develop and reform itself, but not as fast and crucial as the rural school.
Article
Full-text available
In recent years, research in child-computer interaction shifted the focus from design with children for giving them a voice in the design process, to design by children so as to bring child participants different benefits, such as engagement and learning. Design workshops, encompassing different stages, are however challenging in terms of engagement and learning, e.g., they take a prolonged commitment and concentration capabilities. They are potentially more challenging when held at a distance, as it was the case in recent years due to the COVID-19 pandemic. This paper explores at-a-distance smart-thing design with children, and how it can engage different children and support their learning in programming. The paper reports on a series of design workshops with 20 children, aged from 8 to 16 years old, all held at a distance. They were uniformly framed with the DigiSNaP design framework and toolkit. The first workshop enabled children to explore what smart things are, start ideating their own and scaffold their programming. The other workshops enabled children to evolve their own smart-thing ideas and programs. Data were gathered in relation to children’s engagement and learning, from different sources. Results are promising for future editions of smart-thing design at a distance or in hybrid modality. They are discussed in the conclusions of the paper, along with guidelines and difficulties faced with design by children at a distance.
Chapter
In our age, computational thinking that involves understanding human behavior and designing systems for solving problems is important as much as reading, writing and arithmetic for everyone. Computer programming is one of the ways that could be promote the process of developing computational thinking, in addition to developing higher-order thinking skills such as problem solving, critical and creative thinking skills etc. However, instead of focusing on problems and sub-problems, algorithms, or the most effective and efficient solution, focusing on programming language specific needs and problems affects the computational thinking process negatively. Many educators use different tools and pedagogical approaches to overcome these difficulties such as, individual work, collaborative work and visual programming tools etc. In this study, researchers analyze four visual programming tools (Scratch, Small Basic, Alice, App Inventor) for students in K-12 level and three methodologies (Project-based learning, Problem-based learning and Design-based learning) while teaching programming in K-12 level. In summary, this chapter presents general description of visual programming tools and pedagogical approaches, examples of how each tool can be used in programming education in accordance with the CT process and the probable benefits of these tools and approaches to explore the practices of computational thinking.
Chapter
The idea that computational thinking or algorithmic thinking should be taught to everyone dates back to the 1960s. First in 1960s, Alan Perlis argued that computer programming should be taught to everyone because it can be used as a mental tool for understanding and solving every kind of problem. In 1980s, under the leadership of Seymour Papert, students at the level of primary education were attempted to be taught LOGO programming language with the aim of gaining procedural thinking skill. After the publication of Jeannette Wing's “computational thinking” in Communications of the ACM in 2006, the idea that the basic concepts of computer science should be learned by all was started to be debated widely again. In the present paper, the justifications for teaching computational thinking and applicability of teaching computational thinking within the context of existing conditions will be discussed.
Chapter
In 2011, the author published an article that looked at the state of the art in novice programming environments. At the time, there had been an increase in the number of programming environments that were freely available for use by novice programmers, particularly children and young people. What was interesting was that they offered a relatively sophisticated set of development and support features within motivating and engaging environments, where programming could be seen as a means to a creative end, rather than an end in itself. Furthermore, these environments incorporated support for the social and collaborative aspects of learning. The article considered five environments—Scratch, Alice, Looking Glass, Greenfoot, and Flip—examining their characteristics and investigating the opportunities they might offer to educators and learners alike. It also considered the broader implications of such environments for both teaching and research. In this chapter, the author revisits the same five environments, looking at how they have changed in the intervening years. She considers their evolution in relation to changes in the field more broadly (e.g., an increased focus on “programming for all”) and reflects on the implications for teaching, as well as research and further development.
Article
Full-text available
This paper describes Scratch, a visual, block-based programming language designed to facilitate media manipulation for novice programmers. We report on the Scratch programming experiences of urban youth ages 8-18 at a Computer Clubhouse 'an after school center' over an 18-month period. Our analyses of 536 Scratch projects collected during this time documents the learning of key programming concepts even in the absence of instructional interventions or experienced mentors. We discuss the motivations of urban youth who choose to program in Scratch rather than using one of the many other software packages available to them and the implications for introducing programming at after school settings in underserved communities.
Article
Full-text available
The Scratch system was designed to enable computing novices, without much programming expe-rience, to develop their creativity, make multimedia products, and share them with their friends and on a social media website. It can also be used to introduce programming to novices. In this initial study, we used Scratch to teach some elementary programming to young children (eight years old) in their ICT class, for eight lessons in all. Data were recorded to measure any cognitive progress of the pupils, and any affective impact that the lessons had on them. The children were soon able to write elementary programs, and moreover evidently had a lot of fun doing so. An interview with their teacher showed that some of the pupils did surprisingly well, beyond all expectations. While the cognitive progress is moderate, the main advantage to Scratch in this study seems to be that its enjoyability makes learning how to program a positive experience, contrary to the frustration and anxiety that so often seems to characterise the usual learning experience. Keywords: POP-I.A. learning to program; POP-I.B. choice of methodology; POP-II.A. novices, schoolchildren; POP-III.B. smalltalk; POP-III.C. visual languages; POP-III.D. vi-sualisation; POP-IV.A. exploratory; POP-V.B. case study; POP-VI.E.
Article
Full-text available
Many students hold incorrect ideas and negative attitudes about computer science (CS). In order to address these difficulties, a series of learning activities called Computer Science Unplugged was developed by Tim Bell and his colleagues. These activities expose young people to central concepts in CS in an entertaining way without requiring a computer. The CS Unplugged activities have become more and more popular among CS educators and several activities are recommended in the ACM K-12 curriculum for elementary schools. CS Unplugged is used worldwide and has been translated into many languages. We examined the effect of the CS Unplugged activities on middle-school students’ ideas about CS and their desire to consider and study it in high school. The results indicate that following the activities the ideas of the students on what CS is about were partially improved, but their desire to study CS lessened. In order to provide possible explanations to these results, we analyzed the CS Unplugged activities to determine to what extent the objectives of CS Unplugged were addressed in the activities. In addition, we checked whether the activities were designed according to constructivist principles and whether they were explicitly linked to central concepts in CS. We found that only some of the objectives were addressed in the activities, that the activities do not engage with the students’ prior knowledge and that most of the activities are not explicitly linked to central concepts in CS. We offer suggestions for modifying the CS Unplugged activities so that they will be more likely to achieve their objectives.
Article
Full-text available
Bloom's taxonomy attempts to provide a set of levels of cognitive engagement with material being learned. It is usually presented as a generic framework. In this paper we outline some studies which examine whether the taxonomy is appropriate for computing, and how its application in computing might differ from its application elsewhere. We place this in the context of ongoing debates concerning graduateness and attempts to 'benchmark' the content of a computing degree.
Conference Paper
Full-text available
Bloom’s Taxonomy is difficult to apply consistently to assessment tasks in introductory programming courses. The Bloom taxonomy is a valuable tool that could enable analysis and discussion of programming assessment if it could be interpreted consistently. We discuss each of the Bloom classification categories and provide a consistent interpretation with concrete exemplars that will allow computer science educators to utilise Bloom’s Taxonomy for programming assessment. Using Bloom’s Taxonomy to help design examinations could greatly improve the quality of assessment in introductory programming courses. Full test available from: http://crpit.com/confpapers/CRPITV78Thompson.pdf
Article
Full-text available
In this paper we report on a multi-institutional investigation into the reading and comprehension skills of novice programmers. This work extends previous studies (Lister 2004, McCracken 2001) by developing a question set within two key pedagogical frameworks: the Bloom and SOLO taxonomies. From this framework of analysis some interesting emergent patterns relating the cognitive level of the questions to student performance have been identified.
Article
Full-text available
This paper presents a theoretical framework for investigating the role of algorithms in mathematical thinking. In the study, a combined ontological-psychological outlook is applied. An analysis of different mathematical definitions and representations brings us to the conclusion that abstract notions, such as number or function, can be conceived in two fundamentally different ways: structurally-as objects, and operationally-as processes. These two approaches, although ostensibly incompatible, are in fact complementary. It will be shown that the processes of learning and of problem-solving consist in an intricate interplay between operational and structural conceptions of the same notions. On the grounds of historical examples and in the light of cognitive schema theory we conjecture that the operational conception is, for most people, the first step in the acquisition of new mathematical notions. Thorough analysis of the stages in concept formation leads us to the conclusion that transition from computational operations to abstract objects is a long and inherently difficult process, accomplished in three steps: interiorization, condensation, and reification. In this paper, special attention is given to the complex phenomenon of reification, which seems inherently so difficult that at certain levels it may remain practically out of reach for certain students.
Article
Full-text available
The purposes of this article are to position mixed methods research (mixed research is a synonym) as the natural complement to traditional qualitative and quantitative research, to present pragmatism as offering an attractive philosophical partner for mixed methods research, and to provide a framework for designing and conducting mixed methods research. In doing this, we briefly review the paradigm “wars” and incompatibility thesis, we show some commonalities between quantitative and qualitative research, we explain the tenets of pragmatism, we explain the fundamental principle of mixed research and how to apply it, we provide specific sets of designs for the two major types of mixed methods research (mixed-model designs and mixed-method designs), and, finally, we explain mixed methods research as following (recursively) an eight-step process. A key feature of mixed methods research is its methodological pluralism or eclecticism, which frequently results in superior research (compared to monomethod research). Mixed methods research will be successful as more investigators study and help advance its concepts and as they regularly practice it.
Conference Paper
Full-text available
This paper describes the evaluation of an NSF-sponsored educational research project. The primary focus of this project was to develop and evaluate a course curriculum designed to improve retention and performance for "at risk" introductory computer science majors. The results of this research suggest that the newly developed course and curriculum materials did improve students' performance and retention in computer science and their attitudes towards computer science.
Conference Paper
Full-text available
In the traditional norm-referencing approach to grading, all students in a CS1 class attempt the same programming tasks, and those attempts are graded "to a curve". The danger is that such tasks are aimed at a hypothetical average student. Weaker students can do little of these tasks, and learn little. Meanwhile, these tasks do not stretch the stronger students, so they too are denied an opportunity to learn. Our solution is two-fold. First, we use a criterion-referenced approach, where fundamentally different tasks are set, according to the ability of the students. Second, the differences in the nature of the tasks reflect the differing levels of Bloom's taxonomy. Weaker CS1 students are simply required to demonstrate knowledge and comprehension; the ability to read and understand programs. Middling students attempt traditional tasks, while the stronger students are set open-ended tasks at the synthesis and evaluation levels.
Conference Paper
Full-text available
This paper describes Scratch, a visual, block-based programming language designed to facilitate media manipulation for novice programmers. We report on the Scratch programming experiences of urban youth ages 8-18 at a Computer Clubhouse—an after school center—over an 18-month period. Our analyses of 536 Scratch projects collected during this time documents the learning of key programming concepts even in the absence of instructional interventions or experienced mentors. We discuss the motivations of urban youth who choose to program in Scratch rather than using one of the many other software packages available to them and the implications for introducing programming at after school settings in underserved communities.
Conference Paper
Full-text available
A concept inventory (CI) is a standardized assessment tool that evaluates how well a student's conceptual framework matches the accepted conceptual framework of a discipline. In this paper, we present our process in creating and evaluating the alpha version of a CI to assess student understanding of digital logic. We have checked the validity and reliability of the CI through an alpha administration, follow-up interviews with students, analysis of administration results, and expert feedback. So far the feedback on the digital logic concept inventory is positive and promising.
Conference Paper
Full-text available
We describe Storytelling Alice, a programming environment that introduces middle school girls to computer programming as a means to the end of creating 3D animated stories. Storytelling Alice supports story creation by providing 1) a set of high-level animations, that support the use of social characters who can interact with one another, 2) a collection of 3D characters and scenery designed to spark story ideas, and 3) a tutorial that introduces users to writing Alice programs using story- based examples. In a study comparing girls' experiences learning to program using Storytelling Alice and a version of Alice without storytelling support (Generic Alice), we found that users of Storytelling Alice and Generic Alice were equally successful at learning basic programming constructs. Participants found Storytelling Alice and Generic Alice equally easy to use and entertaining. Users of Storytelling Alice were more motivated to program; they spent 42% more time programming, were more than 3 times as likely to sneak extra time to work on their programs, and expressed stronger interest in future use of Alice than users of Generic Alice. Author Keywords Alice, gender, children, motivation, programming, computer science education, programming environments
Conference Paper
Full-text available
This paper reports on the authors use of the SOLO taxonomy to describe differences in the way students and educators solve small code reading exercises. SOLO is a general educational taxonomy, and has not previously been applied to the study of how novice programmers manifest their understanding of code. Data was collected in the form of written and think-aloud responses from students (novices) and educators (experts), using exam questions. During analysis, the responses were mapped to the different levels of the SOLO taxonomy. From think-aloud responses, the authors found that educators tended to manifest a SOLO relational response on small reading problems, whereas students tended to manifest a multistructural response. These results are consistent with the literature on the psychology of programming, but the work in this paper extends on these findings by analyzing the design of exam questions.
Article
Full-text available
Bloom's taxonomy of the cognitive domain and the SOLO taxonomy are being increasingly widely used in the design and assessment of courses, but there are some drawbacks to their use in computer science. This paper reviews the literature on educational taxonomies and their use in computer science education, identifies some of the problems that arise, proposes a new taxonomy and discusses how this can be used in application-oriented courses such as programming.
Article
Full-text available
"Digital fluency" should mean designing, creating, and remixing, not just browsing, chatting, and interacting.
Article
Full-text available
Scratch is a "media-rich programming environment" recently developed by MIT's Media Lab that "lets you create your own animations, games, and interactive art." Although Scratch is intended to "enhance the development of technological fluency [among youths] at after-school centers in economically disadvantaged communities," we find rarkable potential in this programming environment for higher education as well.We propose Scratch as a first language for first-time programmers in introductory courses, for majors and non-majors alike. Scratch allows students to program with a mouse: programmatic constructs are represented as puzzle pieces that only fit together if "syntactically" appropriate. We argue that this environment allows students not only to master programmatic constructs before syntax but also to focus on probls of logic before syntax. We view Scratch as a gateway to languages like Java.To validate our proposal, we recently deployed Scratch for the first time in higher education via harvard Summer School's Computer Science S-1: Great Ideas in Computer Science, the summertime version of a course at harvard College. Our goal was not to improve scores but instead to improve first-time programmers' experiences. We ultimately transitioned to Java, but we first introduced programming itself via Scratch. We present in this paper the results of our trial.We find that, not only did Scratch excite students at a critical time ( i.e., , their first foray into computer science), it also familiarized the inexperienced among th with fundamentals of programming without the distraction of syntax. Moreover, when asked via surveys at term's end to reflect on how their initial experience with Scratch affected their subsequent experience with Java, most students (76%) felt that Scratch was a positive influence, particularly those without prior background. Those students (16%) who felt that Scratch was not an influence, positive or negative, all had prior programming experience.
Conference Paper
Full-text available
We have developed a Web-based tutor for teaching and testing counter-controlled loop concepts in C++. The tutor is designed to promote problem-based learning. It repeatedly generates problems, grades user's answers and provides feedback about the correct answers. This paper describes the design of the tutor, outlines a test that we used to evaluate its effectiveness, and presents the results of die test. The test confirmed our hypothesis that using the tutor helps improve student learning. The improvement is statistically significant. This tutor can be used for practice or testing in Computer Science I.
Article
Since the early 1960's, researchers have built a number of programming languages and environments with the intention of making programming accessible to a larger number of people. This article presents a taxonomy of languages and environments designed to make programming more accessible to novice programmers of all ages. The systems are organized by their primary goal, either to teach programming or to use programming to empower their users, and then, by each system's authors' approach, to making learning to program easier for novice programmers. The article explains all categories in the taxonomy, provides a brief description of the systems in each category, and suggests some avenues for future work in novice programming environments and languages.
Article
This paper reports on the authors use of the SOLO taxonomy to describe differences in the way students and educators solve small code reading exercises. SOLO is a general educational taxonomy, and has not previously been applied to the study of how novice programmers manifest their understanding of code. Data was collected in the form of written and think-aloud responses from students (novices) and educators (experts), using exam questions. During analysis, the responses were mapped to the different levels of the SOLO taxonomy. From think-aloud responses, the authors found that educators tended to manifest a SOLO relational response on small reading problems, whereas students tended to manifest a multistructural response. These results are consistent with the literature on the psychology of programming, but the work in this paper extends on these findings by analyzing the design of exam questions.
Article
The concepts of logic are key building blocks in the knowledge that computer science students must acquire. This paper describes a simple 16-item instrument, the Propositional Logic Test (PLT), which is based on Piagetian theory. The PLT shows promise as a diagnostic instrument to help identify students who systematically misinterpret logical statements. This paper describes a study that explored the use of the PLT in diagnosing student misunderstandings. Analysis of individual student responses revealed a number of systematic errors in interpreting the logical operations in the PLT items. While this study did not reveal strong correlation between PLT score and students' final grades, other studies have revealed significant relationships between PLT score and success in computer science courses. Several areas for continued research are proposed, including an invitation to other researchers to apply this instrument in their local institutions.
Article
We are developing a course in concurrency for high school students. The course is being developed in phases of refinement on the basis of feedback received from teachers and students. We have found persistent difficulties that students have in understanding fundamental concepts, which has led us to investigate their preconceptions of concurrency. This paper describes the results of this investigation. The work is anchored in constructivism, which stresses the importance of prior knowledge upon which new knowledge is built. The students were asked to solve concurrency problems, both prior to the course and after learning just the basics of the subject. Analysis of solutions reveals that students: (a) find that solving a problem on the order of actions is more natural than the critical section problem, (b) are divided in their preference for centralized and decentralized solutions, (c) employ inappropriate heuristics, (d) invent computational models as they work, (e) attribute parallelism where it does not exist, (f) attribute intelligence to systems. Based on these findings, we were able to modify the course to address these problems of prior knowledge.
Article
In 1985 the Media Lab was created at MIT [Massachusetts Institute of Technology] to advance the idea that computation would give rise to a new science of expressive media. Within the Media Lab, the Epistemology & Learning Group, directed by Seymour Papert, extends the traditional definition of media by treating as expressive media materials with which children play and learn. The group's work follows Papert's paradigm for learning research called Constructionism. Several of the chapters directly address the theoretical formulations of Constructionism, and others describe experimental studies which enrich and confirm different aspects of the idea. Thus this volume can be taken as the most extensive and definitive statement to date of this approach to media and education research and practice. The book is structured around four major themes: learning through design and programming; epistemological styles in constructionist learning; children and cybernetics; [and] video as a research tool. (PsycINFO Database Record (c) 2012 APA, all rights reserved)
Article
This article focuses on abstraction and ways in which students cope with abstraction. The article has two goals: first, it illustrates how the theme of reducing abstraction (Hazzan, 1999) is useful for analyzing students' thinking about abstract concepts in mathematics and in computer science; second, it demonstrates how theories based on mathematics education research can be applied to analyzing students' understanding of computer science concepts. The main section of the article analyzes the understanding of concepts from four fields – abstract algebra, computability, data structures and differential equations – through the lens of reducing abstraction. The analysis shows that a wide range of cognitive phenomena can be explained by one theoretical framework.
Conference Paper
Over the last 45 years as a student and faculty member in Computer Science, I have been involved in learning, teaching, and writing for the CS1 course. I have authored or co-authored textbooks for CS1 in nine different programming languages from Fortran ...
Conference Paper
I have spent the last fifteen years of my life leading an incredible team. Our quest (which we did not even realize in the beginning) was to revolutionize the way computer programming is taught. Current versions of the Alice system (Alice v2.0, and Caitlin ...
Conference Paper
The statistics show that the number of Computer Science majors is dropping across the United States. Possible reasons include a reduced number of jobs in the field, an incorrect perception of what Computer Scientists do, and the students' disinterest due to a lack of familiarity with the subject. The reasons may be different for males and females. This paper reports on a study in which 836 high school calculus and pre-calculus students were surveyed to try to determine why students with an apparent aptitude for CS did not pursue a major in Computer Science. The results supported some of the hypotheses for declining enrollment, and rejected others. The top reasons for rejecting the major were the same for both genders, but the reasons for choosing the major differed.
Conference Paper
This paper discusses a template-based approach to aid in introducing the upper-division undergraduate (or first year graduate) to the rapidly emerging message passing parallel computing paradigm. Our template library facilitates an accelerated MPI programming learning environment that can realistically be included as one topic among many in an algorithms course. One template module is based on a backtracking solution to the satisfiablity problem (SAT), which the student first solves in the sequential setting. With the aid of a modified template, the student then develops a simple parallel SAT solver. The template includes such things as I/O functions, allowing the student to focus on the algorithm itself. The parallel part is partially provided by the template, with indicators given in places where the student needs to plug in missing MPI function calls. The students are excited about this hands-on-experience in the increasingly important world of message passing parallel computing, which might be missed if their curriculum does not include a course devoted to this topic.
Conference Paper
Visual programming environments are widely used to introduce young people to computer science and programming; in particular, they encourage learning by exploration. During our research on teaching and learning computer science concepts with Scratch, we discovered that Scratch engenders certain habits of programming: (a) a totally bottom-up development process that starts with the individual Scratch blocks, and (b) a tendency to extremely fine-grained programming. Both these behaviors are at odds with accepted practice in computer science that encourages one: (a) to start by designing an algorithm to solve a problem, and (b) to use programming constructs to cleanly structure programs. Our results raise the question of whether exploratory learning with a visual programming environment might actually be detrimental to more advanced study.
Conference Paper
We describe our experiences illustrating core concepts and enthusing children (age 11-17) about computer science through magic shows. We outline links between various tricks and computer science. The format of show we have trialed is to present real magic tricks with an underlying link to computer science. After each trick the audience is challenged to work out how it works. The mechanics are explained followed by the underlying computer science. Feedback with Talented and Gifted children has been exceptional. Informal feedback from younger children of varying ability has also been very positive.
Conference Paper
Computer programming is a difficult skill for many students and new methods and techniques to help novices to learn programming are needed. This paper presents roles of variables as a new concept that can be used to assist in learning and gives detailed instructions on techniques to present roles to novices. These techniques are based on current learning theories and they have been used in a classroom experiment comparing traditional teaching with role-based teaching. The results suggest that the introduction of roles provides students a new conceptual framework that enables them to mentally process programs in a way similar to that of good code comprehenders; the use of role-based animation seems to assist in the adoption of role knowledge and expert-like programming skill.
Article
This paper describes an investigation of high-school students' understanding of synchronization as they studied a course in concurrent and distributed computation. The research followed the students for 2 months, and consisted of both quantitative and qualitative analysis of the students' performance. We found that most of the students had a rich understanding of various synchronization problems. However, many of them developed a pattern-based technique that successfully solved synchronization problems, thus elegantly exempting them from dealing with the dynamics of the synchronization mechanisms; consequently, concepts regarding this theme became inert. Moreover, we were able to uncover reasonable, yet faulty connections that many students had made between the new knowledge and their existing knowledge; these connections were the source of their difficulties. From the findings, we were able to make valuable recommendations for the next version of the course: (a) encouraging alternative connections to existing knowledge by redesigning the instruction, such as representing semaphores in a way that resembles a complex data structure rather than as variables of type integer, and (b) integrating knowledge found to be productive by the students into the instruction to anchor more advanced knowledge, for example utilizing the pattern-based technique as a tool for correctness verification.
Article
Since the early 1960's, researchers have built a number of programming languages and environments with the intention of making programming accessible to a larger number of people. This article presents a taxonomy of languages and environments designed to make programming more accessible to novice programmers of all ages. The systems are organized by their primary goal, either to teach programming or to use programming to empower their users, and then, by each system's authors' approach, to making learning to program easier for novice programmers. The article explains all categories in the taxonomy, provides a brief description of the systems in each category, and suggests some avenues for future work in novice programming environments and languages.
Article
In this paper we review the literature relating to the psychological/educational study of programming. We identify general trends comparing novice and expert programmers, programming knowledge and strategies, program generation and comprehension, and objectoriented versus procedural programming. (We do not cover research relating specifically to other programming styles.) The main focus of the review is on novice programming and topics relating to novice teaching and learning. Various problems experienced by novices are identified, including issues relating to basic program design, to algorithmic complexity in certain language features, to the ‘‘fragility’ ’ of novice knowledge, and so on. We summarise this material and suggest some practical implications for teachers. We suggest that a key issue that emerges is the distinction between effective and ineffective novices. What characterises effective novices? Is it possible to identify the specific deficits of ineffective novices and help them to become effective learners of programming? 1.
A revision of Bloom's taxonomy: An overview Theory into Practice Teaching roles of variables in elementary programming courses
  • D R M Krathwohl
  • J Sajaniemi
Krathwohl, D. R. (2002). A revision of Bloom's taxonomy: An overview. Theory into Practice, 41, 212–264. Retrieved April 3, 2013, from http://www.unco.edu/cetl/sir/ stating_outcome/documents/Krathwohl.pdf Kuittinen, M., & Sajaniemi, J. (2004). Teaching roles of variables in elementary programming courses. SIGCSE Bulletin, 36, 57–61.
Computer science unplugged
  • T Bell
  • I H Witten
  • M Fellows
Bell, T., Witten, I. H., & Fellows, M. (2005). Computer science unplugged. Retrieved April 3, 2013, from http://csunplugged.com/
Informatics and Student Assessment-Concepts of Empirical Research and the Standardisation of Measurement in the Area of Didactics of Informatics
  • A Schwill
Schwill, A. (2004). Philosophical aspects of fundamental ideas: concepts and ideas. In Informatics and Student Assessment-Concepts of Empirical Research and the Standardisation of Measurement in the Area of Didactics of Informatics, Lecture Notes in Informatics vol. 1, J. Magenheim and S. Schubert, Eds. Köllen Druck + Verlag, Bonn, Germany, 145-157.
Hard fun Constructionism
  • S S Papert
  • I Harel
Papert, S. (n.d.). Hard fun. Retrieved March 28, 2013, from http://www.papert.org/articles/ HardFun.html Papert, S., & Harel, I. (1991). Constructionism. Norwood, NJ: Ablex.
Evaluating Scratch to introduce younger schoolchildren to programming
  • A Wilson
  • D C Moffat
Wilson, A., & Moffat, D. C. (2010). Evaluating Scratch to introduce younger schoolchildren to programming. In Proceedings of the 22 nd Annual Workshop of the Psychology of Programming Interest Group (Madrid, Spain, September 19-22, 2010). 63-75.
  • T Bell
  • I H Witten
  • M Fellows
Bell, T., Witten, I.H., Fellows, M. (2005). Computer Science Unplugged. http://csunplugged.com/ (last accessed April 3 2013).