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.
|ECE473/573 (S/W Engineering Concepts)||Capstone software project with large-scale software requirements|
|ECE441A/541A (Automatic Control)||2013 Fall|
|Feedback Control Theory|
|ECE505 (Model-Integrated Computing)||Using models as engineering design and integration tools|
|ECE 492 (Independent Study)||2011 Spring (Joseph Curamen)||Adaptive Control|
|ECE373 (Object-Oriented Software Design)]]||Learning advanced OO programming design|
|ECE 492 (Independent Study)||2009 Fall (Hussain Al-Helal)||Maximising Target Acquisition|
UAV Search: Maximising Target Acquisition (Best Paper, IEEE Student Paper Competition, Tucson, Spring 2009),
|ECE492 (Directed Research: Object Oriented Software Design)||Directed research for graduating students in OO techniques and practice.|
|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|
|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.|
(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
- ECE 340 -- Engineering Systems Analysis
- ECE 373 -- Object-Oriented Software Design
- ECE 441 -- Automatic Control
- ECE 442/542 -- Digital Control Systems
- ECE 447A -- Advanced Motion Control
- ECE 449/549 -- Continuous-System Modeling
- ECE 473/573 -- Software Engineering Concepts
- ECE 479/579 -- Principles of Artificial Intelligence
- ECE 492 -- Directed Research :)
- ECE 501 -- Linear Systems
- ECE 505 -- Model-Integrated Computing
- MATH 315 -- Introduction to Number Theory and Modern Algebra
- MATH 323 -- Formal Mathematical Reasoning and Writing
- MATH 402 -- Mathematical Logic
- MATH 410 -- Matrix Analysis
- MATH 413 -- Linear Algebra
- MATH 434/534 -- Introduction to Topology
- MATH 443/543 -- Theory of Graphs and Networks
- MATH 446/546 -- Theory of Numbers
- MATH 479/579 -- Game Theory and Mathematical Programming
- C SC 397A -- Advanced C++
- C SC 440 -- Introduction to Artificial Intelligence
- C SC 453 -- Compilers and Systems Software
- C SC 473 -- Automata, Grammars and Languages
- C SC 477 -- Introduction to Computer Vision
References for courses
Believe it or not, I get lots of questions about what a good C++ book is. Here are two I recommend
- C++: Effective Object-Oriented Software Construction: Concepts, Practices, Industrial Strategies and Practices (2nd Edition), by Kayshav Dattatri. I recommend this book for students who know C and/or Java and would like to learn what C++ does, and how to think about OO topics in C++.
- C++ Primer, by Lippman. I recommend this book as a reference, not for learning about Object-Oriented C++ .