In this paper we discuss how computer supported collaborative learning (CSCL) can be deployed to develop new skills and habits in students at university level. These considerations...
In this paper we describe our experience in integrating the RIM's BlackBerry handheld wireless device into programming and literacy courses at the University of Guelph and th...
This paper presents a philosophy underlying CS-1 programming projects, and illustrates this philosophy with a concrete example. Integral to the philosophy is the use of Ada packag...
Although visual programming techniques have been used to lower the threshold of programming for end users, they are not sufficient for creating end user programming environments t...
Fill-reducing sparse matrix orderings have been a topic of active research for many years. Although most such algorithms are developed and analyzed within a graph-theoretical frame...
Several high-level programming languages for programming agents and robots have been proposed in recent years. Each of these languages has its own features and merits. It is still...
Electronic Blocks are a new programming interface, designed for children aged between three and eight years. The Electronic Blocks programming environment includes sensor blocks, ...
A programming system is the user interface between the programmer and the computer. Programming is a notoriously difficult activity, and some of this difficulty can be attribute...
Research into the cognitive aspects of programming originated in the study of professional programmers (whether experts or students). Even “end-user” programmers in previous s...
Students in programming courses generally write “toy” programs, even when the size of the assigned projects is large. Programming assignments are written, superficially teste...