175 research outputs found

    TextCode: A Tool to Support Problem Solving Among Novice Programmers

    Get PDF
    Several tools have been developed to support novices learning to program. Most of them focus on the code and provide features regarding the visualization of the data structures or the debugging. However, in introductory programming courses, students are typically given exercises in the form of a problem written in natural language; and the first challenge they face is understanding the problem, identifying the relevant information, and then translating that information into code. To our knowledge, little attention has been paid to proposing tools targeted at supporting this problem-solving step, even though it is crucial for deriving a correct solution. In this paper, we present an IDE to encourage novices to understand the problem before start coding, decompose it down into subproblems, explore alternative implementations for each subproblem, and arrange these implementations to build a general solution. Finally, the adopted problem-solving approach is discussed

    Collaborative Learning for Information Security Topics: A Pilot Study

    Get PDF
    Collaborative learning has seen a growing popularity in computing education with promising results. The purpose of this research study is to determine if the collaborative guided learning pedagogy is valid for the diverse information security-related topics. We have developed and tested on three security topics and learning activities, including input validation, security in operating systems, and SQL injection in the pilot study. Applied pre-test and post-test surveys to measure the effectiveness of the learning experiences. We have conducted statistical analysis and qualitative analysis to compare the pre- and post-surveys results. Furthermore, we found that team experience is helpful to research with security topics, and more time allowed for the activity could benefit the learning experience

    "It's Weird That it Knows What I Want": Usability and Interactions with Copilot for Novice Programmers

    Full text link
    Recent developments in deep learning have resulted in code-generation models that produce source code from natural language and code-based prompts with high accuracy. This is likely to have profound effects in the classroom, where novices learning to code can now use free tools to automatically suggest solutions to programming exercises and assignments. However, little is currently known about how novices interact with these tools in practice. We present the first study that observes students at the introductory level using one such code auto-generating tool, Github Copilot, on a typical introductory programming (CS1) assignment. Through observations and interviews we explore student perceptions of the benefits and pitfalls of this technology for learning, present new observed interaction patterns, and discuss cognitive and metacognitive difficulties faced by students. We consider design implications of these findings, specifically in terms of how tools like Copilot can better support and scaffold the novice programming experience.Comment: 26 pages, 2 figures, TOCH

    Reading skills can predict the programming performance of novices: an eye-tracking study

    Get PDF
    Due to the character of programming languages, reading ability may have more impact on learning to program than on learning in other subjects. This paper describes an exploratory study of the relationship between reading skills, as perceived through eye tracking, and the ability to program. An empirical investigation into this relationship determined that students with inadequate reading skills are at risk of failing at introductory programming. As an explanation for the effect of reading ability on learning to program, we argue that a programming language is a special high-level written language and that using it requires high levels of comprehension, inferencing, selective attention, organising and reflecting. As a result, a student’s reading ability will have a considerable effect on learning to program. Lack of reading skills may therefore be a factor that affect students’ ability to learn to program. Eye tracking can expose reading skills and, therefore, be used to identify at-risk introductory programming students. The practical contribution of this research is the demonstration of how eye tracking can reveal reading problems among programming students. We relate these reading problems to their programming performance, providing a theoretical account of the connection. The results suggest that efforts to improve reading skills could have a positive impact on learning to program

    Experience report on the use of technology to manage capstone course projects

    Get PDF

    Experiences from Teaching Automated Testing with CrowdSorcerer

    Get PDF
    Software testing is an important process when ensuring a program's quality. However, testing has not traditionally been a very substantial part of computer science education. Some attempts to integrate it into the curriculum has been made but best practices still prove to be an open question. This thesis discusses multiple attempts of teaching software testing during the years. It also introduces CrowdSorcerer, a system for gathering programming assignments with tests from students. It has been used in introductory programming courses in University of Helsinki. To study if the students benefit from creating assignments with CrowdSorcerer, we analysed the number of assignments and tests they created and if they correlate with their performance in a testing-related question in the course exam. We also gathered feedback from the students on their experiences from using CrowdSorcerer. Looking at the results, it seems that more research on how to teach testing would be beneficial. Improving CrowdSorcerer would also be a good idea

    On the Quality of Crowdsourced Programming Assignments

    Get PDF
    Crowdsourcing has been used in computer science education to alleviate the teachers’ workload in creating course content, and as a learning and revision method for students through its use in educational systems. Tools that utilize crowdsourcing can act as a great way for students to further familiarize themselves with the course concepts, all while creating new content for their peers and future course iterations. In this study, student-created programming assignments from the second week of an introductory Java programming course are examined alongside the peer reviews these assignments received. The quality of the assignments and the peer reviews is inspected, for example, through comparing the peer reviews with expert reviews using inter-rater reliability. The purpose of this study is to inspect what kinds of programming assignments novice students create, and whether the same novice students can act as reliable reviewers. While it is not possible to draw definite conclusions from the results of this study due to limitations concerning the usability of the tool, the results seem to indicate that novice students are able to recognise differences in programming assignment quality, especially with sufficient guidance and well thought-out instructions

    ITSS: Interactive Web-Based Authoring and Playback Integrated Environment for Programming Tutorials

    Full text link
    Video-based programming tutorials are a popular form of tutorial used by authors to guide learners to code. Still, the interactivity of these videos is limited primarily to control video flow. There are existing works with increased interactivity that are shown to improve the learning experience. Still, these solutions require setting up a custom recording environment and are not well-integrated with the playback environment. This paper describes our integrated ITSS environment and evaluates the ease of authoring and playback of our interactive programming tutorials. Our environment is designed to run within the browser sandbox and is less intrusive to record interactivity actions. We develop a recording approach that tracks the author's interactivity actions (e.g., typing code, highlighting words, scrolling panels) on the browser and stored in text and audio formats. We replay these actions using the recorded artefacts for learners to have a more interactive, integrated and realistic playback of the author's actions instead of watching video frames. Our design goals are 1) efficient recording and playback, 2) extensible interactivity features to help students learn better, and 3) a scalable web-based environment. Our first user study of 20 participants who carry out the author tasks agree that it is efficient and easy to author interactive videos in our environment with no additional software needed. Our second user study of 84 students using the environment agrees that the increased interactivity can help them learn better over a video-based tutorial. Our performance test shows that the environment can scale to support up to 500 concurrent users. We hope our open-source environment enable more educators to create interactive programming tutorials

    Annual Report 2018-2019

    Get PDF
    LETTER FROM THE DEAN I am pleased to share with you the 2018-19 College of Computing and Digital Media (CDM) annual report, highlighting the important work done by our faculty, students, and staff. We’ve said this before, and we’ll say it again: it was a big year. In 2018-19, programs across all three of our schools (Computing, Cinematic Arts, and Design) were ranked nationally. Our faculty were published in dozens of scholarly journals, screened their films over 100 times, and had their work exhibited globally. Student and alumni accomplishments included an Emmy nomination, a first place win in a Department of Energy competition, and features in trade publications--to name just a few. We worked to create new programs (including undergraduate and graduate comedy filmmaking programs in collaboration with The Second City) and continued our work in others (our NSF- funded Medical Informatics Experiences program celebrated its fifteenth year). Our makerspace, the Idea Realization Lab, clocked its 10,000th visit as we made plans to open a new IRL in Lincoln Park. And, we will continue to create the innovative programs and facilities that make us CDM. You can look forward to new programs like industrial design, and new labs that focus on everything from Internet of Things to design industry collaborations. I am proud of our CDM community, and I hope you feel that same sense of pride as you read through this report. David MillerDeanhttps://via.library.depaul.edu/cdmannual/1002/thumbnail.jp
    • …
    corecore