CS50
   HOME

TheInfoList



OR:

CS50 (Computer Science 50) is an on-campus and online introductory course on computer science taught at Harvard University and Yale University. In 2016, CS50 became available to high school students as an
Advanced Placement Computer Science In the United States, Advanced Placement Computer Science (commonly shortened to AP Comp Sci) is a suite of Advanced Placement courses and examinations covering areas of computer science. They are offered by the College Board to high school studen ...
course. The on-campus version is Harvard's largest class with 800 students, 102 staff and up to 2,200 participants in their regular
hackathon A hackathon (also known as a hack day, hackfest, datathon or codefest; a portmanteau of hacking and marathon) is an event where people engage in rapid and collaborative engineering over a relatively short period of time such as 24 or 48 hours. Th ...
s. The course material is available online for free on the EdX platform, with a range of certificates available for a fee. this online version, called CS50x, teaches the languages C, Python, SQL, HTML,
CSS Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation of a document written in a markup language such as HTML or XML (including XML dialects such as SVG, MathML or XHTML). CSS is a cornerstone techno ...
, and JavaScript. It also teaches fundamental computer-science concepts including arrays and
data structure In computer science, a data structure is a data organization, management, and storage format that is usually chosen for efficient access to data. More precisely, a data structure is a collection of data values, the relationships among them, a ...
s, and the Flask web framework. The 2021 iteration of the course introduced three new additional lectures on computer security, artificial Intelligence, and the ethics of technology. The lead instructor is Harvard professor David Malan. Doug Lloyd and Brian Yu is also a former member of CS50 and was one of the lecturers. Facebook co-founder
Mark Zuckerberg Mark Elliot Zuckerberg (; born ) is an American business magnate, internet entrepreneur, and philanthropist. He is known for co-founding the social media website Facebook and its parent company Meta Platforms (formerly Facebook, Inc.), o ...
and former Microsoft Chief Executive Officer
Steve Ballmer Steven Anthony Ballmer (; March 24, 1956) is an American business magnate and investor who served as the chief executive officer of Microsoft from 2000 to 2014. He is the current owner of the Los Angeles Clippers of the National Basketball Associ ...
have given guest lectures. The CS50 course first appeared on-campus in 1989. Several follow-on programs exist, focusing on web programming, artificial intelligence, game development, and mobile apps.


Format

Lectures are recorded and uploaded to several services including
iTunes U The iTunes Store is a digital media store operated by Apple Inc. It opened on April 28, 2003, as a result of Steve Jobs' push to open a digital marketplace for music. As of April 2020, iTunes offered 60 million songs, 2.2 million apps, 25,00 ...
, EdX, and YouTube. Additional video "walkthroughs" are recorded with professors and volunteer students. Course questions, called problem sets, or "psets" for short, are available in both
PDF Portable Document Format (PDF), standardized as ISO 32000, is a file format developed by Adobe in 1992 to present documents, including text formatting and images, in a manner independent of application software, hardware, and operating systems. ...
and HTML format. Students can upload problem set answers, and some questions are graded by automation. Students can also use special software to check their code in the cloud. In 2016, CS50 became the first university course to offer students the possibility to watch all lectures entirely in virtual reality. In 2022, the course shifted from CS50 IDE to a web based version of
VS Code Visual Studio Code, also commonly referred to as VS Code, is a source-code editor made by Microsoft with the Electron Framework, for Windows, Linux and macOS. Features include support for debugging, syntax highlighting, intelligent code complet ...
based on GitHub codespaces and now the lectures are available in 4K HDR and SDR.


Follow-up courses

CS50 offers several follow up courses, including: * CS50 Computer Science for Web Programming - a more in-depth look at HTML,
CSS Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation of a document written in a markup language such as HTML or XML (including XML dialects such as SVG, MathML or XHTML). CSS is a cornerstone techno ...
, and JavaScript, as well as frameworks including Flask and Django. * CS50's Introduction to Artificial Intelligence with Python - covers search algorithms, machine learning, and artificial intelligence. * CS50's Introduction to Game Development - teaches the Unity and Löve 2D
game engine A game engine is a software framework primarily designed for the development of video games and generally includes relevant libraries and support programs. The "engine" terminology is similar to the term "software engine" used in the software i ...
s, as well as 2D and 3D game principles.


Beginner courses

CS50 also provides courses for people who are new to programming or who want to understand more about technology. * CS50's Introduction to Programming with Scratch - an introduction to programming using Scratch, a
visual programming language In computing, a visual programming language (visual programming system, VPL, or, VPS) is any programming language that lets users create programs by manipulating program elements ''graphically'' rather than by specifying them ''textually''. A VP ...
with which aspiring programmers can write code by dragging and dropping graphical blocks * CS50's Understanding Technology - covers basic technology concepts, such as
computer hardware Computer hardware includes the physical parts of a computer, such as the computer case, case, central processing unit (CPU), Random-access memory, random access memory (RAM), Computer monitor, monitor, Computer mouse, mouse, Computer keyboard, ...
, the Internet, and multimedia. * CS50's Introduction to Computer Science for lawyers.


References


External links

* {{Official website Harvard University Yale University Computer science education