
CS50
From the team that brought you CS50 at Harvard, Yale, and Oxford, this is the Fifty Foundation, led by David J. Malan et al. Theatrical courses in computer science and math. For free, for all. 🎭
Episodes


Handling Exceptions - CS50P Shorts

For Loops - CS50P Shorts

Dictionaries - CS50P Shorts

Conditionals - CS50P Shorts

Classes - CS50P Shorts

Capture Groups - CS50P Shorts

Boolean Expressions - CS50P Shorts

Office Hours with Professor David J. Malan and Carter Zenke @ SEC

CS50R - Lecture 7 - Packaging Programs
The lecture focuses on how to package programs in R, specifically creating a package called "DuckSay." The goal of DuckSay is to take a character string as input and output a textual representation of a duck "saying" that string. The discussion covers the structure of R packages, including the DESCRIPTION file, NAMESPA...

CS50R - Lecture 6 - Testing Programs
This lecture focuses on testing programs, specifically how to handle errors and ensure functions behave as intended. It begins with a demonstration of how a seemingly simple AVERAGE function can fail when given unexpected inputs, like text instead of numbers. Different methods for handling exceptions are explored, incl...

CS50R - Lecture 5 - Visualizing Data
This podcast episode focuses on visualizing data using R and the ggplot2 package, emphasizing how effective visualizations reveal trends, facilitate group comparisons, and aid in sharing findings. The discussion covers the grammar of graphics, breaking down plot creation into components like data, geometries (columns, ...

CS50R - Lecture 4 - Tidying Data
This podcast episode focuses on tidying data in R using the tidyverse package. It introduces the concept of tidy data, emphasizing that each observation should be a row, each variable a column, and each value a cell. The discussion covers the dplyr package, including functions like select, filter, arrange, distinct, gr...

CS50R - Lecture 3 - Applying Functions
This lecture introduces how to apply functions in R programming, focusing on writing custom functions and using loops to repeat code segments. The lecture uses the example of a vote counting program to illustrate function creation, including defining function names, arguments, and bodies. It explains scope, wherein obj...

CS50R - Lecture 2 - Transforming Data
The lecture focuses on transforming data in R, specifically addressing outliers and subsetting. It begins by demonstrating how to identify and remove outliers from a dataset of average January temperatures using indexing and logical expressions. The discussion then shifts to subsetting data frames, using a dataset of b...

CS50R - Lecture 1 - Representing Data
This podcast introduces programming with R, emphasizing its use for data-related tasks. It explains that R is designed to work with data, making it suitable for data science, visualization, research, and statistics, although the course itself doesn't delve into the math behind these fields. The podcast introduces RStud...

Implementing the CS50 Duck with OpenAI's APIs - Rongxin Liu & David J. Malan
The podcast explores the implementation of CS50's AI-based virtual rubber duck using OpenAI's APIs. It details how CS50 leverages these APIs to create a chatbot that assists students with troubleshooting and debugging code. Rongxin Liu explains the system architecture, including prompt sanitization, PII anonymization, ...

Teaching CS50 with AI - David J. Malan
CS50 integrates artificial intelligence into its curriculum through the "CS50 Duck," a virtual tutor designed to provide pedagogical support while maintaining academic integrity. By implementing strict system prompts, the tool acts as a guide rather than an answer key, helping students debug code and understand complex...

CS50x Workshop on AI

Functions - CS50P Shorts
Follow this podcast in Podwise
Sign in to get AI summaries, transcripts and mind maps for any episode, including new ones.
