Technology continues to be a large and growing part of our world. Many industries, including healthcare, the military, and even the economy, integrate the use of computer science and innovation to help improve our society. It is imperative that education prepares students for the future computational and information-driven world. A variety of courses in computer science and innovation are offered at Randolph-Macon Academy which focus on the following goals:

  • Computational Literacy for All Students: All students, regardless of their intended career path, are required to take at least one Computer Science course to ensure computational literacy for all graduates.
  • Promote Computational Thinking: Computational Thinking skills are integrated throughout the curriculum to help students analyze and solve complex problems effectively.
  • Foster Innovation and Creativity: Students are encouraged to think creatively and develop innovative solutions through project-based learning and hands-on experiences.
  • Emphasize Ethical and Responsible Computing: All courses include activities that help educate students about ethical considerations and technology and promote responsible use of computer science knowledge and skills.
  • Provide Advanced Opportunities: Students who are interested in Computer Science and Innovation will be provided with advanced opportunities and activities that will encourage the development of exceptional computing skills and allow students to prepare for a career in technology.

Introduction to Computer Science:
Students explore how technology is created and used in today’s society. In addition to learning how to solve problems and create programs with core programming concepts, students will also explore questions such as “How does the Internet work?” and “What exactly is Machine Learning?”. This foundational course will help students master core Computer Science concepts as they learn more about the technology they use every day.

Advanced Programming with Python:
Students who have already been exposed to the fundamentals of programming will expand their skills in this advanced course that uses the Python programming language. After a quick review of core concepts such as loops and conditional statements, students will learn how to utilize data structures, including lists and dictionaries, create their own data types using classes and object-oriented programming, and apply programming skills to solve real-world problems. Prerequisite: A- or higher in Introduction to Computer Science or teacher recommendation.

Cybersecurity is a year-long course that provides a macro overview detailing the major knowledge and functions needed to prevent, mitigate, and secure networks from system attacks. The course covers internal hardware, network devices, and network settings involved in network security. Using the OSI model, students learn how to each layer functions and the various attack methods used to infiltrate a network. The course covers resources used in each layer including cryptography, network standards and protocols, data management, and mitigation strategies to keep data secure. Students also learn about world-wide legal requirements associated with data protection. Labs are used to provide hands-on activities to deepen lesson understanding.

App Development/Machine Learning & Cloud Computer:
In the first semester, students with a mastery of core programming concepts can take their skills a step further as they design and develop a mobile (iOS) or web application. This project-based course will allow students to experience full-stack development as they learn how to manage a database, design and implement a user interface, and finally, deploy a completed product. In the second semester, utilizing AWS Academy, students will master foundational cloud computing skills before exploring the topic of Machine Learning. Each student will label, build, train, and deploy a successful Machine Learning model that can be used to solve a problem or contribute to their community. This is an advanced course that will require students to demonstrate excellent problem-solving skills, self-motivation, and a natural curiosity for all things tech. Prerequisites: Successful completion of Advanced Programming with Python or teacher recommendation. Offered every other year starting in 2024-2025.

Engineering Applications/Robotics:
In the first semester, students will begin to explore engineering concepts and tools in this course which emphasizes the engineering design process. Throughout the semester, students will learn how to create and print 3D designs, design, create, and program electronics, and create projects with the Glowforge laser cutter. As a cumulative project, students will be asked to design and prototype a product that will utilize multiple skills and tools they mastered throughout the course. In this second-semester project-based course, students will not be provided with pre-determined parts of instructions on how to build a robot. Instead, students will choose a problem they want to solve within their community and work to design, prototype, build, and program a robot as a solution. Students will utilize research, teamwork, and communication skills in addition to using 3D modeling software, a programming language, and electronic components to successfully bring their vision to life. Prerequisites: Successful completion of Introduction to Computer Science.
Offered every other year starting in 2025-2026