- 5 reviews
- 5 completed
Brilliant practical introduction to Algorithms. I did this course along with the theoretical Algorithms course by Prof. Roughgarden. These courses complement each other wonderfully and I strongly recommend both these courses. In the process of this course, I got to learn Java. My programming background was limited to C++ and some Matlab before I took this course. Prof. Sedgewick is a very likable teacher and course material is top-notch. Everything is very well-planned and the programming assignments drive the concepts right home. The forums are lively and TAs very helpful. Two thumbs up and looking forward to the Part 2 of this course!
I signed up for this course to help me better prepare for graduate studies which I will begin a couple of months. Lacking a formal background in theoretical topics of Computer Science, I found this course immensely useful. I did this course concurrently with the Algorithms I course taught by Prof. Sedgewick. I found this combination, though very hectic, ultimately very rewarding. The theory being taught in this course was complimented nicely by the practical Java programming being taught in Prof. Sedgewick's course. I especially enjoyed Prof. Roughgarden's enthusiasm and teaching style. I don't have any real complaints about the course. Two thumbs-up and looking forward to the second part of the course.
I knew undergraduate level math but had the faintest of the ideas about Game Theory. The subject in general is very interesting and this course is good mild introduction to the topic. The good things: The course is well-designed and the instructors are enthusiastic and knowledgeable. The forums are lively and a lot of real-world game-theoretic interpretations are discussed. Assignments are not easy and make you think. Weekly Hangouts by the professors are interesting too. The not-so-great things: I started the course expecting a very practical course with immediate real-world applicability. However, the course turned out to be more math than expected. Don't get me wrong, I enjoyed every bit of the math and the course, however, there were a lot of students who were considerable disappointed. A lot of the course material, I am afraid, I will simply forget after a point because I won't get to think of them again. Good course. However, recommended to only those who wish to pursue the topic of Game Theory further in their pedagogy.
I did have some background with basics of Linear Algebra. The promised computer science applications of this course is what I signed up for. Also, I had just started learning Python, so the fact that Python was the language for this course was an added bonus. In a nutshell, the course did deliver on that promise, but failed on almost all other aspects of the course. Pros: \- Rigorous, non-trivial assignments. Makes you think about foundational first- principles of linear algebra. \- It shows the power to Python as especially suited for numerical applications. I am really glad that this course used Python instead of something like Matlab/Octave. \- Good call on splitting the course into two parts. The advanced follow-up course will be offered sometime in the future. I think this was a very good call. Otherwise the fraction of people dropping out of this course would have been much higher. Cons: \- Grader. Oh, the grader. Absolutely ruthless grader. A course which is supposed to take 4-5 hours a week ends up taking 7-10 hrs because you are trying to debug some really mundane grader related issues. In the process, you're learning neither Linear Algebra nor Python. Also, the fact that feedback given when you submit an incorrect answer are absolutely useless. I expect a CS course to be a little more foolproof. However, I think this issue won't be as bad in the next versions of the course. \- Prof. Klein, though very enthusiastic and knowledgeable about the course material, is just reading off of the slides most of the time. In fact, I ended up reading the proofs of the lemmas myself directly off of the slides to save time. \- The programming knowledge required to complete the course if ill-advised. Beginner programmers will find it hard to cope with the rigour of the course. So, beware! All in all, I am happy with the course, but I wish I had signed up for the second offering of the course instead of the debut offering. Would have saved me a considerable amount of time.
No prior experience in the core subject matter. I did have experience in Matlab programming and knew a fair bit of probability and statistics. The good: Excellent survey of existing ML techniques. The course is peppered with very useful tips and tricks to real-life scenarios. The assignments are thorough and Prof. Ng's enthusiasm for the subject is very evident. The class forums were also very lively and added to the overall experience of the course. The bad: The assignments are too watered-down and usually involve the student adding <10 lines of code to complete the assignments. All the heavy- work programming is already done and given as a template. This is my only major complaint about the course. The major emphasis of the course was to get the student to start using ML techniques without spending much time to understand the fundamentals. In fact, I think this aspect was heavily emphasized. Unfortunately, not all of have a day-job where we use ML to solve everyday problems. Someone like me who likes the mathematical rigour will be a little disappointed. To compensate for this, I did the full-fledged version of the Stanford course along with this where Andrew goes through all the math which is skipped in the Coursera version. All in all, a very good intro course and a MOOC done right.