Public profile
Research areas
Computer Science Education, Virtualization, Embedded Runtime Systems
Computer Science
Director of Undergraduate Studies
Associate Teaching Professor of Computer Science
Average rating
3.8
30 temporary mock ratings
Difficulty
3.2
course-linked average
Courses
7
in seeded sections
Computer Science Education, Virtualization, Embedded Runtime Systems
COMP 215
This course covers the principles of programming and program design. The course is organized around a number of individual programming assignments that fit together to complete a significant, real-world application. Each assignment emphasizes one or more of the basic principles of software design, including: encapsulation, abstraction, test-driven development, and functional and object-oriented programming. The Java programming language will be used. An introduction to the basics of the Java language itself (including Java syntax and semantics) will be provided.
COMP 364
This is a project-based course that will give students hands-on experience in implementing web-based pedagogical tools designed to actively engage students in the process of learning foundational computer science topics, with the ultimate goal of deploying these tools in CS courses at Rice. Students will work in teams to build and large-scale software systems. In the process, students will gain experience with software engineering, user interface design, teamwork, and using varied languages and technologies. Cross-list: COMP 464. Repeatable for Credit.
COMP 390
Theoretical and experimental investigations under staff direction. Repeatable for Credit.
COMP 464
This is a project-based course that will give students hands-on experience in implementing web-based pedagogical tools designed to actively engage students in the process of learning foundational computer science topics, with the ultimate goal of deploying these tools in CS courses at Rice. Students will work in teams to build and large-scale software systems, with students enrolled in COMP 464 taking on leadership roles within their teams. In the process, students will gain experience with software engineering, user interface design, project management, teamwork, written and verbal communication, and using varied languages and technologies. Cross-list: COMP 364. Repeatable for Credit.
COMP 490
Theoretical and experimental investigation under staff direction. Repeatable for Credit.
COMP 491
A combination of in-service teaching and a seminar. Repeatable for Credit.
COMP 591
A combination of in-service teaching and a seminar. Repeatable for Credit.