Introduction to Computer Science
9, 10, 11, 12 — Semester
1 period, ½ credit
This course (new to RHS for Spring 2010-11) is an introduction to computer science, software engineering, and computation for all students interested in developing software applications, not just using them.
Through a project-oriented approach, students will create a variety of software applications and systems. By collaborating in a hands-on environment, students will learn problem solving, software design and programming, debugging strategies, and the fundamentals of computer science (data structures, procedures, and algorithms). We will use a variety of programming systems that are not only creative and highly interactive, but also provide an engaging way to learn the practice of software engineering.
Students will work on projects (both individual and team) in the areas of graphics and games, animation and art, electronics systems, and interactive fashion. The software used to create the projects will be open-source packages such as Scratch, Processing, Arduino, and LilyPad.
In today’s digital society, we are all users of computers, networks, and software. In this course, students will get a chance to go beyond being a consumer of software products and to become a producer of them. This knowledge could lead directly to a career path in computing, an interest in studying the field more in college, or just a better understanding of how computers work. It also should be lots of fun along the way!
All students who are curious and willing to experiment and explore are welcome to have some serious fun while gaining an understanding of computer science.
There will be four modules in the course, each using a different system to create different kinds of interactive applications. All use free, open-source software systems.
Graphics & Games
We will begin the course by experimenting with Scratch, a visual programming language that “makes it easy to create your own interactive stories, animations, games, music, and art.” It was developed at the famed MIT Media Lab and is used to teach basic principles of programming to people of all ages. «scratch.mit.edu»
Objects & Systems
In this module, students will learn to program an inexpensive but powerful micro-controller called Arduino, a close cousin to Processing for easily controlling electronics. We will use it for projects that use sensors, LEDs, motors, and other components to make interactive objects and systems. «arduino.cc»
Animation & Art
This module will feature the Processing system, a “programming language and environment for people who want to create images, animations, and interactions.” Also a product of research at the Media Lab, Processing is a tool that has become very popular with artists and designers who want to use software in their work. It was also designed specifically to teach the fundamental principles of computer programming. «processing.org»
Fashion & Textiles
Finally, the last module will focus on the creation of wearable electronics and e-textiles for interactive fashion projects. We will use the LilyPad, an Arduino microcontroller that can be sewn into fabrics and connected to sensors and lights using conductive thread. Perhaps the final projects can be featured in a Rough Rider Fashion Show! «LilyPad»