Language Updates

by David J. Malan
In anticipation of fall semester, cli50 and CS50 IDE have been updated with some updated language support! Java 16.0.2 Node 16.2.2 Python 3.9.6 Ruby 2.7.4

Changes to check50, submit50 Authentication

by David J. Malan
Tools like check50 and submit50 rely on git, a popular tool for saving different versions of code, and GitHub, a popular website for saving those versions in the cloud. To push (i.e., save) your code to GitHub using git, it used to be

Linking to Chapters

by David J. Malan
So that teachers (and we!) can link to specific chapters within CS50's videos, the links in the Chapters menu now include not only start parameters but also end parameters as well. That way, if you control- or right-click on a chapter...

Snacks for Lectures

by David J. Malan
A tradition in CS50 is to serve cake (or cupcakes) after the course's first lecture. And that tradition has since evolved into snacks in the middle of every lecture. Of course, those snacks don't readily translate to video, and such...

UI Improvements for CS50 Video Player

by David J. Malan
CS50's video player, a web app at that synchronizes instructional videos with screen recordings, is now all the more responsive, particularly when embedded in a course's website: The "Keyboard" in "Keyboard Shortcuts" has...

Docs for CS50's Dining API Have Moved

by David J. Malan
Documentation for CS50's Dining API, which provides Harvard students with programmatic access via HTTP to data from Harvard University Dining Services, has been integrated to, where CS50's other documentation lives...

Theme for CS50's Docs Updated

by David J. Malan
The theme for CS50's documentation at has been updated to the latest version of sphinxrtdtheme. The UI is largely the same, though we've tweaked a few aesthetics. Most compelling, though, the latest version of the...