Harvard Extension School Student Forum

Come discuss with other HES students in a new forum who are at Harvard Extension School. Talk about life in and around Cambridge, Boston, classes, school, Harvard University, course reviews, and more. Interested in the best ways to travel to Harvard for your residency requirement? Check out the 'On and Around Campus' category for tips and advice. Want to join a book club with other Harvard Extension School students that read through the Harvard Classics? It's a Harvard education in and of itself. ExtensionStudentForum Forum categories include 'Job Postings & Job Seekers', 'Extension Confidential', 'Professional Graduate Certificates', 'HBX', 'ALB' and 'ALM' discussions. Extension Student Forum is brought to you by The Degree Tracker.

Register with your Harvard.edu email address

This forum is exclusively for Harvard University students. The sponsor for this forum is an exciting new web app, The Degree Tracker. Track and plan your Harvard Extension School ALM and ALB degrees or professional graduate certificate. Course ratings, instructor reviews, accomplishment badges, planning, tracking, and other tools to help guide students through their HES journey. TheDegreeTracker is proud to bring you this tool to use to track your degree at Harvard Extension School. If you are a student who has more courses than you can keep track of, and you would like to plan out your degree pathway carefully, then track and plan courses with the Degree Tracker to take control of your education. Including course reviews and course ratings, TheDegreeTracker has the potential to not only guide you through your degree, but to let you help other students who might be wondering about the HES courses that you've taken. The Degree Tracker is glad to provide the Harvard Extension School Student Forum (ESF) to help foster a nurturing environment. This forum for was born in 2015 to create better Harvard Extension School friendships, networking, and information to contribute to a better overall HES experience. Extension students formerly congregated at forums such as philfac and extensionstudent. This website has no affiliation with either the philfac or extensionstudent websites. It has been created and run by 100% completely different leadership. For the extension student who wants a bigger taste of what life with other Harvard Extension students is like, combining the Degree Tracker and the extension student forum can foster that sense of community that others have on campus. Another advantage of participating in an online community over the Harvard campus is that extension students can develop permanent relationships with other extension students that being on a physical campus might not necessarily allow, since online students are great at staying in touch online.

What would you like to see in a forum?

We'd be glad to hear your feedback. It's no piece of cake to graduate with your Bachelor of Liberal Arts or Master of Liberal Arts in a timely fashion, but your Bachelor's or Master's degree plan will only benefit from making use of the Degree Tracker and this exclusive forum for Harvard's marvelous students.

The CS Pathway

Thanks to @JohnDrolte and @SoftwareEngineer for helping to put this together.

If your field of study is computer science at Harvard Extension School, but you'd like to know what courses to take that would most closely follow a Harvard College computer science student, here's the pathway to follow.  This pathway is very algorithm-heavy.

CS50
CS51 requires CS20 which requires at least Math15
CS61 requires CS26* which requires CS22*
CS121 requires CS20 and CS22 with grades of B+ or higher. 
CS124 requires CS22 (be warned, 124 is known to be exceedingly difficult)

*Most Harvard College students typically don't take CS26 or CS22.

