CS50: Computer Science Courses and Programs from Harvard
Whether you're interested in pursuing a career in computer science or simply want to better understand the technology we use every day, HarvardX CS50 courses can help. Learn the fundamentals, specific programming languages, and more on edX.
What is a CS50 program?
Computer Science 50, or CS50, is an introductory computer science program created by Harvard University.
Geared toward students of all backgrounds, CS50 courses and professional certificate programs by HarvardX on edX guide students through the basics of technology and into software engineering, algorithms, data structures, programming languages, and more. In the process, learners also sharpen critical thinking and methodical problem-solving skills.
HarvardX's courses and professional certificate programs on edX include Introduction to Computer Science, Introduction to Programming with Python, Computer Science for Artificial Intelligence, Mobile App Development with React Native, and more.
Course durations range from 5-12 weeks, while professional certificate programs average 5-6 months. However, these courses are self-paced, so your timeline may differ depending on your study schedule.
Learners can audit any HarvardX CS50 course on edX for free. The cost of a certificate ranges from $219 to $299. Professional certificate programs cost between $376 and $519. High school students can earn AP credit with HarvardX's CS50 AP Computer Science Principles XSeries program for $466.20. Prices may vary based on available discounts.
Why take CS50 courses?
You don't need prior experience to get started with HarvardX CS50 — in fact, the program is designed for students of all levels. Regardless of your prior computer science knowledge, CS50 courses can help you gain a solid grasp of computer science essentials, including popular programming languages, algorithms, and data structures.
Introduction to Computer Science (CS50x), the typical entry point for most learners, covers the fundamentals using real-world examples, such as gaming and finance, for practice problem sets.
Learners can also take courses in specific programming languages, including Python, JavaScript, R and RStudio, and Scratch. CS50 also includes courses in mobile app development, cybersecurity, and understanding computer science applications within business (CS50B) and law (CS50L).
These courses emphasize computational thinking, a widely applicable skill that improves methodical decision-making. For those interested in pursuing a career in computer science — whether as a data scientist, analyst, programmer, or software engineer — CS50 courses provide a sturdy foundation for further study.
Some courses are only offered annually or quarterly, so be sure to check program availability prior to enrolling.
Top CS50 courses
Course | Course description | Length | Instructor | Prerequisites | Difficulty Level |
---|---|---|---|---|---|
CS50x | Introduction to Computer Science | 12 weeks | Doug Lloyd, David J. Malan, Brian Yu | None | Introductory |
CS50P | Introduction to Programming with Python | 10 weeks | David J. Malan | None | Introductory |
CS50R | Introduction to Programming with R | 7 weeks | David J. Malan, Carter Zenke | None | Introductory |
CS50S | Introduction to Programming with Scratch | 3 weeks | David J. Malan, Brian Yu | None | Introductory |
CS50SQL | Introduction to Databases with SQL | 7 weeks | David J. Malan, Carter Zenke | None | Introductory |
CS50L | Computer Science for Lawyers (and law students) | 10 weeks | Doug Lloyd, David J. Malan | None | Introductory |
CS50B | Computer Science for Business Professionals | 6 weeks | David J. Malan | None | Introductory |
CS50 Cybersecurity | Introduction to Cybersecurity | 5 weeks | David J. Malan | None | Introductory |
CS50T | Understanding Technology | 6 weeks | David J. Malan | None | Introductory |
CS50AI | Introduction to Artificial Intelligence with Python | 7 weeks | David J. Malan, Brian Yu | CS50 or prior programming experience in Python | Introductory |
CS50W | Web Programming with JavaScript | 12 weeks | David J. Malan, Brian Yu | CS50 or prior programming experience (any language) | Intermediate |
CS50 Programs
CS50 Courses
Online computer science curriculum
HarvardX CS50 courses cover the essentials of computer science, such as programming languages and mobile app development. Topics, theories, and skills you can learn include:
- Abstraction
- Algorithms
- Application programming interfaces (APIs)
- Artificial intelligence (AI)
- Cascading Style Sheets (CSS)
- Cloud computing and services
- Computer science
- Computational thinking
- Cryptography
- Database design
- Data structures
- Django (web framework)
- Forensic sciences
- GitHub
- HyperText Markup Language (HTML)
- Web development
Programming languages include:
- C
- JavaScript
- Python
- R
- SQL
Additional topics for CS50 students
- Data science
- Resource management
- Scalability
- Cybersecurity
- Algorithmic thinking
Jobs for computer science graduates
The median annual wage for computer and information technology professionals in 2023 was $104,420, according to the Bureau of Labor Statistics (BLS). Below, you'll find a list of popular jobs for computer science graduates alongside BLS education requirements, 2023 salary information, and job growth projections.
Computer hardware engineer
- Entry-level education: Bachelor's degree
- Median annual salary:$138,080
- Projected job growth (2023-33): 7%
Computer and information research scientist
- Entry-level education: Master's degree
- Median annual salary:$145,080
- Projected job growth (2023-33): 26%
Computer network architect
- Entry-level education: Bachelor's degree
- Median annual salary:$129,840
- Projected job growth (2023-33): 13%
Computer support specialist
- Entry-level education: Computer knowledge, degree not necessarily required
- Median annual salary:$60,810
- Projected job growth (2023-33): 6%
Database administrator or architect
- Entry-level education: Bachelor's degree
- Median annual salary:$117,450
- Projected job growth (2023-33): 9%
Data scientist
- Entry-level education: Bachelor's degree
- Median annual salary:$108,020
- Projected job growth (2023-33): 36%
Software developer
- Entry-level education: Bachelor's degree
- Median annual salary:$132,270
- Projected job growth (2023-33): 18%
Web developer or digital designer
- Entry-level education: Bachelor's degree
- Median annual salary:$92,750
- Projected job growth (2023-33): 8%