Computer Science - Grade Level Descriptions

Computer Science - Grade Level Descriptions

Computer Science Grades Tabs

Course Description

In sixth-grade Computer Science, we begin to explore philosophic and practical aspects of computer science and apply our discoveries as a method of self-expression. Using technology as our medium we tell stories, create music and art, and present who we are and want to be.  

Course Themes:

I. Computational Thinking

Computation thinking describes an approach to solving problems algorithmically.  The first step in developing our computational thinking skills is to understand what kind of instructions that a computer can interpret and how those compare to instructions that a human can interpret.  With this goal in mind, we discover how computers and humans interpret code by playing with logic puzzles, decomposing everyday activities into simple modules, and developing algorithmic language.

II. Computing Skills and Practices

Throughout this course, we explore several programming paradigms including Scratch, HTML, and Lego Mindstorm robots.  Meanwhile, we develop effective and mindful computing practices with particular focus on iteration, experimentation, and planning.

III. Digital Identity and Responsibility

Throughout the year we will reflect on our responsibilities as users and creators of technology with the intention that GMS girls will lead the digital community in building a respectful and mindful culture.

Course Description

In seventh-grade Computer Science, we delve deeper into our exploration of computer science with a particular focus on how technology can be used to solve meaningful problems in the GMS community. As we tackle more complex problems, we discover and practice the standard vocabulary, tools, and methodologies of a computer scientist with the intention that GMS girls can confidently join the growing dialogue around the creation and use of technology in our society.

Course Themes:

I. Design Thinking

In this course, we focus on how technology can benefit the GMS community.  We challenge ourselves to discover community problems, understand and interpret the problems, and ideate solutions. In conjunction with our exploration of programming languages and practices, we will experiment and evolve our ideas throughout the course.

II. Computational Thinking

We strategize about how to develop and program algorithmic solutions to problems at multiple levels of detail. For complex computer programs, we use top-down design in order to decompose a problem into understandable subproblems.

III. Computing Skills and Practices

This year we add variables, lists, and functions to our computer science toolkit.  We also move from the Scratch environment to Python as our main programming paradigm.

Course Description

Eighth-grade Computer Science dwells on the underlying basics of how computers work and further cultivates programming knowledge begun earlier in the curriculum. We think about how to describe and model objects and processes around them and why the concept of abstraction plays an important role. Throughout the second semester, we will create algorithms and write simple programs using the Python programming language.

Units of Study:

I. Abstraction and Animation

We will take a look at the many uses of abstraction across disciplines, and understand how the outcome of an abstraction process can vary according to its goals. The Adobe Flash animation tool will be used to develop pre-programming skills by using it to model and illustrate simple processes, as well as using simple Flash Actionscript commands to control their creations.

II. Digitizing Data

Everything that is represented within a computer environment must be “digitized,” but what does that really mean? Starting from the basics of electrical circuitry, we will simulate the process of digitization process for text as well as for 2-D and 3-D images, culminating with rendering their entire classroom with all its fixtures and furniture to demonstrate modern computer graphics techniques.

III. Write and Understand Simple Python Programs

Building on the seventh-grade Introduction to Python, we will have a chance to grow our skills by coding advanced programs that include more interactivity and complex data sets. The skill of writing “pseudocode” that will serve as an outline for the underlying structure of a program will be emphasized, as well as frequent practice and an understanding of what all programming languages have in common.