Hi All, I'm the author of this list. My main motivation with this was to list down a few university courses that make their material available online for free. In contrast to MOOCs, I've found these university courses to be quite valuable especially if you're looking to dive deeper (lecture notes & readings) and/or like working at your own pace. Most of these courses have really interesting assignments which you can work on when you are between side-projects.<p>Thanks to the contributors, the list has become quite huge and I'm open to any ideas that might help users navigate this better. There was a recommendation[0] made to add emojis and I'm looking for feedback on how it could be done better. If any of you have suggestions, I'm all ears! Thanks!<p>[0] - <a href="https://github.com/prakhar1989/awesome-courses/issues/29" rel="nofollow">https://github.com/prakhar1989/awesome-courses/issues/29</a>
The link to the systems course @ UIUC and probably other UIUC courses is not useful because the UIUC has just changed all of the the web pages in preparation for next semester.<p>If you're interested in C, thread synchronization, pipes and other system level programming concepts, then you might find the following freely-available and re-usable resources we created for UIUC's CS241 useful:<p><a href="http://angrave.github.io/sys/#" rel="nofollow">http://angrave.github.io/sys/#</a>
Includes:
1. 7 minute intro videos on C and POSIX calls
2. linux-in-the-browser programming+shell playground that runs in your laptop's browser<p>My course staff will be releasing a new version of this VM in the next semester with additional features and bug fixes (including embedded man-page and autocomplete)<p>We also built a crowd-sourced book that mirrors most of the lecture content
<a href="https://github.com/angrave/SystemProgramming/wiki" rel="nofollow">https://github.com/angrave/SystemProgramming/wiki</a><p>Together, these items comprise a significant amount of the systems course CS241.
I find the number of places not requiring Linear Algebra in CS curriculum disturbing. Graphics, PageRank, Super Computing, and other areas are all very heavy on the matrix math. I know there's only so many course you can fit in 4 years, but this still seems like an oversight to me.<p>Numerical integration methods (for ODE solvers) and constraint solvers should probably be covered better too, these are the basis for all engineering and scientific simulations.
For anyone looking for courses using OCaml, there's a list at <a href="http://ocaml.org/learn/teaching-ocaml.html" rel="nofollow">http://ocaml.org/learn/teaching-ocaml.html</a> -- Prev HN discussion at: <a href="https://news.ycombinator.com/item?id=8603202" rel="nofollow">https://news.ycombinator.com/item?id=8603202</a><p>To be honest, I'm somewhat confused by the purpose of general lists like these. When they're small and focused, I can see them being useful (as the OP mentions here) but eventually they tend towards being a directory. At that stage I'd just use Google (edit: though it'd be hugely ironic if a Google search led me to an 'awesome-style' list - hasn't happened yet)
I'm a self-taught front-end developer (more of a hack) that doesn't have a CS degree, and I want to go back and learn the fundamentals. Anyone been through a similar thing that can recommend a good free online CS program?
It's amazing the amount of high-quality material there is out there. However, as a programmer who is currently going back and attempting to master the fundamentals of an undergraduate CS curriculum through self study, what is lacking is:<p>1. A comprehensive list of the <i>topics</i> covered in the fundamental CS classes (that is, the topics covered in data structures, algorithms, etc. as well as the required math), ideally with links to related online material. Actually, ACM's Joint Task Force on Computing Curricula publishes a report that is an excellent resource (starting on page 59)[1] for this kind of thing. This resource just need to be distilled down into a list of general topics, each with an associated list of the best online education materials for that particular topic.<p>2. A nice flashcard program to accompany each topic, ideally with SRS, that could help students learn the terms and other concrete facts related to those topics.<p>3. A way to systematically evaluate and analyze a learner's mastery of these topics. That is, tests. I'm sure there's a lot of great test material out there that could be auto-graded, but it's scattered about.<p>4. Oh yeah, and a pony.<p>Does anyone know of a resource like this? I've actually thought about building it, and have started on very minor parts of this vision [2]. But it's a big task, and I'm not sure if there's any demand for this kind of thing.<p>1. <a href="http://www.acm.org/education/CS2013-final-report.pdf" rel="nofollow">http://www.acm.org/education/CS2013-final-report.pdf</a><p>2. <a href="https://github.com/esbullington/canonicalcards" rel="nofollow">https://github.com/esbullington/canonicalcards</a>
If you're interested in security, you may want to look at the CTF Field Guide which is based on an older course at NYU-Poly, CS6573: Penetration Testing and Vulnerability Analysis.<p><a href="https://trailofbits.github.io/ctf/" rel="nofollow">https://trailofbits.github.io/ctf/</a>
I'd be very interested in a list of PAID courses you can get a grade from. It would be helpful to demonstrate my ability to get a masters in cs.<p>I have a bachelors in math. I've taken a data structures and algo course at a local university. I'm currently taking software engineering grad class on udacity through Georgia Tech.<p>Any other paid online cs courses from universities? Some of the other Georgie Tech classes require too much since they're grad classes. I'm looking for BS level paid online classes.
Interesting how it lists Real-Time programming from uWaterloo. It's likely the toughest class taught at the university, requiring at least 40h of work a week.
<a href="http://coursebuffet.com/sub/computer-science" rel="nofollow">http://coursebuffet.com/sub/computer-science</a><p>Gives basic idea of computer science courses and level they might be at a US university