Virtual machines offer the ability to partition the resources of a physical system and to create isolated execution environments. The development of virtual machines is a very ch...
Lorenzo Martignoni, Roberto Paleari, Giampaolo Fre...
A fundamental part of a Computer Science degree is learning to program. Rather than starting students on a full commercial language, we favour using a dedicated "teaching lan...
We define a learning tutor as being an intelligent agent that learns from human tutors and then tutors human learners. The notion of a learning tutor provides a conceptual framewor...
Most significant software processes involve a wide range of disciplines, from programming to testing, and from documentation to database development. Unfortunately, agile processe...
Finding just the right example to answer a question can be difficult for CS1 students and teachers. For this to work well there must be an intuitive interface coupled to an approp...