skip to main content


Title: A Study of Worked Examples for SQL Programming
The paper focuses on a new type of interactive learning content for SQL programming - worked examples of SQL code. While worked examples are popular in learning programming, their application for learning SQL is limited. Using a novel tool for presenting interactive worked examples, Database Query Analyzer (DBQA), we performed a large-scale randomized controlled study assessing the value of worked examples as a new type of practice content in a database course. We report the results of the classroom study examining the usage and the impact of DBQA. Among other aspects, we explored the effect of textual step explanations provided by DBQA.  more » « less
Award ID(s):
1822752
NSF-PAR ID:
10367868
Author(s) / Creator(s):
; ; ; ; ; ;
Date Published:
Journal Name:
Proceedings of 2022 Annual Conference on Innovation and Technology in Computer Science Education
Page Range / eLocation ID:
82 to 88
Format(s):
Medium: X
Sponsoring Org:
National Science Foundation
More Like this
  1. The paper focuses on a new type of interactive learning content for SQL programming - worked examples of SQL code. While worked examples are popular in learning programming, their application for learning SQL is limited. Using a novel tool for presenting interactive worked examples, Database Query Analyzer (DBQA), we performed a large-scale randomized controlled study assessing the value of worked examples as a new type of practice content in a database course. 
    more » « less
  2. This research is focused on how to support students’ acquisition of program construction skills through worked examples. Although examples have been consistently proven to be valuable for student’s learning, the learning technology for computer science education lacks program construction examples with interactive elements that could engage students. The goal of this work is to investigate the value of the “engaging” features in programming examples. We introduce PCEX, an online tool developed to present program construction examples in an engaging fashion. We also present the results of a controlled study with a between-subject design that was conducted in a large introductory Python programming class to compare PCEX with non-interactive worked examples focused on program construction. The results of our study show the positive impact of interactive program construction examples on student’s engagement, problem-solving performance, and learning. 
    more » « less
  3. As buzzwords like “big data,” “machine learning,” and “high-throughput” expand through chemistry, chemists need to consider more than ever their data storage, data management, and data accessibility, whether in their own laboratories or with the broader community. While it is commonplace for chemists to use spreadsheets for data storage and analysis, a move towards database architectures ensures that the data can be more readily findable, accessible, interoperable, and reusable (FAIR). However, making this move has several challenges for those with limited-to-no knowledge of computer programming and databases. This Perspective presents basics of data management using databases with a focus on chemical data. We overview database fundamentals by exploring benefits of database use, introducing terminology, and establishing database design principles. We then detail the extract, transform, and load process for database construction, which includes an overview of data parsing and database architectures, spanning Standard Query Language (SQL) and No-SQL structures. We close by cataloging overarching challenges in database design. This Perspective is accompanied by an interactive demonstration available at https://github.com/D3TaLES/databases_demo. We do all of this within the context of chemical data with the aim of equipping chemists with the knowledge and skills to store, manage, and share their data while abiding by FAIR principles. 
    more » « less
  4. Personalized recommendation of learning content is one of the most frequently cited benefits of personalized online learning. It is expected that with personalized content recommendation students will be able to build their own unique and optimal learning paths and to achieve course goals in the most optimal way. However, in many practical cases students search for learning content not to expand their knowledge, but to address problems encountered in the learning process, such as failures to solve a problem. In these cases, students could be better assisted by remedial recommendations focused on content that could help in resolving current problems. This paper presents a transparent and explainable interface for remedial recommendations in an online programming practice system. The interface was implemented to support SQL programming practice and evaluated in the context of a large database course. The paper summarizes the insights obtained from the study and discusses future work on remedial recommendations. 
    more » « less
  5. A sizable body of research on instructional practices supports the use of worked examples for acquiring cognitive skills in domains such as mathematics and physics. Although examples are also important in the domain of programming, existing research on programming examples is limited. Program examples are used by instructors to achieve two important goals: to explain program behavior and to demonstrate program construction patterns. Program behavior examples are used to demonstrate the semantics of various program constructs (i.e., what is happening inside a program or an algorithm when it is executed). Program construction examples illustrate how to construct a program that achieves a specific purpose. While both functions of program examples are important for learning, most of the example-focused research in computer science education focused on technologies for augmenting program behavior examples such as program visualization, tracing tables, etc. In contrast, advanced technologies for presenting program construction examples were rarely explored. This work introduces interactive Program Construction Examples (PCEX) to begin a systematic exploration of worked-out program construction examples in the domain of computer science education. A classroom evaluation and analysis of the survey data demonstrated that the usage of PCEX examples is associated with better student's learning and performance. 
    more » « less