
MIT Design and Analysis of Algorithms (Spring 2015) - codepie
http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-046j-design-and-analysis-of-algorithms-spring-2015/lecture-videos/
======
egonschiele
Hey! If anyone's interested in an intro to algorithms, I'd like to pitch my
book Grokking Algorithms[1]. It is an illustrated guide with a focus on being
easy to read. I've gotten a lot of comments about how easy it is [2] [3] [4].

Sample chapter here [5].

[1] [https://amzn.com/1617292230](https://amzn.com/1617292230)

[2]
[https://twitter.com/cachilders/status/746522721794691073](https://twitter.com/cachilders/status/746522721794691073)

[3]
[https://twitter.com/ashkrit/status/745636106163478529](https://twitter.com/ashkrit/status/745636106163478529)

[4]
[https://twitter.com/bertrand_cachet/status/74369502984414003...](https://twitter.com/bertrand_cachet/status/743695029844140032)

[5] manning.com/bhargava

~~~
616c
This is very interesting. I will look into. Going to start the Stanford
algorithms course on Course in 1-2 weeks and I think this might be a help to
me.

UPDATE: What's with Manning, if you don't mind me asking? I can buy dead tree
and all digital media included from Amazon at 33.00 and change, but for 34.00
and change from Manning direct I don't get the paper copy? I live abroad so
shipping would screw me. Haha.

~~~
overcast
Just an FYI, Manning has a code the past two days for 50% off all books, and
they will often have 35-50% off single books at anyone time. Their shipping is
also expensive for a single item, but free for three. But yes, otherwise it's
very expensive. $45 for a 200 page picture book on algorithms is a bit steep.

~~~
egonschiele
Correct, Manning frequently does "deal of the day". I will tweet the next time
it happens for my book (@_egonschiele). I don't set the prices (obviously).
The book is also available through Safari books online, and US-based folks can
request it at their library also.

~~~
616c
Oh really? I have access to Safari. Thanks.

Still though, I think later this week I will buy a copy. I like your blog too,
and after years of intro level courses of different types (currently watched
my eyes water over when redoing insertion sort in Scala with Odersky in his
Scala class in Coursera doing pattern matching and functional decomposition),
perhaps all I really need is a picture book.

Out of curiosity, as a busy (what seems to be from your blog and GH profile)
Etsy engineer, how did you get into writing such books?

I am very newbish but I love the quality content coming out of non-traditional
non-academics on better CS instruction. What makes you tick, egonschiele?

~~~
egonschiele
Thanks, that's very nice of you to say. I wrote the book because I didn't find
an easy-to-read book on algorithms, and it took me a long time to learn. I
think teaching hard concepts in a clear way is very important, so that's what
I try to do with my book and blog.

~~~
616c
Tell me about it. I think picture books for programming. Animated turtles all
the way down!

------
divkakwani
For those who want an advanced course on algorithms, here is one:
[https://www.youtube.com/playlist?list=PL6ogFv-
ieghdoGKGg2Bik...](https://www.youtube.com/playlist?list=PL6ogFv-
ieghdoGKGg2Bik3Gl1glBTEu8c) This is an MIT course. It doesn't appear at ocw
though.

~~~
rayuela
This is fucking awsome. Thanks!

------
draker
Berkeley was making all of their lecture videos available to the public until
they recently moved to EdX. Course videos from Spring 2015 and prior (going
back as far as Spring 2010) can be accessed here:
[http://webcast.berkeley.edu/series.html#c,d,Computer_Science](http://webcast.berkeley.edu/series.html#c,d,Computer_Science)

I have been working through the cs core classes (61a/b/c) by following the
syllabus from the semester corresponding to the videos for reading and
homework assignments. A google search of course number and professor's last
name has been the easiest method of finding the course website (not all of
them use the Berkeley course page).

~~~
Ar-Curunir
We didn't move them to EdX, we just made them private and available to
Berkeley students only. I think this is because of some rulings stating that
lecture videos have to be provided with CC if they are to be made public (OCW
was sued for this).

~~~
draker
Thanks for the clarification. Obviously the lawsuit was seeking equal access
for deaf/hard of hearing individuals but had the unintended effect of removing
access for everyone (public).

It's a shame that a better solution could not be reached because it was very
nice having recent course videos available (as opposed to many EdX courses
which use 5-10 year old videos).

~~~
mohsinr
In case of this lawsuit, it achieved negative results hence: "the cure was
worse than the disease".

------
relyks
Jeremy Scott from MIT, along with two other people, created a visual language
for tracing and explaining data structures and algorithms. "A Direct
Manipulation Language for Explaining Algorithms"
([https://groups.csail.mit.edu/mug/pubs/Scott2014DirectManipul...](https://groups.csail.mit.edu/mug/pubs/Scott2014DirectManipulation.pdf))

A bunch of teaching assistants used it during recitations for the course. It
looks really cool and very helpful for developing intuition.

Does anyone know if there are any course materials online related to this?

~~~
sn9
One of the authors of that paper, Philip Guo, created the invaluable Online
Python Tutor.

[http://pythontutor.com/](http://pythontutor.com/)

------
alexc05
This is great! I just picked up the famous algorithms textbook (CLRS) and have
been reading through (I'm just past the introduction and am moving in to
chapters 1 - 3 (basing my schedule on the readings in this course)

I figure if I follow along in the videos it'll be a great compliment with the
two of them enhancing each other.

Now if only I could find the "algorithms certificate" to go with it, maybe I
could use this and my 15 years programming experience towards a master's
program enrollment. (Along with a calculus and linear algebra)

~~~
zerr
Not sure.. CLRS is too dense for page-to-page reading. The more I was
advancing through the book the more I was forgetting from the previous
chapters... :)

~~~
eccfcco15
It's a bit dense, but I found the first few chapters to be the worst. Once you
get past the dull beginning, the rest is really interesting. I think it's a
GREAT book! (We used it in all of my algorithms classes.)

------
bogomipz
I never understand the course numbering for CS. Is there a formula or some
specific prefixes I should know to search for CS courses for MIT, Berkeley and
Stanford? I feel like knowing these would help find alternate sources youtube,
etc for viewing.

------
Conte32
Do you think these materials are enough to pass interviews at big tech
companies?

~~~
codepie
These courses will provide you a good theoretical background, which may not be
enough to crack the interview problems. You might wanna look at some of the
programming problems on Hackerrank, Codejam etc to bridge the gap between the
theory and the implementation.

------
diimdeep
That's great, what other courses there are updated ?

~~~
gagagababa
You can find a lot of other courses if you poke around the net. For example,
6.005 - Elements of Software Construction is "As taught in 2011" on OCW [1],
but you can find the latest notes here [2]. The content hasn't changed a lot
since 2011 though, and the changes are mostly in the order of which the
content is presented. As a side note, this is is easily the best course out
there for novice/intermediate programmers. No videos though.

Another great course (started it yesterday) is 6.172 Performance Engineering
of Software Systems [3] and it also has videos available.

All in all, there are a lot of great courses for any level of
experience/knowledge. It's best that you check them out and see what you like
yourself. This [4] is the list of all the EE/CS subjects that are offered on
OCW. Some of them have videos, others don't. Note however, that almost all of
them have comprehensive lecture notes and if you get stuck, you can always
look for more information elsewhere. Finally, if you want to check what they
offer every semester, see here [5] (note: their EE/CS courses start with 6).

[1] [http://ocw.mit.edu/courses/electrical-engineering-and-
comput...](http://ocw.mit.edu/courses/electrical-engineering-and-computer-
science/6-005-elements-of-software-construction-fall-2011/index.htm) [2]
[http://web.mit.edu/6.005/www/fa15](http://web.mit.edu/6.005/www/fa15) [3]
[http://ocw.mit.edu/courses/electrical-engineering-and-
comput...](http://ocw.mit.edu/courses/electrical-engineering-and-computer-
science/6-172-performance-engineering-of-software-systems-fall-2010/) [4]
[http://ocw.mit.edu/courses/#electrical-engineering-and-
compu...](http://ocw.mit.edu/courses/#electrical-engineering-and-computer-
science) [5]
[https://stellar.mit.edu/courseguide/#course_6_sp16](https://stellar.mit.edu/courseguide/#course_6_sp16)

~~~
noir_lord
Thanks for posting those links, [3] in particular looks fascinating.

~~~
bogomipz
Wow, link [3] look awesome. Thanks for sharing.

------
hamidr
Awesome. No torrent sharing for the videos?

~~~
codepie
You can download all the videos from here
[https://archive.org/details/MIT6.046JS15](https://archive.org/details/MIT6.046JS15)
. Available as torrent too.

~~~
gosub
or use youtube-dl on the youtube playlist

~~~
daniyel
Here is the command for downloading all videos in playlist at 720p in a folder
with the same name as the playlist's

youtube-dl -o "%(playlist)s/%(playlist_index)s. %(title)s.%(ext)s"
$YTplaylistLINK -f 22

~~~
ohlookapony
Thanks for sharing! I'm trying the following, but it's not working.

youtube-dl -o "%(playlist)s/%(playlist_index)s. %(title)s.%(ext)s"
[https://www.youtube.com/playlist?list=PLUl4u3cNGP62K2DjQLRxD...](https://www.youtube.com/playlist?list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh)
-f 22

What is the correct format?

~~~
daniyel
try this [http://paste2.org/4dbGV36n](http://paste2.org/4dbGV36n)

~~~
ohlookapony
Working! Thank you :)

