Intro to Computer Science

Frequently Asked Questions (FAQs)

Instructor Contact Info

Office: Poly Building, Suite 203

I teach periods D, E, G, and L1. I'm available for assistance during Extra Help times M-F, during periods A, B, C, and F periods.
To assist in coordinating meetings, scheduling a meeting time by email is preferred (but not mandatory!).


Phone (office, voicemail): 626-396-6688. Email usually gets a more timely response, however.

My public key

I use these tools.

What will we be studying in this class?

From the Course of Study:

The Introduction to Computer Science course is an introduction to computer programming using the Python language. Topics of study include object-oriented program design and implementation, program analysis, data structures, control structures, and basic algorithms, along with additional discussion of some of the legal, social, and ethical issues associated with computer use. Assignments include short programming exercises, reading and a series of larger-scale programming projects. Home access to an Internet-connected computer (Windows, OS X, or Linux) is required.

The textbook for this class is Miller and Ranum's excellent How to Think Like a Computer Scientist which has a free, online version that we'll be using in this class.

How hard/fun/challenging is this course? Is it the right course for me?

Poly currently offers three computer science courses, described at the Computer Science page. Questions about the nature of each class can also be answered by talking to the instructor, as well as other people who have taken the class.

This particular course is a one-semester introductory course, and if you're intrigued by the idea of solving interesting problems, writing code, or even just learning a little about how programming a computer works, then you'll enjoy the challenges posed by this class. No prior programming experience is required or recommended. Bring your laptop and your interest in learning and we'll go from there!

What kind of computer should I have for this course?

You need a laptop running a current version of Apple's macOS, Microsoft's Windows, or Ubuntu (Linux). For more specific information, see the Computers section in the Course Policies.

Who is the instructor for this course?

I was born in 1960 and spent my formative years growing up in the deserts of Arizona, playing in the dirt with scorpions. I moved to Southern California with my family when I was in high school, and have been here pretty much ever since.


I'm a Google Certified Teacher/Innovator, as you can tell from the Google-branded polo shirt I occasionally wear in class.

I've attended UC Irvine, CSU Humboldt, CSU Dominquez Hills, and CSU San Bernardino and picked up some paperwork along the way: a Bachelor's in Geology, a California Teaching Credential, a Master's in Education... I'm a Google Certified Teacher/Innovator, and believe in the power of technology to enhance learning. I've been teaching for 30 years at independent, public, and Catholic schools in Pasadena, Berkeley, Yucca Valley, and Redondo Beach, respectively. I love my job. I like helping people figure out "that whole physics thing," as well as teaching computer science, and figuring out ways to use technology to make life and learning better.

In my spare time, I have a real life: reading, hanging out with friends, going to France, traveling, hiking with my son, visiting with relatives, seeing famous scientists, going climbing, playing with my dog, having adventures, listening to music... and doing physics problems and coding, of course!