Eighth Grade Computer Science

Eighth grade Computer Science dwells on the underlying basics of how computers work, and continues to cultivate the programming knowledge begun in sixth and seventh grades. Together, we think about how the notion of simplification, or abstraction, plays an important role; we then apply that knowledge appropriately in a programming context. The concepts of data and programs are thoroughly explored, forming a foundation upon which many important computer science concepts can be built.

Digitizing Data

Everything that is represented within a computer environment must be digitized, but what does that really mean? Starting from the basics of electronic circuitry, we simulate the process of digitization for text as well as 2-D and 3-D images. This unit culminates in a large programming project in which a 3-D model of the entire classroom is rendered from code; the project demonstrates contemporary computer graphics techniques, as well as the practice of participating in a complex collaborative software endeavor.

Writing and Understanding Simple Python Programs

Expanding upon the seventh grade introduction to Python, we have a chance to grow our skills by creating increasingly complex programs with more interactivity and which require more planning. The skill of reading programs written by others, and expressing algorithms in pseudo-code, will be emphasized as important pre-programming skills. Students gain more experience and facility with the important elements of loops, conditionals, variables and functions, and are expected to combine them in original ways to create expressive programs of their own choosing.