skip to main content
US FlagAn official website of the United States government
dot gov icon
Official websites use .gov
A .gov website belongs to an official government organization in the United States.
https lock icon
Secure .gov websites use HTTPS
A lock ( lock ) or https:// means you've safely connected to the .gov website. Share sensitive information only on official, secure websites.


Title: Multiple Programming Languages for Improving Computational Thinking in CS1
Computational thinking can be deemed as thinking in algorithmic way, with which one can transpose given problems into computer algorithms. Since computational thinking requires abstract reasoning, it should not depend on particular programming languages. Unfortunately, introductory programming courses (CS1) often give students false impression that their goals are to teach a particular programming language. This study shares the design of new pedagogy for CS1 that removes dependency on a particular language and promotes computational thinking by teaching multiple programming languages simultaneously. Specifically, chosen programming languages range from low-level to high-level to expose students to different levels of abstraction from the details of computer architecture. Initial student survey responses from both trial and control groups show that there are significant improvements for the trial groups.  more » « less
Award ID(s):
2021446
PAR ID:
10458407
Author(s) / Creator(s):
; ; ;
Date Published:
Journal Name:
Proceedings of the 54th ACM Technical Symposium on Computer Science Education V. 2 (SIGCSE 2023)
Page Range / eLocation ID:
1377 to 1377
Format(s):
Medium: X
Sponsoring Org:
National Science Foundation
More Like this
  1. null (Ed.)
    Developing narrative and computational thinking skills is crucial for K-12 student learning. A growing number of K-12 teachers are utilizing digital storytelling, where students create short narratives around a topic, as a means of creating motivating problem-solving activities for a variety of domains, including history and science. At the same time, there is increasing awareness of the need to engage K-12 students in computational thinking, including elementary school students. Given the challenges that the syntax of text-based programming languages poses for even novice university-level learners, block-based programming languages have emerged as an effective tool for introducing computational thinking to elementary-level students. Leveraging the unique affordances of narrative and computational thinking offers significant potential for student learning; however, integrating them presents significant challenges. In this paper, we describe initial work toward solving this problem by introducing an approach to block-based programming for interactive storytelling to engage upper elementary students (ages 9 to 11) in computational thinking and narrative skill development. Leveraging design principles and best practices from prior research on elementary-grade block-based programming and digital storytelling, we propose a set of custom blocks enabling learners to create interactive narratives. We describe both the process used to derive the custom blocks, including their alignment with elements of interactive narrative and with specific computational thinking curricular goals, as well as lessons learned from students interacting with a prototype learning environment utilizing the block-based programming approach. 
    more » « less
  2. Recent years have seen a growing recognition of the importance of enabling K-12 students to engage in computational thinking, particularly in elementary grades where students' dispositions toward STEM are developing. Block-based programming has emerged as an effective tool for engaging these novice learners in computational thinking. At the same time, digital storytelling has emerged as a promising avenue for creating motivating problem-solving scenarios that engage students in science investigations. Although block-based programming and digital storytelling are in many ways synergistic, there is a lingering question of how to design block-based languages at an age-appropriate level to enable effective and engaging storytelling. In this work, we review design principles from prior block-based and digital storytelling systems as well as propose the design of block-based programming language features to enable the creation of rich, interactive science narratives by upper elementary students. 
    more » « less
  3. programming concepts in programming assignments in a CS1 course. We seek to answer the following research questions: RQ1. How effectively can large language models identify knowledge components in a CS1 course from programming assignments? RQ2. Can large language models be used to extract program-level knowledge components, and how can the information be used to identify students’ misconceptions? Preliminary results demonstrated a high similarity between course-level knowledge components retrieved from a large language model and that of an expert-generated list. 
    more » « less
  4. As schools and districts across the United States adopt computer science standards and curriculum for K-12 computer science education, they look to integrate the foundational concepts of computational thinking (CT) into existing core subjects of elementary-age students. Research has shown the effectiveness of teaching CT elements (abstraction, generalization, decomposition, algorithmic thinking, debugging) using non-programming, unplugged approaches. These approaches address common barriers teachers face with lack of knowledge, familiarity, or technology tools. Picture books and graphic novels present an unexplored non-programming, unplugged resource for teachers to integrate computational thinking into their CT or CT-integrated lessons. This analysis examines 27 picture books and graphic novels published between 2015 and 2020 targeted to K-6 students for representation of computational thinking elements. Using the computational thinking curriculum framework for K-6, we identify the grade-level competencies of the CT elements featured in the books compared to the books’ target age groups. We compare grade-level competencies to interest level to identify each CT element representation as “foundational,” “on-target,” or “advanced.” We conclude that literature offers teachers a non-programming unplugged resource to expose students to CT and enhance CT and CT-integrated lessons, while also personalizing learning based on CT readiness and interest level. 
    more » « less
  5. University introductory computer science courses (CS1) present many challenges. Students enter CS1 with varying backgrounds and many are evaluating their potential for success in the major. Students often negatively self-assess in response to natural programming moments, such as getting a syntax error, but we have a limited understanding of the mechanisms that drive these self-assessments. In this paper, we study the differences in student assessments of themselves and their assessments of others in response to particular programming moments. We analyze survey data from 214 CS1 students, finding that many have a self-critical bias, evaluating themselves more harshly than others. We also found that women have a stronger self-critical bias, and that students tend to be more self-critical when the other is female. These insights can help us reduce the impact of negative self-assessments on student experiences. 
    more » « less