Computer Science

There’s more to Computer Science than ones and zeroes. At its heart is creative application of interdisciplinary understandings to solve problems or fill needs. Facebook is programming applied to enhance social connections. Angry Birds is the gamification of real-world physics. Everything in your digital world was programmed using Computer Science concepts. Come learn how to make that world even better.

If none of our Computer Science course offerings work for you, there are alternative ways to study Computer Science:

  • Riverdale has partnered with to offer students independent study for Riverdale credit in front-end web design, iOS, Rails, and Python programming. These options are for students who already have a strong background in technology and are willing to do a six-hour (approximately) commitment a week, on top of one's regular course load.
  • We offer a coding summer program through Project Knowmad.
  • We teach mini-courses on Raspberry Pi, web design, coding, robotics, and artificial intelligence.
  • Our co-curricular offerings include robotics clubs in the Middle and Upper Schools, and a programming club.

Elective: Ethics in Computer Science (fall semester)

Ethics in Computer Science

Technology enables us to do things we never could do before, but are they things that we should do? This elective, fall semester course will examine the ethical issues surrounding the use of computers and technology in the past, today, and in the future. It will investigate the ways in which computer science and technology challenge ethical, social, and governmental boundaries. It will also investigate the extent to which the impact of technology on culture and lifestyle is beneficial.

Note: This course is open to any grade level. No prior Computer Science experience is necessary and there are no prerequisites. However, this course does not qualify students to take a Level II or III Computer Science course.

Level I: Computer Science (yearlong)

Computer Science

There's more to Computer Science than ones and zeroes. This Level I yearlong course is an introduction to Computer Science terms, skills, and understandings, and is a foundation for future work in this discipline. In this class students will learn programming methodology, algorithm analysis, data structures, and abstraction to make amazing projects. The first quarter largely utilizes a graphical programming environment such as Scratch to allow for learning of fundamental computer science concepts such as variable and expressions, user interactivity, conditional statements, and looping constructs. In the following quarters, students will learn a text programming language such as Java, Processing, Python, or Swift. Using these languages students will explore concepts of object oriented programming such as classes, constructors, methods, and inheritance. Simple data structures such as arrays are also covered. Each unit will culminate with an application of learned Computer Science concepts.

Note: This course may be taken by students in any grade level. No prior Computer Science experience necessary.

Level I: Computer Science: Game Design (yearlong)

Computer Science: Game Design

This Level I yearlong course introduces students to the principles of game design and development as well as fundamentals of programming and Computer Science. Students will have the opportunity to create game content using the Unity Development Platform. Students will learn about elements of game design including user interaction, world and object creation, lighting, game physics, and scripting. Students will also learn to script for their game projects using the C# programming language. Throughout the course, students will design and build several games and projects in Unity in both 2D and 3D. Students will also explore producing content for virtual reality platforms.

Note: This course may be taken by students in any grade level. No prior Computer Science experience necessary.

Level I: Visual Coding (fall semester)

Visual Coding

The goal of this Level I, semesterlong course is to demonstrate some of the principles of visual arts using coding and programming. Many established artists have integrated software into their process. Processing (p5.js) provides the potential of software development within a broad range of the arts. Programming opens the possibility to create not only tools, but systems, environments, and new modes of expression. In Visual Coding will learn about art techniques in the physical medium, and then apply those techniques using programming. Topics include: composition, perspective drawing, working with line, shade, and texture, and color theory. Projects in this course apply the concepts learned in both a physical and digital medium; for instance, students will demonstrate an emotional concept using elements of visual art and coding.

Note: This course may be taken by students in any grade level. No prior Computer Science experience necessary.

Level I: Introduction to Web Design (spring semester)

Introduction to Web Design

Typically, this Level I, semesterlong course is preceded by Visual Coding. Students may enroll in just Web Design, but this course alone will not qualify them for Level II courses. This one-semester course introduces students to web design using HTML, CSS, and Javascript, the code languages that websites are built on. Learn the fundamentals of planning and designing websites according to proper design, layout, and accessibility. The course will provide students the opportunity to build a web portfolio by developing their own web projects that run in a browser. The course does not require previous programming experience.

Note: This course may be taken by students in any grade level. No prior Computer Science experience necessary.

Level II: Advanced Computer Science (yearlong)

