I got Ph.D. degree in Electrical Engineering from Louisiana State University, Baton Rouge and Master degree from University of Southern California. I work more than 10 years in electrical design in big companies like Qualcomm, LSI and Micron. Combining teaching experience in college where I taught the undergraduate students and working experience in real life circuitry, hardware design, I have very strong background to teach you how the Robot works by using C programming to control it. I start to teach the coding from my kids. They learn the LEGO Robot by using the NXT. While the NXT software is some kind of simple, I found we could use some C coding to overwrite the software to control the Robot and do some complicated function. Even there is PID control which is the classical theory in modern control system. There is a lot of more you could do with your LEGO Robot. For teenager, the NXT software may be a little easy for them. So learning the coding is perfect for them to learn and have challenging. I teach in local community in San Diego.