Carlmont High School


Department FlowchartTop of Page

 Computer Science Department Course Catalog Descriptions
 

+Introduction to Computer Science: Mobile Apps Development (CS Mob Aps)

  • Grades 9, 10, 11, 12
  • Prerequisite(s): none
  • A one-year course in which students use the programming language App Inventor to build apps to use on Android mobile devices. Students build increasingly complicated apps utilizing many of the features that mobile devices offer including, but not limited to: location sensor, orientation sensor, accelerometer, proximity sensor, text to speech and speech to text, camera, sound recorder, texting, clock, video player and so on. Students will also learn how to access the program’s Tiny database and Tiny Web database. All work is submitted via the student’s personal website, so students become conversant with Google sites as well.
  • Homework: little to none
  • P: This course meets the UC a-g (“g” college-preparatory elective) requirement.
  • +: This course meets the Career Technical Education (CTE) graduation requirement.

+Computer Science: The Structure and Interpretation of Computer Programs (CS Structure)

  • Grades 9, 10, 11, 12
  • Prerequisite(s): Algebra 1
  • A one-year course that exposes students to techniques of abstraction at several levels: (a) within a programming language, using higher-order functions, manifest types, data-directed programming, and message-passing; (b) between programming languages, using functional and rule-based languages as examples. It also relates these techniques to the practical problems of implementation of languages and algorithms on a von Neumann machine. There are several significant programming projects. The primary programming language used is Python.
  • P: This course meets the UC a-g (“g” college-preparatory elective) requirement.
  • +: This course meets the Career Technical Education (CTE) graduation requirement.

+AP Computer Science A: Java  (AP CS-A)

  • Grades 10, 11, 12
  • Prerequisites: Algebra 2 and prior programming experience.
  • A one-year college-level course that prepares students for the national “AP Computer Science A” exam (the long-standing exam first offered in 1984). Students will develop computational programming skills in the Java language. Major topics include: (I) Object-Oriented Program Design; (II) Program Implementation; (III) Program Analysis; (IV) Standard Data Structures; (V) Standard Operations and Algorithms; and (VI) Computing in Context.
  • H: This course is approved by the University of California as honors.
  • P: This course meets the UC a-g (“g” college-preparatory elective) requirement.
  • +: This course meets the Career Technical Education (CTE) graduation requirement.

+Computer Science: Computer Architecture and Assembly Language (CS Arch)

  • Prerequisites: AP Computer Science A
  • A one-year college-level course examining the internal organization and operation of digital computers. Topics include: Machine architecture, support for high-level languages (logic, arithmetic, instruction sequencing) and operating systems (I/O, interrupts, memory management, process switching); Elements of computer logic design; Trade-offs involved in fundamental architectural design decisions. The primary programming languages used are C and MIPS Assembly.
  • H: Honors GPA Boost
  • P: This course meets the UC a-g (“g” college-preparatory elective) requirement.
  • +: This course meets the Career Technical Education (CTE) graduation requirement.

Computer Science Department MembersTop of Page

Dial (650) 595-0210 and then an extension below. Email preferred.
Name Phone
Extension
Email
Govani, Kris CS Mobile Apps Development  39666 
Lai, David CS Structure, CS Arch  39695 
Voldstad, Karyn AP CS-A, Department Chair  39658