CS50

{{Short description|Computer science course}}

{{For|the sailboat|CS 50}}

{{Use mdy dates|date=September 2024}}

CS50 (Computer Science 50){{Efn|Occasionally subtitled Intensive Introduction to Computer Science,{{Cite web |title=CSCI E-50: Intensive Introduction to Computer Science |url=https://courses.dce.harvard.edu/?keyword=csci%20e-50&srcdb=999925 |publisher=Harvard Extension School |via=Harvard Division of Continuing Education |access-date=September 22, 2024}}{{Cite web |title=CSCI S-50: Intensive Introduction to Computer Science |url=https://courses.dce.harvard.edu/?details&srcdb=202403&crn=34745 |publisher=Harvard Summer School |via=Harvard Division of Continuing Education |access-date=September 22, 2024}} Introduction to Computer Science I,{{Cite web |last=Malan |first=David J. |author-link=David J. Malan |title=CMU: COMPUTER SCIENCE 50 |url=https://cs.harvard.edu/malan/publications/CMU.pdf |access-date=September 22, 2024}}{{Cite web |last=Bolotnikova |first=Marina N. |date=May–June 2016 |title=David Malan's Computer Science 50 expands to high-school classrooms |url=https://www.harvardmagazine.com/2016/04/cs50-expanding-global-reach |access-date=September 22, 2024 |website=Harvard Magazine |language=en}} or simply Introduction to Computer Science.{{Cite web |title=CS50: Introduction to Computer Science |url=https://pll.harvard.edu/course/cs50-introduction-computer-science |access-date=September 22, 2024 |website=Professional and Lifelong Learning |publisher=Harvard University}}{{Cite web |title=CS50: Introduction to Computer Science |url=https://www.harvardonline.harvard.edu/course/cs50-introduction-computer-science |access-date=September 22, 2024 |website=Harvard Online |publisher=Harvard University}}}} is an introductory course on computer science taught at Harvard University by David J. Malan. The on-campus version of the course is Harvard's largest class with 800 students, 102 staff, and up to 2,200 participants in their regular hackathons.{{Cite web |last=Farrell |first=Michael B. |date=November 26, 2013 |title=Computer science course fills seats, needs at Harvard |url=https://www.bostonglobe.com/business/2013/11/26/computer-science-course-breaks-stereotypes-and-fills-halls-harvard/7XAXko7O392DiO1nAhp7dL/story.html |access-date=September 22, 2024 |website=The Boston Globe |language=en-US}}{{Cite news |last=Pappano |first=Laura |date=April 8, 2014 |title=10 Courses With a Twist |url=http://www.nytimes.com/2014/04/13/education/edlife/10-courses-with-a-twist.html?_r=0 |access-date=September 22, 2024 |work=The New York Times}} The course was first offered on campus in 1989,{{Cite web |last=Mendez |first=Cordelia F. |date=September 18, 2014 |title=This Is CS50. |url=https://www.thecrimson.com/article/2014/9/18/this-is-cs50/ |access-date=September 22, 2024 |website=The Harvard Crimson}} and Malan has been the course's instructor since 2007.{{Cite web |last=Mete |first=Thomas J. |date=May 31, 2024 |title='CS50 Changed My Life': 25 Years After Shuttleboy, David J. Malan '99 Reflects on Path to Teaching |url=https://www.thecrimson.com/article/2024/5/31/david-malan-profile-reunion/#:~:text=CS50,%E2%80%9D%20David%20J.,since%20with%20his%20signature%20line. |access-date=September 22, 2024 |website=The Harvard Crimson}} Notable industry experts including Mark Zuckerberg and Steve Ballmer have given guest lectures.{{Cite web |last=Smith |first=Michael D. |date=April 4, 2014 |orig-date=December 7, 2005 |title=CS50 Lecture by Mark Zuckerberg |url=https://www.youtube.com/watch?v=xFFs9UgOAlE |access-date=September 22, 2024 |publisher=CS50 |via=YouTube}}{{Cite web |last=Malan |first=David J. |date=November 13, 2014 |orig-date=November 12, 2014 |title=CS50 Lecture by Steve Ballmer |url=https://www.youtube.com/watch?v=7lhlKF6MECs |access-date=September 22, 2024 |publisher=CS50 |via=YouTube}}

An online version of the course, CS50x, is available through the platforms edX and OpenCourseWare and follows the same curriculum as the in-person format of the course.{{Cite web |last=Malan |first=David J. |date=March 8, 2023 |title=Difference Between CS50 and CS50x |url=https://www.youtube.com/watch?v=C70ax01aZ-I |access-date=September 22, 2024 |publisher=CS50 |via=YouTube}} All CS50x course materials are free and there is no fee to complete the course, though various verified certificates are available for a fee.{{Cite web |last=Malan |first=David J. |title=FAQs |url=https://cs50.harvard.edu/x/2024/faqs/ |access-date=September 22, 2024 |website= |publisher=CS50x 2024 |language=en-us}} {{As of|2024|post=,}} CS50x teaches the languages C, Python, SQL, HTML, CSS, and JavaScript. It also teaches fundamental computer science concepts including data structures and the Flask framework.{{Cite web |last=Malan |first=David J. |title=Welcome |url=https://cs50.harvard.edu/x/2024/ |access-date=September 22, 2024 |publisher=CS50x 2024 |language=en-us}} New content is added to the course each year; additional lectures on cybersecurity and emoji were added for 2022.{{Cite web |last=Malan |first=David J. |title=What's new for 2022? |url=https://cs50.harvard.edu/x/2022/new/ |access-date=September 22, 2024 |publisher=CS50x 2022 |language=en-us}} Another adapted version of the course, CS50 AP, is designed for high school students and completes the required curriculum of AP Computer Science Principles.{{Cite web |last=Malan |first=David J. |title=Hello, world! |url=https://cs50.harvard.edu/ap/2025/ |access-date=2024-09-22 |publisher=CS50 AP |language=en-us}}

History

CS50 was first available in 1989. Michael D. Smith was the professor of the course from 2002 to 2006,{{Cite web |title=Michael D. Smith |url=https://scholar.harvard.edu/mikesmith |access-date=2024-09-22 |publisher=Harvard University |language=en}} after which point David J. Malan has been the primary professor. Margo Seltzer,{{Cite web |last=Seltzer |first=Margo |title=Teaching |url=https://www.seltzer.com/margo/teaching/ |access-date=2024-09-22 |website= |publisher=Margo Seltzer |language=en}} Brian Yu,{{Cite web |last=Yu |first=Brian |title=Teaching |url=https://brianyu.me/teaching |access-date=2024-09-22 |website= |publisher=Brian Yu}} and Doug Lloyd{{Cite web |last=Lloyd |first=Doug |title=Doug Lloyd |url=https://douglloyd.com/ |access-date=2024-09-22 |publisher=Doug Lloyd}} have also taught the course. Guest lecturers have included Mark Zuckerberg (2005) and Steve Ballmer (2014).

Yale University began offering the course in 2015, becoming the second institution to teach an official version of the course. The course was offered experimentally for three years until it was added as a permanently-available course.{{Cite web |last=Schussheim |first=Emily |date=2018-02-23 |title=This is CS50: The Cult |url=https://yaledailynews.com/blog/2018/02/23/this-is-cs50-the-cult/ |access-date=2024-09-22 |website=Yale Daily News |language=en}} At Yale, CS50 is based on Malan's recorded lectures, which are then supplemented by in-person class sections and office hours, all in New Haven.{{Cite web |last=Bernhard |first=Meg P. |date=November 26, 2014 |title=Harvard Approves Joint Yale CS50 Venture, Malan Says |url=https://www.thecrimson.com/article/2014/11/26/cs50-yale-harvard-approves/ |access-date=2024-09-22 |website=The Harvard Crimson}}{{Cite web |last1=Kukulowicz |first1=Caitlyn C. |last2=Yu |first2=Andrew |date=September 13, 2024 |title=Harvard's CS50 Course to be Offered at Oxford this Fall |url=https://www.thecrimson.com/article/2024/9/13/cs50-oxford-fall-malan/ |access-date=2024-09-22 |website=The Harvard Crimson}}{{Cite web |title=FAQs |url=https://cs50.yale.edu/2024/fall/faqs/ |access-date=2024-09-22 |website=CS50 |publisher=Yale University |language=en-us}} The University of Oxford is the third university to offer the course; it is available as an online course through their Department for Continuing Education.{{Cite web |title=CS50: An Introduction to Computer Science |url=https://conted.ox.ac.uk/courses/introduction-to-computer-science-cs50 |access-date=2024-09-22 |website=Department for Continuing Education |publisher=University of Oxford |language=en}}

In 2016, CS50's lecture schedule changed so that students would only have to attend two in-person lectures during the semester. Instead, lectures are now primarily delivered online.{{Cite web |last=Fahs |first=C. Ramsey |date=August 31, 2016 |title=CS50 Moves Away from Traditional Lectures, Toward Virtual Reality |url=https://www.thecrimson.com/article/2016/8/31/CS50-moves-from-lectures/ |access-date=2024-09-22 |website=The Harvard Crimson}} In 2023, an AI-powered teaching assistant was introduced to the course.{{Cite web |last=Raab |first=Ben |date=2023-09-07 |title=CS50 introduces AI teaching assistant |url=https://yaledailynews.com/blog/2023/09/07/yale-to-integrate-artificial-intelligence-into-introductory-computer-science-course/ |access-date=2024-09-22 |website=Yale Daily News |language=en}}

Course progression

CS32 (Computational Thinking and Problem Solving), taught by Michael D. Smith,{{Cite web |last=Smith |first=Michael D. |title=CS 32: Computational Thinking and Problem Solving |url=https://scholar.harvard.edu/mikesmith/classes/cs-32-computational-thinking-and-problem-solving |access-date=2024-09-23 |publisher=Harvard University |language=en}} is an alternative to CS50 but does not have a free online version.{{Cite web |title=Harvard CS Concentration: First-Year Exploration |url=https://csadvising.seas.harvard.edu/firstyear/ |access-date=2024-09-23 |publisher=Harvard University}} The next course in sequence after CS32 or CS50 is CS51: Abstraction and Design in Computation, instructed by Stuart M. Shieber with Brian Yu as co-instructor.{{Cite web |last=Shieber |first=Stuart M. |title=Home |url=https://cs51.io/ |access-date=2024-09-23 |publisher=Abstraction and Design in Computation |language=en}} CS50 is primarily offered every fall semester, with CS51 being offered every spring semester.{{Cite web |title=Harvard CS Concentration: Courses |url=https://csadvising.seas.harvard.edu/concentration/courses/ |access-date=2024-09-23 |publisher=Harvard University}}{{Cite web |title=4 Year Plan |url=https://info.seas.harvard.edu/courses/four-year-plan |access-date=2024-09-23 |publisher=Harvard University}}

CS50x

CS50x is a massive online open course and "one of the most popular MOOCs in the world."{{Cite web |title=CS50: Introduction to Computer Science |url=https://digital-skills-jobs.europa.eu/en/opportunities/training/cs50-introduction-computer-science |access-date=2024-09-22 |website=Digital Skills & Jobs Platform |publisher=europa.eu |language=en}} CS50 first opened to online students in 2007,{{Cite web |last=Thomas-Oxtoby |first=Sarah |date=June 14, 2023 |title=Nearly 5 million people have taken this online course—here's how it can kickstart your computer science career |url=https://fortune.com/education/articles/nearly-5-million-people-have-taken-this-online-course-heres-how-it-can-kickstart-your-computer-science-career/ |access-date=2024-09-22 |website=Fortune |language=en}} but the CS50x course officially launched in 2012 as a course on edX.{{Cite web |last1=Rouse |first1=Hana N. |last2=Worland |first2=Justin C. |date=October 16, 2012 |title=First Day of School for Harvard Online |url=https://www.thecrimson.com/article/2012/10/16/edX-Harvard-classes-start/ |access-date=2024-09-22 |website=The Harvard Crimson}} The course content can also be taken through OpenCourseWare for those not seeking a verified certificate. In its inaugural year, over 50 thousand students enrolled;{{Cite web |date=November–December 2012 |title=Harvard launches first edX courses |url=https://www.harvardmagazine.com/2012/10/classroom-in-the-cloud |access-date=2024-09-22 |website=Harvard Magazine |language=en}} in the years since, it has become the largest MOOC on the edX platform.{{Cite web |title=David J. Malan |url=https://extension.harvard.edu/faculty/david-j-malan/ |access-date=2024-09-22 |website= |publisher=Harvard Extension School |language=en-us}} In 2016, it was reported that around 700 thousand students were enrolled in CS50x.{{Cite web |last=Bolotnikova |first=Marina N. |date=May–June 2016 |title=David Malan's Computer Science 50 expands to high-school classrooms |url=https://www.harvardmagazine.com/2016/04/cs50-expanding-global-reach |access-date=September 22, 2024 |website=Harvard Magazine |language=en}} In 2018, a freeCodeCamp article crowned CS50x as "the best MOOC."{{Cite web |last=Brunet |first=Jérémy |date=2018-08-30 |title=And the award for the best MOOC goes to…? |url=https://www.freecodecamp.org/news/and-the-award-for-the-best-mooc-goes-to-308604e5bf2a/ |access-date=2024-09-22 |website=freeCodeCamp |language=en}}

= Format =

There are 11 weeks of material in the CS50x course. Recordings of the on-campus lectures are created and uploaded to multiple platforms, including YouTube, Apple TV, and Google TV (one lecture per week). Additional recommended "section" and "shorts" videos are available, as well as "walkthrough" videos within the problem sets. After each week's material, the student submits a problem set, which automatically receives a calculated grade. At the end of the course, the student must submit a final project to complete the course or receive a verified certificate.{{Cite web |last=Malan |first=David J. |title=Syllabus |url=https://cs50.harvard.edu/x/2024/syllabus/ |access-date=2024-09-22 |publisher=CS50x 2024 |language=en-us}}

= Other CS50 courses =

There are a variety of other CS50 courses available on edX and OpenCourseWare {{As of|2024|lc=y}},{{Cite web |title=CS50: Computer Science Courses and Programs from Harvard |url=https://www.edx.org/cs50 |access-date=2024-09-22 |website= |publisher=edX |language=en}}{{Cite web |last=Malan |first=David J. |title=Courses |url=https://cs50.harvard.edu/x/2024/courses/ |access-date=2024-09-22 |publisher=CS50x 2024 |language=en-us}} including courses on Python, R, and SQL, as well as CS50 AI and CS50 Web, with focuses on artificial intelligence and web applications, respectively.

Notes

{{Notelist}}

References

{{reflist}}

Further reading

  • {{Cite web |last=Averbuch |first=Maya |date=2015-09-18 |title=Yale students greet Harvard's CS50 in "educational experiment" |url=https://www.harvardmagazine.com/2015/09/cs50-comes-to-yale |access-date=2024-09-22 |website=Harvard Magazine |language=en}}
  • {{Cite web |last=Kates |first=Hannah |date=2014-11-21 |title=This is (Yale) CS50. |url=https://harvardindependent.com/this-is-yale-cs50/ |access-date=2024-09-22 |website=Harvard Independent |language=en-US}}
  • {{Cite web |last=Wexler |first=Stephanie P. |date=February 2, 1994 |title=COMPUTER SCIENCE 50 |url=https://www.thecrimson.com/article/1994/2/2/computer-science-50-pfor-his-first/ |access-date=2024-09-22 |website=The Harvard Crimson}}
  • {{Cite web |last=Zhang |first=Sarah |date=2011-02-22 |title=An undergraduate tries a hard and unfamiliar computer course. |url=https://www.harvardmagazine.com/2011/02/the-frisson-of-friction |access-date=2024-09-22 |website=Harvard Magazine |language=en}}

Complete List of CS50 Courses

  • CS50x: CS50's Introduction to Computer Science | [https://www.edx.org/learn/computer-science/harvard-university-cs50-s-introduction-to-computer-science edX] | [https://cs50.harvard.edu/x/ OpenCourseWare]
  • CS50 AI: CS50's Introduction to Artificial Intelligence with Python | [https://www.edx.org/learn/artificial-intelligence/harvard-university-cs50-s-introduction-to-artificial-intelligence-with-python edX] | [https://cs50.harvard.edu/ai/ OpenCourseWare]
  • CS50 Business: CS50's Computer Science for Business Professionals | [https://www.edx.org/learn/computer-science/harvard-university-cs50-s-computer-science-for-business-professionals edX] | [https://cs50.harvard.edu/business OpenCourseWare]
  • CS50 Cybersecurity: CS50's Introduction to Cybersecurity | [https://www.edx.org/learn/cybersecurity/harvard-university-cs50-s-introduction-to-cybersecurity edX] | [https://cs50.harvard.edu/cybersecurity OpenCourseWare]
  • CS50 for Lawyers: CS50's Computer Science for Lawyers | [https://www.edx.org/learn/computer-science/harvard-university-cs50-s-computer-science-for-lawyers edX] | [https://cs50.harvard.edu/law OpenCourseWare]
  • CS50 Python: CS50's Introduction to Programming with Python | [https://www.edx.org/learn/python/harvard-university-cs50-s-introduction-to-programming-with-python edX] | [https://cs50.harvard.edu/python/ OpenCourseWare]
  • CS50 R: CS50's Introduction to Programming with R | [https://www.edx.org/learn/r-programming/harvard-university-cs50-s-introduction-to-programming-with-r edX] | [https://cs50.harvard.edu/r OpenCourseWare]
  • CS50 Scratch: CS50's Introduction to Programming with Scratch | [https://www.edx.org/learn/scratch-programming/harvard-university-cs50-s-introduction-to-programming-with-scratch edX] | [https://cs50.harvard.edu/scratch OpenCourseWare]
  • CS50 SQL: CS50's Introduction to Databases with SQL | [https://www.edx.org/learn/sql/harvard-university-cs50-s-introduction-to-databases-with-sql edX] | [https://cs50.harvard.edu/sql OpenCourseWare]
  • CS50 Web: CS50's Web Programming with Python and JavaScript | [https://www.edx.org/learn/web-development/harvard-university-cs50-s-web-programming-with-python-and-javascript edX] | [https://cs50.harvard.edu/web OpenCourseWare]

Category:1989 establishments in the United States

Category:Computer science education

Category:Lecture series at Harvard University

Category:Yale University

Category:Lecture series at the University of Oxford

Category:University and college lecture series