Computer Science Principles

This is a project-based course, although there will be periods where I will give direct instruction. The majority of your grade will come from projects that you will complete individually, although for most you will be allowed to work together.

Lessons and Resources

Unit 1: Introduction

  1. Setup
  2. Taking Screenshots (한국어)
  3. Using Your Operating System (한국어)
  4. Using the Command Line
  5. Using Git
  6. Touch Typing
  7. Using Nano
  8. Using Vim
  9. Writing in Markdown
  10. Computer Hardware

Unit 1 Resources

Unit 2: Right Thinking

  1. Alternative Bases
  2. Representing Information
  3. Algorithms
  4. Logic

Unit 2 Resources

Unit 3: Arduino

  1. Arduino IDE
  2. Blink
  3. Serial
  4. Fade
  5. Calculate

Unit 4: Python

  1. Install Python
  2. Install Levinux
  3. Print All the Things
  5. Basic Math
  6. Variables
  7. Strings
  8. Prompting the User

Unit 5: Javascript

Unit 6: Web Development

  1. What is the Internet?
  2. HyperText Markup Language
  3. Cascading Style Sheets
  4. Setting Up Servers
  5. Building a Website

Stretch Projects

Whenever you finish working on the assigned lessons, you are expected to go back and complete any optional checkpoints. Once those are complete, you are free to work on your stretch projects during class time. However all students must earn a certain number of points per quarter through stretch projects. Points earned beyond the required amount are extra credit. You can keep track of your stretch projects on Trello.