Advanced Computer Science

Prerequisite: Two semesters of Level I experience or permission from the department.

This Level II, yearlong course will cover common ways to organize and store data in Computer Science, why those structures are important, and what projects can be created with those structures. Classes, lists, linked lists, stacks, and queues will all be covered early in the course. These topics will lead into algorithm efficiency and an introduction to Big O notation. Students will then learn recursive algorithms and searching through an introduction to Tree data structure and Hash Tables. Finally, students are introduced to sorting algorithms and graphs. After gaining an understanding of these fundamentals, students will have the opportunity to work on projects of their choosing.

Level II: Computer Science Advanced Lab (fall semester, spring semester, or yearlong)

Computer Science Advanced Lab

Prerequisite: Written topic proposal from student and successful completion of Level I Computer Science course. This course does not necessarily qualify students for a Level III course.

For students who have already taken a Level I Computer Science course and have demonstrated ability and interest in Computer Science, the Advanced Lab is a place to create projects of their own devising that require significant time and mentorship. Students and teachers will work together to determine projects, timetables, necessary resources, and learning plans specific to individual students. The year will culminate with a public presentation of student's work.

Level III: Artificial Intelligence (yearlong)

AI: Artificial Intelligence

Prerequisite: Advanced Computer Science or permission from the department.

What does it mean for a machine to think? From IBM's Jeopardy-winning computer, Watson, to their amazing chess-playing program, Deep Blue, it often seems like machines can be more intelligent than humans. In this Level III, yearlong course students will learn how to write programs that use Big Data to predict, strategize, reason, plan, and evolve. You may have written amazing programs before, but you've never written one that knows more than you do.

Capstone Developer Project (yearlong)

Capstone Developer Project

Prerequisite:  Written topic proposal from student. Recommended for seniors but may be taken by younger students.

Want to make the next hit game or social media platform? Thinking about pursuing Computer Science in college or beyond? You'll need to progress to higher levels of Computer Science abilities, become self-sufficient in your own Computer Science learning, and work collaboratively with other developers.

This yearlong, Level III course will expand Computer Science skills and understandings by applying them to real problems in authentic programming scenarios. Students will learn how to learn Computer Science with self-direction and self-sufficiency in order to learn languages and develop programming skills as they become necessary. Students will also learn to be excellent collaborators and communicators within teams that develop projects together.

Priority is given to creating meaningful and socially-relevant projects that the students might wish to continue pursuing after graduation from Riverdale. Possible areas of exploration include database and web development, game design, app or application design, virtualizations in 2D or 3D, and many others. You will also have the opportunity to work with area developers, programmers, and experts to help refine your product. The year culminates with a public presentation of the class's work.


Riverdale Country School

Mind • Character • Community



Lower School
1 Spaulding Lane
Bronx, NY 10471
LS: (718) 549-7780

Middle/Upper School
5250 Fieldston Road
Bronx, NY 10471
MS/US: (718) 549-8810

Contact Us

Quick Links

Riverdale teaches students to become lifelong learners by fostering "growth" mindsets. Go There ><

Quick Links

The River Campus offers a spacious, natural setting for our youngest students, inspiring learning and play. Go There >

Riverdale offers "STEAM" (science, technology, engineering, arts, and mathematics) teaching to Lower School students. Go There >

Quick Links

Middle School students explore hands-on learning through the Riverdale Maker program. Go There >

Project Knowmad allows Middle Schoolers to learn in a different way, using NYC as their classroom. Go There >

Quick Links

Riverdale teaches students to make connections through our interdisciplinary programs. Go There >

The club and activity program encourages students to explore their passions and try new things. Go There >

Quick Links

About 80 percent of Upper School students participate in athletics. Go There >

Riverdale's Hill Campus has an indoor pool, football stadium, weight room, and 3 playing fields. Go There >

Quick Links

Riverdale has entry points in Pre-K, Kindergarten, 6th, and 9th Grades. Visit our campus today. Go There >

Approximately 20 percent of Riverdale students receive some level of financial aid. Go There >

Quick Links

Last year's Annual Fund totaled nearly $5 million in gifts from alumni, parents, and friends of the school. Go There >

Have you included Riverdale in your estate plans? Please let us know and join our expanding group of Hackett Planned Giving Society members today. Go There >

powered by finalsite