I have seen many students joining CS50 and feeling a bit lost: the recurring questions are:

  • I enrolled CS50 on edx. What next?
  • Should I watch all videos, walkthroughs, sessions?
  • Should I follow and complete each Pset before starting a new one?
  • Where can I find documentation materials?
  • 5
    Hi, Luigi! I believe this question doesn't meet the quality standards for asking on cs50.stackexchange.com. cs50.stackexchange.com/help/asking Please separate the questions from the answers! You may answer your own question and accept the answer!
    – kzidane
    Commented Jun 26, 2014 at 10:05

5 Answers 5



I am not a staff member. The below mentioned details are MY OPINIONS on how one should start/take the course. Moreover the description is for edx version only. Some other ways through which you can take the course are here. If you are dealing with the course to gain only knowledge and not a certificate then you can take the course the way you want, else continue reading.


Welcome, This is cs50x, a Harvard College's introduction to the intellectual enterprises of computer science and the art of programming for majors and non-majors alike, with or without prior programming experience. This is a self-paced course and can be started any time. In 2014, about 73% of the students had no prior programming experience, so you need not to fear from keeping yourself in the less comfortable zone, but what really matters is :

what ultimately matters in this course is not so much where you end up relative to your classmates but where you, in Week 12, end up relative to yourself in Week 0.


Although the course expects no prior knowledge to computers or programming, but imo you should be slightly acquainted with :

Besides this one is supposed to get cs50 appliance installed on vmware/virtualbox to take the course. If you don't wish to get cs50 appliance, then read this.


Let David Sir give you the overview of the course.

This is the syllabus for cs50. By the end of the course(this year 31st Dec), one is expected to watch all the lectures, submit nine problem sets, and implement a final project being within the limits of academic honesty mentioned everywhere necessary.

Not mandatory, but the following books are suggested for self-assigned readings:

  • Absolute Beginner's Guide to C, Second Edition Greg Perry Sams Publishing, 1994 ISBN 0-672-30510-0
  • Programming in C, Third Edition Stephen Kochan Sams Publishing, 2004 ISBN 0-672-32666-3
  • How Computers Work, Ninth Edition Ron White Que Publishing, 2007 ISBN 0-7897-3613-6
  • Hacker's Delight Henry S. Warren Jr.

Not everyone should read each of the book. Look at the syllabus page if you wish to see which one suits you. Click here to know how to get recommended books.

Schedule and Estimated Effort

Although the course is self-paced and there is not tight bound of deadlines, you are expected to submit the 9 problem sets and the final project before 31st December in any order you wish, but if you feel psychologically comfortable working under the pressure of deadlines, have a look at suggested schedule. You are free to submit problem sets in any order rather than starting from first to last but its better to follow the expected sequence.

How to start

This link has a good description on exactly how to proceed further from the courseware page. One is supposed to watch "Lectures"(1 or 2 lectures of 40+ minutes each). "Walkthroughs" are a detailed version of the lectures on programming examples at a slower pace. "Sections" provide you a review of the course's material. Both sections and walkthroughs are optional. "Shorts" are small videos(generally not less than 7 minutes) that explain a particular topic in detail. If you are among the more comfortable zone and have a prior knowledge of programming, then you should at least watch shorts(even if you have watched lectures in fast forward fashion).

At the end, One is supposed to solve pset which itself has additional walkthroughs elaborating what exactly is to be done in that pset and also includes some hints. Pset shall be graded within 2 weeks(generally) after submission. This is how psets are graded. The obtained score can be seen on CS50 Gradebook(see in mentioned links below). If you get less score, then you can submit the pset again. But this should be done before course's deadline, in fact a month before the deadline(to ensure backup time for the case when you don't get promising score).

Discussion Forums

If you have any doubt in the middle of the course, then feel free to use cs50.stackexchange.com to clear them. Have a look at this too. I haven't used Reddit, Twitter, Linkedin, or Google+ for this purpose, but facebook has over 45k+ members(including David Sir and other staff members) to answer you.

Useful Links

Hope you love the CS50 song by CS50 2014 students.

Hope CS50 changes your life. Wish you Best of luck.

  • 1
    Please edit and add relevant that I missed and omit irrelevant things that I included to my answer, as this question has a long answer.
    – sinister
    Commented Jul 2, 2014 at 2:50
  • 2
    Good answer! This is a great way to inform new edX users how to do the course! Thanks.
    – ChiCubed
    Commented Jul 2, 2014 at 11:19
  • 1
    Great. Everything included. Commented Jan 10, 2015 at 14:41
  • Haven't updated everything yet for 2015 session.
    – sinister
    Commented Jan 11, 2015 at 6:37
  • Wow you put a lot of effort into that! +1 for the effort
    – i_am_david
    Commented Aug 4, 2015 at 17:05

The amount of activity and utilization of the sources given to you should differ from person to person depending on each person's goal. For example, I want to learn all the course has to offer so I watch all the videos including

  • lectures
  • shorts
  • walkthroughs.

If Tom(a random person) wants to learn a little bit and understand programming from a very broad point of view he should watch:

  • lectures
  • whatever else interests him.

I try tackling Problem Sets one after the other in the order given. (e. g. PS 0 then PS 1). However, I have also found that it helps watching the following Week's videos to help you with your current Problem Set. (e. g. I was doing PS 0 and watching Week 1 videos.)

All documentation materials should be offered on the edX website. I download the slides and scribe notes which can be found under the video. If you can't find a certain document (or whatever) I would just look at cs50.net for any additional materials.

In terms of CS50 TV and other apps related I have not ventured much into that category. I tried once but realized it does not help me with the Problem Sets or general learning.

Thats all I have to offer in my answer Cygni_65.

  • +1 For recommending watching ahead (especially the shorts). It costs nothing but time, and it helps enormously. Commented Aug 9, 2014 at 22:28

My experience led mee to follow each link of the courseware and the syllabus, watching every video, and doing Psets step by step.

Anyway, I noticed other links that were not publicized, like the "pastebin-like" app, the CS50TV to dowload videos, the check50-like web app, and so on.

I would like to group those useful links so that newcomers will easily find their way out and enjoy the course at their best.


Well i was lost in last year's CS50x programme because of much of the similar reasons , i discontinued and waited for this year's programme to begin.

As said this year 73% of student had no prior experience to programming at in person CS50 , similar stats can be said to be valid for CS50x folks .

I would suggest that -

1- watch lectures , to visualise the services available

2 - ask your's questions/doubts at CS50's facebook page or at this portal


First thing you need to do is to watch the David J. Milan. like there is one video for every week. The second thing is you have to watch walkthrough and short clips of the problem it may range from five minutes to twenty minutes. After all doing all these things, if you face difficulty then you can refer to other material like on Google. But may sure not to copy someone else answer.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .