HN Academy

The best online courses of Hacker News.

Hacker News Comments on
CS50's Introduction to Computer Science

edX · Harvard University · 1 HN points · 16 HN comments

HN Academy has aggregated all Hacker News stories and comments that mention edX's "CS50's Introduction to Computer Science" from Harvard University.
Course Description

An introduction to the intellectual enterprises of computer science and the art of programming.

HN Academy Rankings
  • Ranked #10 this month (mar/apr) · view
  • Ranked #23 this year (2024) · view
Provider Info
This course is offered by Harvard University on the edX platform.
HN Academy may receive a referral commission when you make purchases on sites after clicking through links on this page. Most courses are available for free with the option to purchase a completion certificate.

Hacker News Stories and Comments

All the comments and stories posted to Hacker News that reference this url.
The best introduction to programming and CS online is probably CS50x on edx [0]. You can follow it up with their web programming course CS50w [1].

[0] https://www.edx.org/course/introduction-computer-science-har...

[1] https://www.edx.org/course/cs50s-web-programming-with-python...

Hey Totaldude,

I taught myself programming over the course of a couple of years, having started from pretty much zero. Now I am working part time as a developer for a startup, and run a business of my own - having built not just the website and app for my business, but also developed the hardware and firmware!

Below are the classes that I took to get started along with a bit of a storyline:

http://learnpythonthehardway.org/ - I started this a while ago and never finished because I got distracted. It's kind of bare bones, but will get your wheels spinning.

https://www.edx.org/course/introduction-computer-science-har... - I started and got all the way through the last problem set. This course is EXCELLENT: wonderful lectures, challenging assignments, expansive community (facebook group, reddit.com/r/cs50, stackoverflow, etc). If there was only one class to pick from this list, CS50 would be it.

After CS50, I wanted to get good at a specific language and decided to learn Python. It is a very flexible and powerful language. It's very clean syntactically making it easier to learn. You can use if for data science, for little scripts, for web development, for pretty much anything.

https://www.edx.org/course/introduction-computer-science-mit... - i started this late (not self paced like the CS50), and played catch-up a good amount of the time. A solid class, mostly did it because I wanted to get good at Python. I got most of the way though this course as well.

https://www.edx.org/course/introduction-computational-thinki... - I started this class next because I wanted to use Python to crunch numbers, and eventually get into machine learning. I made it just a few weeks into this course before getting distracted with my own projects.

It's not just about learning a programming language, but learning to program. With two hours a day, you can churn through the CS50 course in a couple of months, during which you'll build a website & webapp. It'll definitely be a challenge (it took me a couple of tries to make it all the way through), but it's an amazing course - make sure to take advantage of the huge community.

Feb 26, 2019 · otras on Ask HN: Best Online Courses?
I've taken a few, and these two are my favorites:

Learning How to Learn by Barbara Oakley: https://www.coursera.org/learn/learning-how-to-learn Hands down the biggest return on investment for an online class. It helped my future learning so much. Highly, highly recommend it.

Harvard's CS50: https://www.edx.org/course/cs50s-introduction-computer-scien... Took this course when learning to program. It was difficult, but I learned a great deal. Fantastic professor, good problem sets, and great production value.

throwaway123x2
Was learning how to learn actually that useful? I kinda let off halfway through it ...
otras
I would say that it wasn't watching the videos that was helpful, but more applying the concepts and techniques. I took general notes and reviewed them periodically (spaced repetition!), and I applied the general ideas to my classwork.

It's kind of like learning math. During a lecture, it's easy to think to yourself "OK, I understand this," but you learn so much when working through practice problems. I found myself saying "OK, that makes sense" when watching the LHTL videos, but I really saw the benefit when actively working on applying spaced repetition, diffuse vs focus mode, getting sleep, and other strategies to my studying. I was taking a few post-graduate CS classes at the time, and compared with my study skills and results from undergraduate, it felt like magic to study efficiently and get good results.

Feb 08, 2019 · 1 points, 0 comments · submitted by pplonski86
I have spent a lot of time taking online courses. Here are my favorites.

