We describe a number of efforts to engage university students with robotics through teaching and outreach. Teaching runs the gamut from undergraduate introductory computer science to graduate-level artificial intelligence courses. Outreach involves collaborations between students and New York City public school classrooms. Our efforts have always involved team-based projects that culminate in demonstrations or competitions, usually based on challenges from RoboCupJunior. Several research projects have followed from these initiatives. Here, we relate some lessons learned and outline new research avenues that we are pursuing to overcome some of the issues.