HACKER Q&A
📣 sidcool

Are there any online courses to learn Advanced Computer Science?


I am kinda bored with CRUD apps and as a 36 year old want to explore more before I kick the bucket.

Are there any good, reputed and genuine online courses/degrees (free or paid) for learning Advanced Computer Science. I am mostly interested in Distributed Systems, Advanced Algorithms & Data structures etc.


  👤 aalhour Accepted Answer ✓
I loved Ryan O'Donnell's "Great Ideas in Theoretical Computer Science" series, you can find it on YouTube:

https://www.youtube.com/playlist?list=PLm3J0oaFux3aafQm568bl...

MIT OCW has a course on Advanced Data Structures which is just great! You can find the Fall-2017 version of it here:

https://courses.csail.mit.edu/6.851/fall17/

I also started reading the "Streaming Systems" book which is a great reading on distributed data-intensive systems, I recommend it:

https://www.amazon.de/dp/1491983876

Also, you might be interested in checking out the Apache Beam, Flink, Spark and Storm projects, a lot of things happening on the front of designing data-intensive distributed systems, hacking a side project in any of these might be a fun learning activity.

Best of luck!


👤 rickka
Well, here's two by the same author, not too recent but i think they're worthwhile. http://shop.oreilly.com/product/0636920041405.do

http://shop.oreilly.com/product/110000667.do


👤 bjourne
There are two free Udacity courses I can recommend: https://www.udacity.com/course/computability-complexity-algo... and https://www.udacity.com/course/intro-to-theoretical-computer... And Tim Roughgarden's lecture series: http://timroughgarden.org/videos.html The material isn't advanced though. For advanced comp sci courses, you probably have to pay for them. At least I haven't found anything free available.

👤 x-curiouscase-x
If you are interested in distributed systems , I found the book "Designing data intensive application by Martin Kleppmann" to be a good starting point. Its not about only about distributed systems but also covers quite a bit of ground on overall data systems. https://www.amazon.com/Designing-Data-Intensive-Applications...

👤 foopdoopfoop
https://softwarefoundations.cis.upenn.edu/ is a nice introduction to computational logic, interactive theorem provers, lambda calculus, and the power of type systems.