4 ms·
15-440: Distributed Systems Syllabus
- SwellJoe 12y agoI just stumbled on this set of lectures, slides, and notes, from ETH Zurich, which seems like it would be useful supplementary material: http://dcg.ethz.ch/lectures/podc_allstars/ http://dcg.ethz.ch/lectures/podc_allstars/
- fshaikh 12y agohttp://link.springer.com/book/10.1007%2F978-3-642-15260-3 http://link.springer.com/book/10.1007%2F978-3-642-15260-3
- zerr 12y agoGenerally, there is huge gap in Distributed Systems courses (I've encountered) between the theory/books they follow and the practical lab projects... Can anyone recommend some good DS course oriented for working engineers with hands-on projects which the course (theory/book) itself follows closely?
- jamra 12y agoHave you looked at the linked material? I went through all of it myself and I found that although there are a lot of slides with code in them, you are given a good balance between Go code and theory. You can just brush through the slides that have code in them. The comments are good enough.
- krat0sprakhar 12y agoThere's a cloud computing class[0] launching on Coursera taught by Prof. Indranil Gupta which will cover all concepts such as fault tolerance, consensus etc. I'd suggest you can give that a shot. If you can't wait, you can checkout the course page[1] and get started right away. You can take a look at other DS courses here - https://github.com/prakhar1989/awesome-courses/#systems https://github.com/prakhar1989/awesome-courses/#systems Lastly, you also have the option of working on assignments in MIT's DS class[2] (git clone git://g.csail.mit.edu/6.824-golabs-2014 6.824) [0] - https://www.coursera.org/course/cloudcomputing https://www.coursera.org/course/cloudcomputing [1] - https://courses.engr.illinois.edu/cs425/ https://courses.engr.illinois.edu/cs425/ [2] - http://css.csail.mit.edu/6.824/2014/index.html http://css.csail.mit.edu/6.824/2014/index.html
- zerr 12y agoCoursera Cloud computing class is a great news! I guess I'll wait for this. As an added bonus, programming is done in C++ (compared to plain C/Glib as in original course). I hope that author means modern (or at least real) C++ and not just C with classes.
- jefftchan 12y agoMIT's distributed systems class is also taught in Go - http://css.csail.mit.edu/6.824/2014/schedule.html http://css.csail.mit.edu/6.824/2014/schedule.html
- wtf_is_up 12y agoGuest lecturer Russ Cox... nice!
- davidw 12y agoI guess using Erlang would be cheating...
- zerr 12y agoYes, I also had similar feel while using Erlang - "hardcore" part was just gone and I thought I was just writing config scripts to some underlying system (which it is) :)
- jamra 12y agoI don't know much about Erlang. Can you explain why it's so easy?
- polskibus 12y agoMessage passing paradigm and no shared state on one hand, on the other the Open Telecom Platform (OTP) framework that implements many DS behaviours (server, supervisor and supervisor trees, etc.).
- digitalzombie 12y agoErlang VM's does most of of the distribution for you combine that with Erlang's primitive for distribute coding and it's just cheating. The language it self have many construct and primitive for distributed programming that it make it seems like cheating, the code itself is very nice to read once you get the hang of it and you don't have messy code like Node.JS with the nested call back. You first class citizen distributed stuff. Messaging passing and pattern matching for PID for example made stuff easy. Actor model is also easy to mentally solve compare to Node.JS non blocking stuff. I'm only picking on Node.JS because Node.JS and Erlang is what I've used. Mostly Node.js and a little bit of Erlang.
- jamra 12y agoThanks. I just learned Node.js so it made your comment more helpful.
- 12y ago
- kmmbvnr_ 12y agoso sad, that course have no video lectures.
- kmmbvnr_ 12y agoso sad, that course have no video lectures.
- samuell 12y agoAlso relevant is the "Distributed Algorithms" course at Royal Institute of Technology in Sweden. Seems to be a little bit more theoretical, but might be an interesting complement to a more practical course. YouTube playlist: https://www.youtube.com/playlist?list=PL700757A5D4B3F368 https://www.youtube.com/playlist?list=PL700757A5D4B3F368 Course page: http://www.ict.kth.se/courses/ID2203 http://www.ict.kth.se/courses/ID2203 (appears to be down at the moment though)
- samuell 12y agoGiven Prof. Stefan Nilssons "Fundamentals of concurrent programming", which is taught in Go [1], it would be interesting to see whether not the distributed systems course will adopt Go as well, in the near future. [1] http://www.nada.kth.se/~snilsson/concurrency http://www.nada.kth.se/~snilsson/concurrency
- samuell 12y agoWell, otherwise, I tried to get some help collecting nice Distributed system links and news in the relevant Google+ group: http://bit.ly/distsys http://bit.ly/distsys
- aaronaaa 12y agoI'm taking this course next semester! However, it mostly likely will be taught in C/Java.