CS50 (https://www.edx.org/course/cs50s-introduction-computer-scien...) - Best Intro to Computer Science

Nand2Tetris I and II (https://www.coursera.org/learn/build-a-computer) - Build a computer from logic gates up to a compiler, this is the best class I've ever taken.

Agile Development Using Ruby on Rails (https://www.edx.org/professional-certificate/agile-developme...) - Great introduction to web development and software engineering principles

I've also been reading some technical books. Would definitely recommend

Modern Operating Systems - Tanenbaum Designing Data-Intensive Applications - Kleppmann

Although it's not directly related to webdev, I highly, highly recommend the Coursera course Learning How to Learn as a starting point: https://www.coursera.org/learn/learning-how-to-learn

For the computer side of things, I highly recommend Harvard's CS50, which is completely free, for an introduction to computer science [0]. It has a great subreddit [1] and is a fantastic resource. MIT also offers a great pair of free introductory classes on edx. [2]

FreeCodeCamp is an interactive online program that does that exact progression (HTML/CSS => Javascript => React). Here's a link to the curriculum: https://learn.freecodecamp.org/. It also has a wide support system (chats, subreddit, etc), and it's also completely free. I never finished the last few projects, but the rest of it taught me a tremendous amount.

There are so many variables and so much luck involved that there is no guaranteed path, but these are two great resources to get started. These were some of the resources I used to transition from no-CS (disclaimer: with a physics degree but zero programming experience) to a programming job at a startup. I've since continued learning through online and in-person classes and joined a large tech company.

Happy to answer any questions about these resources. Given how many variables there are, I hesitate to use my own experience as an example, but I'm happy to give back and pass on any knowledge I can.

[0]: https://www.edx.org/course/cs50s-introduction-computer-scien...

[1]: https://www.reddit.com/r/cs50/

[2]: https://www.edx.org/course/introduction-to-computer-science-...

Kagerjay
I second this as well

I would do CS50 and doing FreeCodeCamp in parallel. This way he builds a light web foundation, and have a solid CS foundational base to work through other courses.

Other good courses are found through udemy, like Colt Steel. Another good one I recommend is watchandcode.com, for basic foundational programming principles

CS50, Harvard's introductory CS class, introduces students to programming with C. I took the online version in 2016, and I greatly enjoyed the way it was presented. I'm not in the best position to compare and contrast teaching methods, as I've only taken the single class on C, but if you have the time I would highly recommend seeing how they do it.

You can access their lectures, notes, problem sets, slides, and other material for free on their course website [0] and on edX [1]. A warning in advance before you click the course website link though! It's currently Halloween, and the page features an autoplaying scream sound. You've been warned!

[0]: https://cs50.harvard.edu/2018/fall/

[1]: https://www.edx.org/course/cs50s-introduction-computer-scien...

CS50x (Introduction to Programming) [1]: Very well structured. Excellent and very Enthusiastic Teacher & staffs. It was the most fun MOOC I took

Learning How to learn [2]: Life changing. I wish I did it sooner.

ops-class (Operating Systems) [3]: This is by far the toughest MOOC I've taken. The Assignments are really tough. Although not impossible. Just the right amount of tough, I guess. I'm currently in the last few weeks and I've really enjoyed it every bit so far.

Interesting (Not Yet Completed): Introduction to Quantum Physics (2013) [4]: My god, I just love the teacher's enthusiasm. After few lectures, I realised I need to first brush up on classical physics before moving further (which obviously was the requirement that I ignored).

[1]: https://www.edx.org/course/cs50s-introduction-computer-scien...

[2]: https://www.coursera.org/learn/learning-how-to-learn

[3]: https://www.edx.org/course/cs50s-introduction-computer-scien...

[4]: https://www.youtube.com/playlist?list=PLUl4u3cNGP61-9PEhRogn...

orenht
You accidentally duplicated the cs50 link. Where were you taking the operating systems class? I'm very interested :)
atomicnumber1
Sorry. here's the link. You'd love it.

[3]: https://www.ops-class.org

There is a good, free book on Python[1] that teaches practical skills for automating tasks. I sometimes recommend it to people, because it's immediately practical.

After that, you could try Flask[2] or Django[3] (Python web frameworks) and gradually introduce HTML, CSS, and JS.

JavaScript frontend development has more moving parts, so I think it's harder to pick up as a first technology. You have to explain asynchronous code earlier than with Python, and that's one more mental concept to juggle.

There are also a couple of online courses[4][5] that might be useful. I've only watched part of the first one -- it was good.

[1] http://automatetheboringstuff.com/

[2] http://flask.pocoo.org/docs/0.12/quickstart/

[3] https://tutorial.djangogirls.org/en/

[4] https://www.edx.org/course/introduction-computer-science-mit...

[5] https://www.edx.org/course/cs50s-introduction-computer-scien...

Oct 16, 2017 · shakna on Essential C
CS50 [0], if you're just getting started. It's Harvard's entry course to Computer Science, free, and covers most of the knowledge a beginner needs to get started.

[0] https://www.edx.org/course/introduction-computer-science-har...

There's a really great course from Harvard called CS50[1][2]. This course teaches C with training wheels on so to speak and later removes them. Would highly recommend taking it. It's also free!

1. https://cs50.harvard.edu

2. https://www.edx.org/course/introduction-computer-science-har...

philonoist
These are self-paced! Very handy. Thank You.
hugja
No problem! I forgot to add in my original post that after the first 5 or 6 lectures the course switches to Python from C. You'll end up hitting two birds with one stone.

Also, there's a very active community around CS50 on Reddit[1] where you can get help when ever you need it.

1. https://www.reddit.com/r/cs50/

This is CS50!

https://www.edx.org/course/introduction-computer-science-har...

shpx
This is how I got into programming, some people laughed at me for learning C as my first language, but I think it paid off.
marincounty
The Harvard computer sci course really helped me out. I didn't take the class, but put all classes on my iPod. I would listen to lectures while exercising at night.

This course really helped me understand the ever changing computer lingo. I probally should have done the lessons.

Once you get used to the vocabulary, and all the acronyms--it's all starts to fall into place.

Harvard offers a free web course that teaches basic concepts and helps start the process of learning to code.

https://www.edx.org/course/introduction-computer-science-har...

Check out this class https://www.edx.org/course/introduction-computer-science-har.... It might be below your skill level, but if it's not go through it. It's very interactive and you'll enjoy learning the course material.
HN Academy is an independent project and is not operated by Y Combinator, Coursera, edX, or any of the universities and other institutions providing courses.
~ yaj@
;laksdfhjdhksalkfj more things
yahnd.com ~ Privacy Policy ~
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.