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].
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.
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.
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.
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?
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.
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
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).
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).
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).
I don't know what your role is in this, but is this simply an issue of transcribing the audio of the lectures and providing them along with the video? Is there any program set in place to have someone (assuming a software-only approach isn't satisfactory, as it might not give correct results) do this?
More directly, could one volunteer to transcribe the lectures into a CC-like format so that the lectures could be safely and legally be put up for public consumption?
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...)
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?
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)
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... :)
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.)
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.
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.
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).
Sample chapter here [5].
[1] https://amzn.com/1617292230
[2] https://twitter.com/cachilders/status/746522721794691073
[3] https://twitter.com/ashkrit/status/745636106163478529
[4] https://twitter.com/bertrand_cachet/status/74369502984414003...
[5] manning.com/bhargava