- 12 reviews
- 12 completed
Prior experience in the field: Some basic reading on algorithms/data structures. Like: Covered many interesting topics, although most involved data structures. The programming assignments were interesting, and allowed you to work in whatever language you wanted (But... see "Dislike"). The quizzes were worthwhile as well, as opposed to most online courses. The lecturer is very enthusiastic and engaging. His tone is informal and this makes the material easy (& fun) to absorb. Dislike: No algorithms were covered, but this will be covered in Part 2 of this course. Tim Roughgarden's handwriting is a little tough to understand, although he gave ample warning at the beginning of the course. The programming assignments only checked the final output and you couldn't receive too much feedback on your code (But, this provided for some advantages... see "Like"). Suggested improvements: Provide more programming assignments. Overall: A good course to get started with algorithms, Tim Roughgarden explains even the toughest of concepts with ease.
Prior experience in the field: None Like: We are introduced to a wide array of topics from basic regression to SVMs. Practical applications of the techniques was shown in large-scale projects. We got to implement what we'd learned in the lectures through some excellent (and useful) programming assignments. Dislike: The course left me feeling I had only an "overview" of machine learning, rather than being able to say I'd learned the nitty-gritty details [This could be a good thing depending on what you want]. The quizzes didn't really test much. Templates provided for every programming assignment made this course quite a bit easier than it should have been. Suggested improvements: Discard the quizzes (or make them optional). Get 1 or 2 "heavy- duty" programming assignments - no templates, you start from scratch. Overall: Good as a machine learning course, but great as an introductory course.
Prior experience in the field: None. Like: Wes Weimer integrated pop-culture references really well with his lectures, making them very informative on non- technological issues as well. The lecturer's enthusiasm can fill a helium balloon and carry it to space. Loved it! The class was very engaging and had you hooked till the end. The assignments required you to put your thinking caps on, and not your "reading" caps like some other courses. Dislike: I feel I was unable to obtain a "complete picture" [a parser, lexer, etc. put together], but maybe that's just me. We didn't really make a web browser, only a superficial one. This was acknowledged by the lecturer. The code we wrote seemed too constrained by the particular language and library we were using (Python, etc.). The "general" idea [how to implement it] was lost. Overall: What is lacking in course content, Westley Weimer makes up for with his excellent teaching abilities. Don't expect to become too proficient at the subject, but definitely worth a try.
Prior experience in the field: Tried to learn haskell. Didn't do too well. Like: There were no pointless quizzes, only programming assignments. The programming assignments were very interesting and challenging [the discussion forums helped]. The lectures had assignments in them, with solutions (so that you can see Martin Odersky's approach). Being taught by the inventor of the language meant the language was concisely yet (almost) completely covered. Functional programming is a very exciting paradigm. There was a "cheat sheet" and an "Assignment feedback" section that helped underline and rectify some common errors in students' code. The programming assignment checker was very thorough. The course was very well rounded - as an example, we learned about test suites as well! Dislike: Felt some of the lectures could have been spruced up/made shorter. Suggested improvements: Provide official solutions for the assignments. Overall: Martin Odersky gets you up to speed with Scala and functional programming really fast with this short course. It is demanding, but if you have even the slightest interest in functional programming (or want to learn it), a MUST take.
Prior experience in the field: Programming in Python for 3 years, Udacity courses CS 101 & CS 373. Like: Learned some amazing techniques (search techniques). Learned about the power of Python and its various libraries (collections, defaultdict, etc.) Being able to "generalize" a search algorithm to solve mundane puzzles and impressive sliding car ones (Unblock me, if you've heard of the android app) was amazing. Understood generators and for expressions in Python, thanks to some great explanations (not to mention wrappers). I feel these are very difficult to "get" by yourself. Peter Norvig is an excellent teacher who was very involved in the forums as well. Kudos to him! Dislike: Was not sure I really learned how to "design computer programs". But, now (6 months later) I'm thinking I have gained a better understanding of how it may have helped. Overall: An excellent course, but may not be for beginners. If you think you know enough to handle it (a solid knowledge of Python's various data structures should be a good start), then you MUST take this course.
Prior experience in the course: Had heard of the Nash equilibrium ;) Like: The assignments were fun to do. The lectures were neat and engaging. Dislike: Sometimes the assignments borrowed directly from the lecture. Overall: A great course that explains the basics of game theory really well. Helps you think about various ideas in a refreshing manner.
Prior experience in the field: None Just as an introduction (and possibly a disclaimer), I never liked finance. I hoped this course would change my mind (or just give me another perspective) and I think it didn't really succeed. Like: Got to learn about the basic topics of finance well enough that I can probably read a few pages of the business paper now. Got to learn how to use functions in Excel to simplify financial calculations. Dislike: The questions in the assignment were too tough - way tougher than the examples shown in the lectures. It felt like someone had thrown you out of a boat into the cold water and asked you to swim at full speed. A lot of time in the lectures was spent talking about "non-finance" stuff (love/random topics). This would be great (and it was engaging initially), but it took up so much of the lecture time that you could forward through the lectures and not miss much. There was hardly any explanation given on the assignment questions - even if you had finished them. The reason being given was that it would take them too much time to create a new set of questions for the next offering of the course and that people would easily copy the answers, but the answers were being handed out by the bunch on the discussion forums! Instead comments like "think again" or "try harder" or "draw it out" only served to make one feel like they were being mocked. Suggested improvements: Make the lectures less about the "love/feel" aspect and more about the finance aspect. Give solutions to assignments. Make lectures deal with more complex concepts, they dealt with obvious concepts. Overall: Left feeling very disappointed with the course. It promised so much, yet delivered so little. Definitely not a great course as an "introduction".
Prior experience: Programming in Python for 3 years. Like: Manages to teach you quite a bit of Python in the short span of a few weeks. Also learned about python modules, specifically ones that allow you to communicate with the browser (necessary for a search engine). The forums (as always with Udacity courses) are excellent and the projects made by other students were amazing to see. Got to know how a search engine works. Dislike: Is more like "An Introduction to programming with Python" although it does touch on a few basic computer science topics. Overall: Take the course if you want to learn Python/how to make a search engine, but if you want a true introduction to computer science, you just might have to look elsewhere.
Prior experience in the field: None Like: Get to learn how to make a fully- functional website, using Google App Engine. Steve Huffman does a great job teaching us about the dos and don'ts of making a website. Covers a lot of topics in sufficient details - from hashing passwords and secure logins to cookies. Got to implement all that we'd learned and end up with two blogs! Dislike: The lectures on using different APIs was pretty rushed. Limited to Google App Engine. Suggested improvements: Well, not really an improvement, but a follow-up course would be great. Overall: An excellent course to learn the finer details of web applications, you'll leave with a fresh feeling of accomplishment!
Prior experience in the field: None Like: Gave a good overview about networks, covering many topics in the field. Was a very easy course to complete/get a certificate. Dislike: No programming assignments to let you implement what you'd read about. A lot of time in the lectures were spent just reading the slides/providing trivial explanations. The quizzes tested stuff that was explicitly mentioned in the lectures - your hearing skills were tested, rather than your thinking skills. The quizzes had the same questions on the second attempt - making it very easy to ace every quiz. Suggested improvements: Add some programming assignments. Make the quizzes worthwhile (or discard them). Overall: A nice course if all you want is an introduction to networks (and a certificate), but you wouldn't want to tell others that you know anything in the field, since you yourself won't be sure!
Prior experience in the field: Partial completion of the same course on CourseRa. Like: Armando Fox is a great lecturer - very enthusiastic and engaging. Get to learn a little Ruby - which is a great language. Got to learn a few things about Rails. Dislike: David Patterson was not as enthusiastic or knowledgeable as Armando. The course feels very rushed, with Ruby, etc. being given even lesser time than in the CourseRa offering. The evaluations (quizzes) don't really test anything (vague questions on theory). The other evaluative components (HW), which were like programming projects, accepted faulty code for the right answer (except HW1, which was a great intro to Ruby). A lot of stuff was just skimmed over or not covered at all. Suggested improvements: Go slower and deeper into the various topics. Cut out the bucketloads of theory (intro) in the first lecture. Teach us how to build a software from scratch - the programming assignments had a lot of code already written.
Prior experience in the field: The AI (robotics) course on Udacity. Like: The course material was presented in an easy to absorb manner. It was engaging and you felt like learning more. The robot cartoons. They helped me stay focused - and interested! Professors' enthusiasm and knowledge. Explained stuff in easy terms. Questions - tested concepts well more often than not. Dislike: Forums weren't very interactive. Multiple choice questions can get irritating when you're not very clear with certain concepts. The projects can be very frustrating to tackle at times, but the forums usually have helpful pointers. It would be good to try Udacity's course before this one, just because it would make this a little easier. The course had a lot more work than I expected, and the work was all much more helpful in internalizing teh concepts. This course is the best AI course on the web right now.