This paper presents an overview of visualization in Computer Science instruction.It is broken down in the following fashion. First, we present the motivation for using visualization and visual techniques in instruction. This is followed by a discussion of when the use of visualization is most appropriate.We then consider a broad spectrum of uses of visualization in Computer Science instruction.This spectrum is organized from passive to active in terms of a student's involvement with the visualization tools. Types of visualizations are then categorized.
Ideally, the most meaningful learning experience for students in an undergraduate OS course would be to develop fully-functional OS's on their own. This can be accomplished using
μ
mps, a hardware emulator for a pedagogically undergraduate-appropriate hardware architecture, along with Kaya, a specification for a multi-layer OS supporting multiprocessing, VM, thread synchronization, external devices (disks, terminals, tape, printers, and network interfaces) and a file system.Traditional OS projects like Nachos[3] or OS/161[9] provide students with a significant starting code base. Students then modify existing OS modules or add new ones. With
μ
mps/Kaya students undergo an innovative and pedagogically different experience of starting only with a hardware emulator (i.e. no initial OS code base for students to build on/replace) and ending with a completely student written OS capable of running student written C programs.
It is common to name as virtual the imaginary space that can be created by software using computers and networks. This space is not only a set of processing and communications means and methods but it is also a space where humans can "meet," exchange ideas, leave messages etc. Students in computer science must learn how to design, implement, manage and debug the systems and networks that create this virtual space. Furthermore, CS students need an experimental environment -a playground-where they can develop their skills at creating and supporting these virtual environments.For this "playground" we propose a virtual world made up of emulated computer systems and emulated networks. This emulated world will be the students' testing environment, where they can run their own services, administer their own machines and set up security attacks without any danger to real networks and systems. It is a virtual space based on virtual machines and virtual networks but it is also a meeting place for computer science students, where they can test the effectiveness of their ideas.This "space" therefore is a twice virtual space, which we call virtual to the second power or virtual squared (V 2 ). It is a virtual environment that is a also virtual location (i.e. a town square) where different real computers, virtual systems and people can meet and communicate.
What should you do on the first day of your objects-first CS1 course? If you have been struggling with beginning an objects first course this special session will give you hints about how to avoid overload and make a smooth and effective start. The presenters are skilled at introducing objects to novices in interesting ways that captures the interest of the students and readies them for programming. These are gentle approaches that present deep ideas to the inexperienced. How can a course be built around objects without information overload? This session will address the opening gambit in this interesting game.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.