Steps before syntax: Helping novice programmers solve problems using the PCDIT framework

Novice programmers often struggle with problem solving due to the high cognitive loads they face. Furthermore, many introductory programming courses do not explicitly teach it, assuming that problem solving skills are acquired along the way. In this paper, we present 'PCDIT', a non-linear...

Full description

Saved in:
Bibliographic Details
Main Authors: KURNIAWAN, Oka, JEGOUREL, Cyrille, LEE, Norman Tiong Seng, DE MARI, Matthieu, POSKITT, Christopher M.
Format: text
Language:English
Published: Institutional Knowledge at Singapore Management University 2022
Subjects:
Online Access:https://ink.library.smu.edu.sg/sis_research/6845
https://ink.library.smu.edu.sg/context/sis_research/article/7848/viewcontent/pcdit_framework_hicss22.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Singapore Management University
Language: English
id sg-smu-ink.sis_research-7848
record_format dspace
spelling sg-smu-ink.sis_research-78482022-02-22T03:42:32Z Steps before syntax: Helping novice programmers solve problems using the PCDIT framework KURNIAWAN, Oka JEGOUREL, Cyrille LEE, Norman Tiong Seng DE MARI, Matthieu POSKITT, Christopher M. Novice programmers often struggle with problem solving due to the high cognitive loads they face. Furthermore, many introductory programming courses do not explicitly teach it, assuming that problem solving skills are acquired along the way. In this paper, we present 'PCDIT', a non-linear problem solving framework that provides scaffolding to guide novice programmers through the process of transforming a problem specification into an implemented and tested solution for an imperative programming language. A key distinction of PCDIT is its focus on developing concrete cases for the problem early without actually writing test code: students are instead encouraged to think about the abstract steps from inputs to outputs before mapping anything down to syntax. We reflect on our experience of teaching an introductory programming course using PCDIT, and report the results of a survey that suggests it helped students to break down challenging problems, organise their thoughts, and reach working solutions. 2022-01-01T08:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/6845 info:doi/10.24251/HICSS.2022.121 https://ink.library.smu.edu.sg/context/sis_research/article/7848/viewcontent/pcdit_framework_hicss22.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University Computational thinking novice programmers problem solving Python programming Educational Methods Programming Languages and Compilers
institution Singapore Management University
building SMU Libraries
continent Asia
country Singapore
Singapore
content_provider SMU Libraries
collection InK@SMU
language English
topic Computational thinking
novice programmers
problem solving
Python programming
Educational Methods
Programming Languages and Compilers
spellingShingle Computational thinking
novice programmers
problem solving
Python programming
Educational Methods
Programming Languages and Compilers
KURNIAWAN, Oka
JEGOUREL, Cyrille
LEE, Norman Tiong Seng
DE MARI, Matthieu
POSKITT, Christopher M.
Steps before syntax: Helping novice programmers solve problems using the PCDIT framework
description Novice programmers often struggle with problem solving due to the high cognitive loads they face. Furthermore, many introductory programming courses do not explicitly teach it, assuming that problem solving skills are acquired along the way. In this paper, we present 'PCDIT', a non-linear problem solving framework that provides scaffolding to guide novice programmers through the process of transforming a problem specification into an implemented and tested solution for an imperative programming language. A key distinction of PCDIT is its focus on developing concrete cases for the problem early without actually writing test code: students are instead encouraged to think about the abstract steps from inputs to outputs before mapping anything down to syntax. We reflect on our experience of teaching an introductory programming course using PCDIT, and report the results of a survey that suggests it helped students to break down challenging problems, organise their thoughts, and reach working solutions.
format text
author KURNIAWAN, Oka
JEGOUREL, Cyrille
LEE, Norman Tiong Seng
DE MARI, Matthieu
POSKITT, Christopher M.
author_facet KURNIAWAN, Oka
JEGOUREL, Cyrille
LEE, Norman Tiong Seng
DE MARI, Matthieu
POSKITT, Christopher M.
author_sort KURNIAWAN, Oka
title Steps before syntax: Helping novice programmers solve problems using the PCDIT framework
title_short Steps before syntax: Helping novice programmers solve problems using the PCDIT framework
title_full Steps before syntax: Helping novice programmers solve problems using the PCDIT framework
title_fullStr Steps before syntax: Helping novice programmers solve problems using the PCDIT framework
title_full_unstemmed Steps before syntax: Helping novice programmers solve problems using the PCDIT framework
title_sort steps before syntax: helping novice programmers solve problems using the pcdit framework
publisher Institutional Knowledge at Singapore Management University
publishDate 2022
url https://ink.library.smu.edu.sg/sis_research/6845
https://ink.library.smu.edu.sg/context/sis_research/article/7848/viewcontent/pcdit_framework_hicss22.pdf
_version_ 1770576085772140544