Source: Newsletter by CS50’s Introduction to Computer Science Course Staff dated 21 March 2023
Course update from CS50’s Introduction to Computer Science
Some updates from CS50 at Harvard! Hope this finds everyone well.
CS50x was updated with new-and-improved materials on January 1! Here’s what’s new. Even if it’s been a while since you logged in, you can resume (or start!) anytime at https://cs50.edx.org/.
If you would like to offer (or teach) any of CS50’s courses in your own school, city, country, or organization, please do email us at firstname.lastname@example.org to let us know what you have in mind!
CS50x Puzzle Day 2023
CS50x Puzzle Day is Friday, March 31 – Monday, April 3! If you’d like to participate, register at https://cs50.ly/register. And see https://cs50.harvard.edu/x/2023/puzzles/ for all details. If unfamiliar, CS50x Puzzle Day is an online adaptation of an event we hold at Harvard each year, an opportunity to collaborate on a team with classmates, family, friends, and colleagues on a packet of puzzles (i.e., logic problems). The event is open to everyone around the world, whether taking CS50 or not. No prior CS experience required. Teams of size 2, 3, or 4 are encouraged, or you can participate on your own. See https://cs50.medium.com/this-was-cs50x-puzzle-day-2022-dc675ae08731 for a summary of last year’s CS50x Puzzle Day as well as some past puzzles for practice. And here’s an invitation you can share online, https://youtu.be/DJRQXphEyX4!
Live CS50 Lectures on SQL and Cybersecurity
CS50’s team is in the process of filming two new courses:
- CS50 SQL, an introduction to databases using a language called SQL. Learn how to create, read, update, and delete data with relational databases, which store data in rows and columns. Learn how to model real-world entities and relationships among them using tables with appropriate types, triggers, and constraints. Learn how to normalize data to eliminate redundancies and reduce potential for errors. Learn how to join tables together using primary and foreign keys. Learn how to automate searches with views and expedite searches with indexes. Learn how to connect SQL with other languages like Python and Java. Course begins with SQLite for portability’s sake and ends with introductions to PostgreSQL and MySQL for scalability’s sake as well. Assignments inspired by real-world datasets.
- CS50 Cybersecurity, an introduction to cybersecurity for technical and non-technical audiences alike. Learn how to protect your own data, devices, and systems from today’s threats and how to recognize and evaluate tomorrow’s as well, both at home and at work. Learn to view cybersecurity not in absolute terms but relative, a function of risks and rewards (for an adversary) and costs and benefits (for you). Learn to recognize cybersecurity as a trade-off with usability itself. Course presents both high-level and low-level examples of threats, providing students with all they need know technically to understand both. Assignments inspired by real-world events.
Unlike some past courses, which CS50’s team has posted all at once, these courses will be filmed week by week, which means you can attend the courses’ lectures live via Zoom or YouTube! Or, as always, you can watch them on demand afterward.
Register to attend either or both courses’ lectures at https://cs50.ly/live. We’ll follow up via email ASAP with specific dates and times for the lectures.
All the best from Cambridge!
David J. Malan