This course is a complete, hands-on introduction to Mobile Robot Programming. Using six Nomad Scout robots and portable computers, we will survey topics ranging from low-level control and obstacle avoidance, including PID control, to high-level navigation, planning, robot-robot communication and cooperation.