Main /Teaching

Course Listing

The below table shows the full set of courses I've taught at all the universities with which I have been associated. Clicking on the course number gives you the most recent instantiation of that course, while clicking on the Year/Term gives you the pages for that exact instantiation. Note that many of these will be unavailable, as I prevent students from seeing the upcoming homeworks by looking at previous courses.

Courses are taught at the University of Arizona, unless specified otherwise.

Title Term Taught Description
ECE505 (Model-Integrated Computing)

2008 Fall
2004 Spring
2002 Fall
2001 Fall

Using models as engineering design and integration tools
ECE373 (Object-Oriented Software Design)

2008 Fall
2007 Fall

Learning advanced OO programming design
ECE 498 (Capstone) 2008-2009 Spring/Fall (Cupcakes) Class Wiki Evaluating MS Robotics Studio
ECE 492 (Independent Study) 2008 Spring (Hussain) Evaluating MS Robotics Studio
ECE 299 (Independent Research) 2008 Spring (Andrew) Independent research in distributed robotics applications
ECE473/573 (S/W Engineering Concepts) 2008 Spring Capstone software project with large-scale software requirements
Autonomous Systems: Algorithms and Implementation 2006 Fall Making robotic systems (especially ground vehicles) autonomous. Taught at UC Berkeley
Hybrid Systems: Computation & Control 2005 Spring Graduate introduction to hybrid systems. Taught at UC Berkeley
Advanced Software Architecture 2003 Spring Undergraduate C++. Taught at Vanderbilt University.

Recommended Courses

(included from Classes) Here is a list of courses, some of which you should take if you want to be my student.

NOTE: This is not a comprehensive list, but you should consider a large subset of these classes.

Electrical and Computer Engineering

Mathematics

Computer Science

References for courses

C++

Believe it or not, I get lots of questions about what a good C++ book is. Here are two I recommend