Alternatively, a less difficult but still challenging approach to gain a solid foundation in computer science would be to take the following path (note that Harvard College students typically don't take these classes with the exception of CS20):

CSCI E-10A
CSCI E-10B (requires 10a)
CSCI E-20*
CSCI E-22 (requires 10b)
CSCI E-66 (requires 22)

*I found E-20 to be somewhat helpful for E-22, and it's only of the only math courses that is required, so you may want to take it before E-20.  

Any further suggestions or advice on what the best CSCI path is are welcome!

Comments

  • isinyaginisinyagin Posts: 12
    edited October 2015
    I'll talk from my personal experience rather than formal prerequisites.

    College typical pathway is the following: 
    Fall:       CS50 
    Spring:  CS51 and CS20*(see below)
    Fall:       CS61 and CS121
    Spring:  CS124

    CS20 is required for CS121 and CS124 since 2013 in College, but many students skip it because they took some introduction to proofs in high school, or took proof-based math class or because they're just bright or smart.

    You don't need CS26 or CS22 for CS61; CS61 assumes only knowledge of C and ability to code basic data structures (doubly linked lists and simple hash tables) - all of that is covered in CS50. So if you did well in CS50 you can proceed to CS61 directly just like College students do. A slower path would be to take CS26 (C/unix programming) and CS22 (data structures in Java) and kind of come more prepared, but you don't need that. CS50 is really enough for CS61.

    The same applies for CS22 being a prerequisite for CS121 and CS124 - it is not. Believe me, you'll be much better off in both of these classes after taking CS20 and learning how to prove things rather than learning how to implement data structures in java. Both CS121 and CS124 are theoretical, math-y classes, where you don't need to do a lot of coding. CS124 is useful in practice whereas CS121 is kind of boring (you can find lectures from 2007 on iTunes, the class hasn't changed at all since then).

    CS51 does not need CS20. CS20 might be useful for complexity analysis, but in CS51 you cover that in late March I think, whereas in CS20 it's more like late April - so you learn the material much earlier in CS51 than in CS20. There're no proofs in CS51. Yet, most students take both classes at the same time because they know they'll need CS20 for CS121 and CS124 next year. Again, the discussion applies only to those who do not skip it because they have the proper math background (Math23a or some other proof-based class).

    CS51 and CS61 do not have any relation to each other in terms of prerequisites, so you can take CS61 and then CS51 (I did exactly that). Moreover, I learned C (came from java background) in CS61, but that was brutal, I do not recommend that, though it's possible.

    Math15 again is not needed for CS20, but CS20 assumes good knowledge of high-school algebra, so if you want to refresh that, Math15 is probably a good choice.

    One of my main points is that most college classes are self-contained, they do not require special preparation unless https://courses.my.harvard.edu specifically says so (like with CS121 and CS124).

    College classes do not teach Java at all, but it's one of the two most used languages in industry and many need it. To learn Java you can always take CS55. You do not need any specific prerequisites for it, but general knowledge of programming will be assumed; so, take CS50, CS51 before CS55.


    Now, a couple of words about the 'alternative' path via HES classes to get more prepared for College courses. This path is extremely java oriented, so I'd recommend taking it only if you know 100% that you need java OR CS50 is just too overwhelming for you (it is for many).

    A good slow path of CS fundamentals would be:
    Fall: CS10a
    Spring: CS10b, CS20
    Summer: self-study CS50 for CS61 to learn C (or take CS26 in the fall instead of CS121)
    Fall: CS61, (CS121 or CS26), [CS22 is probably unnecessary at this point, unless you want to practice java) 
    Spring: CS124, (CS51 to learn functional programming), (CS66 to learn about databases and practice more java)

    I can't say that you really need anything from CS20 for CS22 or CS66. But CS20 is a good course to take to learn fundamentals of discreet math - it will be somewhat useful in any subsequent CS class, so definitely take as early as possible.
  • GratGrat Posts: 293
    Thanks for the great review, @isinyagin.  I was wondering, what courses have you actually taken?  Were you ALB or ALM, if you don't mind sharing?

    I think the main benefit of CS22 for me was getting more in-depth experience with programming, and learning a little about how to maximize efficiency during that process.  Dr. Sullivan did a great job demonstrating OOP principles and making us use them while working with data structures.  While the Java track is all Java, it's not terribly hard to switch to most of the other popular languages once you get a good handle on Java (except maybe C, as it doesn't support OOP, but I guess that's what C++ is for). 


  • I did my ALB and and finishing my ALM next summer. I've taken a lot of CS classes, audited others which couldn't take for different reasons. Feel free to ask about anything in particular, especially from the college curriculum.

    I haven't taken CS22 as a standalone course, but it was part of Intensive intro to Computer Science CS-111 (CS10a, parts of CS10b and CS22 in 7 weeks in summer). I agree that it was a very good learning experience and I definitely learned much-much more in the second part of the course when we discussed and implemented data structures. But take into account that it was my first programming class. Had I done already a year of programming (Cs10a/b, CS50, CS20), I'd have probably skipped 22 and moved forward to CS61, CS51 and CS124 to learn new things.

    On the other hand, if someone is interested in Digital Media or Information Management Systems programs, I'd definitely recommend taking the java track CS fundamental rather than more advanced, theoretical and fast-paced college version. College path is definitely geared towards CS or Software Engineering concentrators.
Sign In or Register to comment.