Learn fundamental computer science concepts and programming skills in this comprehensive Harvard course for high school students.
Learn fundamental computer science concepts and programming skills in this comprehensive Harvard course for high school students.
CS50 AP is Harvard University's introduction to computer science and programming, designed for high school students and aligned with the College Board's AP CS Principles curriculum. Taught by David J. Malan, this course covers a wide range of topics including abstraction, algorithms, data structures, encapsulation, resource management, security, software engineering, and web development. Students will gain proficiency in multiple programming languages such as C, PHP, JavaScript, SQL, CSS, and HTML. The course emphasizes algorithmic thinking and efficient problem-solving through hands-on programming assignments inspired by real-world domains like biology, cryptography, finance, forensics, and gaming. By the end of the course, students will have developed a broad understanding of computer science principles and practical programming skills, preparing them for the AP exam and future studies in the field.
Instructors:
English
English
What you'll learn
Develop a broad understanding of computer science and programming principles
Master algorithmic thinking and efficient problem-solving techniques
Gain proficiency in multiple programming languages (C, PHP, JavaScript, SQL, CSS, HTML)
Understand key concepts like abstraction, data structures, and encapsulation
Explore real-world applications of computer science in various domains
Learn the fundamentals of web development and software engineering
Skills you'll gain
This course includes:
PreRecorded video
Graded assignments, exams
Access on Mobile, Tablet, Desktop
Limited Access access
Shareable certificate
Closed caption
Get a Completion Certificate
Share your certificate with prospective employers and your professional network on LinkedIn.
Created by
Provided by

Top companies offer this course to their employees
Top companies provide this course to enhance their employees' skills, ensuring they excel in handling complex projects and drive organizational success.





Module Description
CS50 AP offers a comprehensive introduction to computer science and programming, covering a wide range of topics from basic concepts to advanced applications. The curriculum includes abstraction, algorithms, data structures, encapsulation, resource management, security, and software engineering. Students learn multiple programming languages including C, PHP, JavaScript, SQL, CSS, and HTML. The course emphasizes practical application through problem sets inspired by real-world domains such as biology, cryptography, finance, forensics, and gaming. It also covers web development, providing a well-rounded foundation in both front-end and back-end technologies. The course structure includes lectures, hands-on programming assignments, and a final project, fostering both theoretical understanding and practical skills development.
Fee Structure
Instructors

25 Courses
David J. Malan: Pioneering Computer Science Education at Harvard and Beyond
David J. Malan is a prominent figure in computer science education, serving as the Gordon McKay Professor of the Practice of Computer Science at Harvard University. He is best known for teaching CS50, Harvard's introductory computer science course, which has become one of the university's largest and most popular offerings. Malan's teaching extends beyond Harvard, as CS50 is also taught at Yale University and is available as a massive open online course (MOOC) on edX, attracting millions of learners worldwide. His expertise spans various areas of computer science, including cybersecurity, digital forensics, and computer science education. Malan's journey in computer science began as a student at Harvard, where he initially studied government before discovering his passion for programming through CS50. He went on to earn his bachelor's, master's, and doctoral degrees in computer science from Harvard. In addition to his work at Harvard's School of Engineering and Applied Sciences, Malan is a member of the Faculty of Education in the Graduate School of Education and teaches at Harvard Business School, Harvard Law School, Harvard Extension School, and Harvard Summer School. His innovative teaching methods, engaging lectures, and commitment to making computer science accessible to all have earned him recognition as a leading educator in the field.

16 Courses
Doug Lloyd: Harvard Computer Science Educator and CS50 Team Member
Doug Lloyd is a Senior Preceptor in Computer Science at Harvard University's Division of Continuing Education. He earned his A.B. in Computer Science from Harvard in 2009 and has since become an integral part of the CS50 team. Lloyd currently serves as CS50's Head of Online Education Initiatives, coordinating all thirteen CS50 courses on edX and acting as the Head Teaching Fellow for the program's courses at Harvard's Division of Continuing Education. His involvement with CS50 dates back to 2007 when he began as a teaching fellow. Lloyd has also taught his own courses, including web programming and software engineering, at various Harvard schools. Known for his distinctive style of wearing shorts and polo shirts, he has become a familiar face to many CS50 students both on-campus and online. Beyond his academic work, Lloyd is a licensed attorney, a private pilot, and has appeared on the game show Jeopardy
Testimonials
Testimonials and success stories are a testament to the quality of this program and its impact on your career and learning journey. Be the first to help others make an informed decision by sharing your review of the course.
Frequently asked questions
Below are some of the most commonly asked questions about this course. We aim to provide clear and concise answers to help you better understand the course content, structure, and any other relevant information. If you have any additional questions or if your question is not listed here, please don't hesitate to reach out to our support team for further assistance.