Brian is the founder of Breakout Mentors and works 1-on-1 with many students. He graduated from Stanford in 2008 studying mechanical engineering and computer science, then went into enterprise software as a technical product manager. Before focusing on building Breakout Mentors into the top computer programming mentoring for kids in the Bay Area, he took three months to travel New Zealand from tip to tip. Let’s hear a little more from him!
When did you start programming?
I didn’t really get started until late my freshman year at Stanford. When I was in middle school I did some HTML to create an ever expanding Geocities Ken Griffey Junior site featuring a homerun tracker that had to be manually updated every time Griffey hit one out. Even though I enjoyed the project, I didn’t realize this was just the beginning of computer programming and there was so much more I could have learned. When I took the intro class at Stanford I realized I would have really enjoyed the challenge when I was younger.
Why is it important for kids to start programming when young?
One of the most important reasons is because you might not start later. The assumption that you can always start later is flawed – you can start later, but the odds that you will greatly diminish with each passing year. As you enter high school there are more and more extracurricular activities and older students start to worry more about what their peers are doing. When you are young you can enjoy the experience of learning for the sake of a fun challenge, without placing too much emphasis on the results.
Another advantage is that you learn thinking skills that are applicable to any situation. Programming forces you to deconstruct projects into the individual components and the steps necessary to make it happen. Young students don’t have a lot of exposure to this, but this is ultimately how anything substantial gets accomplished.
What do you find rewarding about teaching kids how to program?
How much fun they have and the moment of realization “wow I just made that”. There aren’t many disciplines that are the combination of creativity and logical thinking skills – in fact, this is a brand new experience for the students we work with. The amount of control and power to make really impressive projects is what makes it fun for the students, and fun for me helping them realize this potential.
What is your favorite game you have created with a student?
My favorites are the completely original games that students invent. One that comes to mind is a 2-D game that somewhat resembles mini-golf. There is a mallet that you can use to hit your ball with the power determined by how long you hold down spacebar. The game had some really difficult features like the physics of bouncing off walls and friction to slow it down. The student was very creative and able bring his ideas to life with my assistance.
What advice to you have to kids learning how to program?
Work on projects that you enjoy but also find challenging! It should be fun so if it’s not, make an adjustment. It’s helpful to have someone who can help you when you get stuck, but also to encourage projects that are the right difficulty for you.