- Teaching and Learning Programming
- Online Learning and Analytics
- Software Engineering Research
- Software Testing and Debugging Techniques
- Educational Games and Gamification
- Gender and Technology in Education
- Parallel Computing and Optimization Techniques
- Distributed and Parallel Computing Systems
- Innovative Teaching and Learning Methods
- Information Systems Education and Curriculum Development
- Online and Blended Learning
- Scientific Computing and Data Management
- Experimental Learning in Engineering
- Software Engineering Techniques and Practices
- Interconnection Networks and Systems
- Higher Education Research Studies
- Ethics and Social Impacts of AI
- Statistics Education and Methodologies
- Advanced Malware Detection Techniques
- Artificial Intelligence in Healthcare and Education
- Topic Modeling
- Higher Education Learning Practices
- Intelligent Tutoring Systems and Adaptive Learning
- Digital and Cyber Forensics
- Evolutionary Algorithms and Applications
University College Dublin
2016-2025
Western New England University
2024
Binus University
2024
Abilene Christian University
2023
University of Auckland
2023
Institut de Recherche en Informatique et Systèmes Aléatoires
2021
Université de Rennes
2021
National Forum for the Enhancement of Teaching & Learning in Higher Education
2021
Centre National de la Recherche Scientifique
2021
Williams (United States)
2019
As computing becomes a mainstream discipline embedded in the school curriculum and acts as an enabler for increasing range of academic disciplines higher education, literature on introductory programming is growing. Although there have been several reviews that focus specific aspects programming, has no broad overview exploring recent trends across breadth programming.
Recent advances in artificial intelligence have been driven by an exponential growth digitised data. Natural language processing, particular, has transformed machine learning models such as OpenAI’s GPT-3 which generates human-like text so realistic that its developers warned of the dangers misuse. In recent months OpenAI released Codex, a new deep model trained on Python code from more than 50 million GitHub repositories. Provided with natural description programming problem input, Codex...
The introductory programming sequence has been the focus of much research in computing education. recent advent several viable and freely-available AI-driven code generation tools present immediate opportunities challenges this domain. In position paper we argue that community needs to act quickly deciding what possible can should be leveraged how, while also working on overcoming otherwise mitigating challenges. Assuming effectiveness proliferation these will continue progress rapidly,...
Diagnostic messages generated by compilers and interpreters such as syntax error have been researched for over half of a century. Unfortunately, these which include error, warning, run-time messages, present substantial difficulty could be more effective, particularly novices. Recent years seen an increased number papers in the area including studies on effectiveness improving or enhancing them, their usefulness part programming process data that can used to predict student performance,...
A key part of learning to program is understand programming error messages. They can be hard interpret and identifying the cause errors time-consuming. One factor in this challenge that messages are typically intended for an audience already knows how program, or even environments then use information highlight areas code. Researchers have been working on making these more novice friendly since 1960s, however progress has slow. The present work contributes stream research by using large...
Recent advancements in artificial intelligence (AI) and specifically generative AI (GenAI) are threatening to fundamentally reshape computing society. Largely driven by large language models (LLMs), many tools now able interpret generate both natural instructions source code. These capabilities have sparked urgent questions the education community around how educators should adapt their pedagogy address challenges leverage opportunities presented this new technology. In working group report,...
The introduction of OpenAI Codex sparked a surge interest in the impact generative AI models on computing education practices. is also underlying model for GitHub Copilot, plugin which makes AI-generated code accessible to students through auto-completion popular editors. Research this area, particularly educational implications, nascent and has focused almost exclusively introductory programming (or CS1) questions. Very recent work shown that performs considerably better typical CS1 exam...
Challenges and opportunities faced by computing educators students adapting to LLMs capable of generating accurate source code from natural-language problem descriptions.
Recent developments in deep learning have resulted code-generation models that produce source code from natural language and code-based prompts with high accuracy. This is likely to profound effects the classroom, where novices can now use free tools automatically suggest solutions programming exercises assignments. However, little currently known about how interact these practice. We present first study observes students at introductory level using one such auto-generating tool, Github...
Metacognition and self-regulation are important skills for successful learning have been discussed researched extensively in the general education literature several decades. More recently, there has growing interest understanding how metacognitive self-regulatory contribute to student success context of computing education. This article presents a thorough systematic review metacognition work computer programming an in-depth discussion theories that leveraged some way. We also discuss...
Large language models (LLMs) are revolutionizing the field of computing education with their powerful code-generating capabilities. Traditional pedagogical practices have focused on code writing tasks, but there is now a shift in importance towards reading, comprehending and evaluating LLM-generated code. Alongside this shift, an important new skill emerging -- ability to solve programming tasks by constructing good prompts for models. In work we introduce type exercise hone nascent skill:...
One of the many challenges novice programmers face from time they write their first program is inadequate compiler error messages. These messages report details on errors programmer has made and are only feedback gets compiler. For students play a particularly essential role as often have little experience to draw upon, leaving primary guidance correction. However these frequently inadequate, presenting barrier progress source discouragement. We designed implemented an editor that provides...
Metacognition and self-regulation are popular areas of interest in programming education, they have been extensively researched outside computing. While computing education researchers should draw upon this prior work, is unique enough that we explore the extent to which work applies our context. The goal systematic review support research on metacognition by synthesizing relevant theories, measurements, these topics. By reviewing papers mention or context programming, aim provide a...
Programming is an essential skill that many computing students are expected to master. However, programming can be difficult learn. Successfully interpreting compiler error messages (CEMs) crucial for correcting errors and progressing toward success in programming. Yet these often understand pose a barrier progress novices, with struggling exhibiting high frequencies of errors, particularly repeated errors. This paper presents control/intervention study on the effectiveness enhancing Java...
When solving programming problems, novices are often not aware of where they in the problem-solving process. For instance, students who misinterpret problem prompt will most likely form a valid conceptual model task and fail to make progress towards working solution. Avoiding such errors, recovering from them once occur, requires metacognitive skills that enable reflect on their processes. these reasons, developing awareness is crucially important for novice students. Previous research has...
The SIGCSE Technical Symposium is celebrating its 50th year, and a constant theme throughout this history has been to better understand how novices learn program. In paper, we present perspective on the evolution of introductory programming education research at over these 50 years. We also situate Symposium's impact in context wider literature research. Applying systematic approach collecting papers presented that focus novice / CS1, categorized hundreds according their main focus,...
The recent emergence of code generation tools powered by large language models has attracted wide attention. Models such as OpenAI Codex can take natural problem descriptions input and generate highly accurate source solutions, with potentially significant implications for computing education. Given the many complexities that students face when learning to write code, they may quickly become reliant on without properly understanding underlying concepts. One popular approach scaffolding...
The introduction of Large Language Models (LLMs) has generated a significant amount excitement both in industry and among researchers. Recently, tools that leverage LLMs have made their way into the classroom where they help students generate code instructors learning materials. There are likely many more uses these -- beneficial to possibly detrimental learning. To ensure used enhance learning, educators need not only be familiar with tools, but use potential misuse. goal this BoF is raise...
The recent advent of highly accurate and scalable large language models (LLMs) has taken the world by storm. From art to essays computer code, LLMs are producing novel content that until recently was thought only humans could produce. Recent work in computing education sought understand capabilities for solving tasks such as writing explaining creating coding assignments, interpreting programming error messages, more. However, these technologies continue evolve at an astonishing rate leaving...
Reading, understanding and explaining code have traditionally been important skills for novices learning programming. As large language models (LLMs) become prevalent, these foundational are more than ever given the increasing need to understand evaluate model-generated code. Brand new also needed, such as ability formulate clear prompts that can elicit intended from an LLM. Thus, there is great interest in integrating pedagogical approaches development of both traditional coding...
Given the ever-increasing prevalence of technology in modern life, there is a corresponding increase likelihood digital devices being pertinent to criminal investigation or civil litigation. As direct consequence, number investigations requiring forensic expertise resulting huge evidence backlogs encountered by law enforcement agencies throughout world. It can be anticipated that cases analysis will greatly future. also likely each case require an increasing including computers, smartphones,...