Upper School Electives

Menlo School’s Coat of Arms staff prepares for another issue. Photo by Pete Zivkov.

Explore and discover what interests you.

In addition to departmental electives, Menlo offers a host of additional electives, many of which are open to all Upper School students. While they do not satisfy specific department course requirements, they allow students to find new intellectual passions and explore their interests on a deeper level. 

Meet our Upper School Electives faculty.

Course Catalog

  • Yearbook: Publication Design I


    Students in this course are part of the yearbook staff. They collaborate with students in the Yearbook Club and any students doing independent studies to create a gorgeous 400-page book each year. New staff members learn about visual design, photography, image editing, and using software for graphic design. Because the book depends on students to create it, the staff must be productive, but the atmosphere in class is casual. It’s a fun change of pace from the usual daily schedule. -Students who go on from Publications I to Publications II can earn a University of California visual arts credit, as well as their Menlo Arts credit.

  • Yearbook: Publication Design II


    (This class receives both a Menlo Arts credit and a UC Visual Arts credit.) In this course, students take part in designing the form and content of the annual book. They learn more about the central principles of design: shape, line, color, repetition and balance. They also dive more deeply into what makes good photography and why in yearbook photography we emphasize faces, action, context and emotion. And they practice shooting and choosing photos to create strong page layouts.

    Prerequisite: Publication Design I

  • Yearbook: Publication Design Leadership

    In this third-year class students build on everything they learned in the first two years and add to that the challenge of managing peers, leading the staff through a year-long trek to create our book. These publications veterans make decisions for the designs for pages and the book overall. It is their responsibility to incorporate all that they have learned about design in their first two years in an aesthetically pleasing and very practical creation.

    Open to juniors and seniors.

  • Introduction to Computer Science

    Assuming no previous experience with computers or computer programming, this course will provide students with a broad overview of how computers work, the role played by software, and the increasing power of technology in the modern world.  Students will learn basic ideas about operating systems, the Internet, and the increasing influence of machine learning and artificial intelligence.  We will examine challenging social issues such as the future of privacy in an era of facial recognition software and the increasingly difficult task of maintaining computer security.

    In addition, students will use a modern programming language to explore the elements of programming.  Extensive exercises will be provided to help students master common data types and to see how language features enable data manipulation, decisions, and repeated execution of similar operations.  Emphasis will be placed on thoughtful design, clarity of implementation, and the power generated by using modular design. 

    No Prerequisites

  • AP Computer Science A

    This course, intended for students without significant programming experience, surveys the field of computer science and teaches the rudiments of computer programming using the AP subset of the Java programming language. We begin with a thorough discussion of the elements of procedural programming: variables, types, expressions, statements, decision structures, looping, parameters and methods. By the end of the course students should be competent beginning programmers and have a solid understanding of the programming process and its complexities. The object-oriented nature of Java allows students to deal with new levels of abstraction, and the extensive Java class hierarchy enables beginning students to complete unusually ambitious projects, including game programs with keyboard and mouse input and graphical output. This course is appropriate for students who are new to programming or who already have had some programming experience. Students are prepared to take the Advanced Placement exam. Students from all grades may take this class. Freshmen may be admitted if they have demonstrated particularly strong math skills or modest programming experience. Each student is expected to bring his or her laptop to class every day. Menlo may help students acquire laptops where necessary.


    (1) Being an honors math student.
    (2) Rising sophomores: Completion of AGA with an A.
    (3) Rising juniors: Completion of Algebra 2 with Trigonometry with an A- or above.
    (4) Rising seniors: Completion of most recent math class with an A- or above.
    (5) If you don’t meet the above: permission of instructor. (Email Ms. Chou).

  • Advanced Topics in Computer Science (H)

    For more advanced students of computer science, Menlo offers students the opportunity to practice with new programming languages (typical units of study might include Scheme, Python, C, C++, and/or Objective-C), to gain practice with more advanced data structures and algorithms, and to become familiar with a broad selection of topics in computing, including hardware, the Unix operating system, artificial intelligence, and computer graphics. Working in teams and exploiting tools such as version control software, students will also have the opportunity to collaborate on a variety of ambitious programming projects. This course is for students who have successfully completed AP Computer Science. Topics vary from year to year. The course may be taken more than once. Each student is expected to bring his or her laptop to class every day. Menlo may help students acquire laptops where necessary.

    Prerequisites: Complete AP Computer Science or get permission of instructor (email Ms. Chou).

  • Introduction to Journalism

    JOURNALISM I: Introduction to Journalism

    Journalism today is not what it was even 10 years ago. Student journalists today still need to be able to write and use sources and evidence well, but they also need to be able to shoot video and craft stories for a short-attention-span audience. And many journalists today need to also be entrepreneurs, creating their own audiences and developing business plans that can sustain their work. Students in this course will learn and practice all the skills needed. They’ll also have the chance to get their work published in The Coat of Arms online and in print as soon as the quality is approved by students editors; all students will be publishing by the second semester.

    Skills learned in this course will serve students in higher-level journalism, yearbook, and moviemaking courses; the course is a prerequisite for underclassmen seeking to take Journalism II.

  • Advanced Journalism

    JOURNALISM II: Advanced Journalism

    Students in this class will be members of The Coat of Arms staff, publishing both print and online work. They are encouraged to pursue stories that interest them and engage their audience. The staff of The Coat of Arms is responsible for attracting and keeping an audience of their peers, exploring new ideas and directions all the time and using data analysis to help determine what is effective. Yet this doesn’t mean student journalists will ignore the important role they play in a community, pursuing investigative journalism and informing their audience. The staff is challenged to continually build their communication skills in written, photo and video media. The Coat of Arms is a student-driven publication, and it’s ultimately what the students on the staff make it. (Note: Journalism II and Journalism III meet together, in the same room at the same time.)

    Prerequisite:  completion of Journalism I or rising junior/ senior standing.

  • Journalism Leadership

    JOURNALISM III: Journalism Leadership

    Journalism Leadership (III) is only for CoA editors/leaders. Such students get a unique leadership experience. They steer the print and online editions of The Coat of Arms, and they must manage their peers on the staff as well. Because of this, students are graded not only on the content they contribute to CoA but also on how well they perform as leaders and managers. Leadership coaching is provided to help them develop and hone these skills. (Note: Journalism II and Journalism III meet together, in the same room at the same time.)

    Honors Option

    Students in Journalism Leadership may apply to take the course for honors credit. They must submit a proposal to the teacher by early March. The proposal should explain a major project that the applicant will complete during the upcoming  school year. Options are open-ended; some possible examples include an original long-form article, a series of articles on a topic, a major video story, a marketing program (planned and executed), etc. Each project must involve substantial amount of work over time and be high in quality. The proposal will be reviewed by a panel of teachers.

    Prerequisite: Journalism II & permission of the instructor.

  • Post AP CS W/ Data Structures & Algorithms(H)

    This course uses the AP subset of the Java programming language to teach the elements of data structures and algorithm design while aiming to make each student a competent programmer. Extensive discussion of linked lists, binary trees, and other topics in elementary data structures are included. We also study classical algorithms for sorting and searching. At the end of the course, students should be able to design and implement a medium-sized program, code in a well-structured fashion, and decompose problems into manageable modules. Students are prepared to take the Advanced Placement exam. This course is intended as a follow-up course for students who have done well in Introduction to Computer Programming or an equivalent class taken elsewhere. Our experience is that very strong mathematics students (those concurrently taking Pre-Calculus Honors or AP Calculus BC) are able to jump directly into this class with the help of the optional “computer camp” we offer each summer during the week before the start of the school year. Each student is expected to bring his or her laptop to class every day. Menlo may help students acquire laptops where necessary.

    Prerequisites: Earn an A- or better in the Intro to Computer Programming course or be concurrently enrolled in Pre-Calculus Honors or AP Calculus BC or get permission of instructor (email Ms. Chou).