“My son improved in his coding skills and he loves to code now.”
—Mother of 8th grader
“Mike is a rare find… my son went on to get a 5 on the AP Computer Science.”
—Father of 12th grader
Mike is a brilliant tutor … who excels in teaching complicated concepts in a clear, simple manner.
—Mother of 10th grader
I offer a free phone consultation to help you understand what the lessons will cover, what skills your child will gain, and how long it might take to reach your goals. I also offer a free lesson where your child and I will do some programming together. This is a good way to find out if they enjoy it and to evaluate their current level of knowledge.
Hi, I’m Mike! I have a degree in computer science from Caltech and worked for many years at JPL/NASA.
I now teach coding to middle school and high school students in Pasadena, California and the surrounding communities.
Coding is more and more essential for career success. Your child will learn key skills like:
Programming and computer science skills are not only becoming more and more in-demand, but they are essential for succeeding in the economy of the future, including jobs that use AI. By building your child’s interest in computer programming early, you help prepare them for high school and college CS classes and their future career in places such as Silicon Valley or game design.
The benefits include skills like
With young students like 7th or 8th graders, we will start with something called block coding. If your student is ready, I’ll teach a text-based language called Python. Text-based languages are used to write more complex games and websites. They are also used in college courses and industry coding.
We’ll start with simple programs without graphics, then move on to simple graphical games.
For more advanced students, I can teach them other text-based languages such as Java, C#, or Haskell.
If your child is interested, we can work on computer science.
Computer science is the theory behind writing programs and involves the study of complex interactions of code. It is often taught in high school and college classes, such as AP Computer Science A. Professional programmers are often asked to demonstrate their knowledge of it in technical interviews in order to get a programming job.
I teach CS in a way that makes it fun and engaging. I have my students write programs to solve puzzle problems that range from easy to very challenging.
Solving puzzle problems is a great way to increase your programming IQ, making all other kinds of programming easier.
A: I will explain what I provide, clarify anything that was not clear on my website, and answer any questions you have about my services. I will also get some information about your student: their grade level, their background with computers, and their interests.
A: In the lesson, which can take place remotely or at your location, I’ll work with your child on a small program. I’ll attempt to match the problem difficulty to their current level so it’s challenging but not too frustrating. I’ll get a sense of how they work and their current level of knowledge.
A: Your child needs a laptop or desktop computer, either a Mac or a PC. A Chromebook or tablet won’t work. If you are planning on having remote lessons, you need a fast internet connection.
A: In-person lessons are always the most fun and allow me to establish a more effective teaching relationship with your student. I’ll go to your location if it’s not far from my home in Pasadena. You are also welcome to come to my home.
Remote lessons are a close second. There is very effective software that lets us share code and work together.
One possibility is that we have both remote and in-person lessons, depending on what’s convenient each week. For locations farther from Pasadena, we might need to do mostly remote sessions, but I would be willing to arrange an in-person lesson once a month.
A: In the right situation I can take on students in programming classes. I ask that your student be self-motivated and do several hours of self-study between lessons with me. Keep in mind that I have an academic honesty policy: I will not give away the answers directly. I’ll work with a student to give hints and make sure they really understand. This sometimes comes up if I’m working with a student who’s far behind and doesn’t understand the current material: they often expect me to give away the homework answers.