Thesis (Ph.D.)--University of Washington, 2021Learning to write programs is hard, but many fail to even learn basic program reading skills, such as mentally tracing a program to predict its behavior. This dissertation argues a new theory of programming language knowledge that includes mappings from syntax to semantics and their nested combinations can serve as the basis for more granular tools for learning and more precise assessments of that knowledge. First, I created a new theory of basic programming language knowledge as knowing the mapping from token-level syntax to semantics encoded in a PL interpreter's execution paths, and nested combinations of those paths. I proposed this knowledge can be learned by humans via causal inference, dr...
Research in the field of education has shown that learning a new skill or subject is enhanced when p...
Processing is a high-level programming language that is based on Java, and is known for its abstract...
This working group asserts that Program Comprehension (Prog-Comp) plays a critical part in the proce...
This paper reports on a replication of earlier studies into a possible hierarchy of programming skil...
As technologies advance and play an increasingly larger role in our lives, computational thinking---...
Novice programming students often fail or drop out of beginner’s programming courses. One reason for...
Instructional designers must consider learners' learning trajectories and design tasks that are neit...
Instructional designers must consider learners' learning trajectories and design tasks that are neit...
Novice programming students often fail or drop out of beginner’s programming courses. One reason for...
I present a new approach to teaching a graduate-level programming languages course focused on using ...
The way in which novice programmers learn to write code is of considerable interest to computing ed...
The way in which novice programmers learn to write code is of considerable interest to computing ed...
The way in which novice programmers learn to write code is of\ud considerable interest to computing ...
Research into the teaching of computer programming seldom examines the profound and abundant knowled...
Research into the teaching of computer programming seldom examines the profound and abundant knowled...
Research in the field of education has shown that learning a new skill or subject is enhanced when p...
Processing is a high-level programming language that is based on Java, and is known for its abstract...
This working group asserts that Program Comprehension (Prog-Comp) plays a critical part in the proce...
This paper reports on a replication of earlier studies into a possible hierarchy of programming skil...
As technologies advance and play an increasingly larger role in our lives, computational thinking---...
Novice programming students often fail or drop out of beginner’s programming courses. One reason for...
Instructional designers must consider learners' learning trajectories and design tasks that are neit...
Instructional designers must consider learners' learning trajectories and design tasks that are neit...
Novice programming students often fail or drop out of beginner’s programming courses. One reason for...
I present a new approach to teaching a graduate-level programming languages course focused on using ...
The way in which novice programmers learn to write code is of considerable interest to computing ed...
The way in which novice programmers learn to write code is of considerable interest to computing ed...
The way in which novice programmers learn to write code is of\ud considerable interest to computing ...
Research into the teaching of computer programming seldom examines the profound and abundant knowled...
Research into the teaching of computer programming seldom examines the profound and abundant knowled...
Research in the field of education has shown that learning a new skill or subject is enhanced when p...
Processing is a high-level programming language that is based on Java, and is known for its abstract...
This working group asserts that Program Comprehension (Prog-Comp) plays a critical part in the proce...