BFOIT - Introduction to Computer Programming


This material has evolved over a period of fourteen years.  The roots are in classes I taught at Longfellow Arts and Technology Middle School (LATMS) and continue to teach at UC Berkeley for BFOIT. It is also used in the area at Albany High School.

The initial "Introduction to Java" programming class was an idea that Nancy Elnor, the technology coordinator at LATMS, came up with.  I "sort of" volunteered to do it in a conversation I had with Nancy at a the technology in education conference (NECC) in 1999.

It has turned out to be quite a challenge.  Teaching computer programming to 6th through 8th grade students is much harder than I thought it would be.  So, my thanks go out to the experts in this field.  This set of notes is a combination of concepts I gleaned from books and papers written by Brian Harvey, Seymour Papert, George Polya, Elliot Soloway, and others.  Everyone I've met at UC Berkeley has been inspirational, has helped out.  Most recently, Mark Guzdial's Computing Education Blog has become a daily read.  My thanks go out to all of them for their dedication to the art/science of education.

Also, I can not thank the students and teachers/mentors I've worked with as these web-based lessons evolved enough.  Many of the projects in the lessons were suggested by students I've worked with.  Teachers, and parents (even grandparents) acting as mentors, have made many suggestions that I've worked into the content.  I learn so much from all those I interact with.

The new looks for the website are thanks to Florian Plank.  Thanks Florian!

Here is a short list of my favorite sources of enlightenment:

Berkeley Foundation for Opportunities in Information Technology

Watch a short video that shows what BFOIT is doing...

Books and Papers

Web Sites

Go to the Table of Contents

Public Domain Mark
This work (BFOIT: Introduction to Computer Programming, by Guy M. Haas),
identified by Berkeley Foundation for Opportunities in IT (BFOIT),
is free of known copyright restrictions.