Jan 12, 2020
Honestly, this is a great crash course in OOP for C++ (though the ideas can be applied to any language). Previous experience with C++ is almost a necessity, the lessons can be complicated for novices.
Jan 31, 2021
Great course, simple and difficult all at the same time. Great introduction to these topics. Every thing that is included is there for a reason as every thing is straight to the point with no filler.
By FATHI M E H•
Nov 28, 2019
The course provide a good introduction in object oriented programming and data structure foundation
By Rajkumar T•
Jul 25, 2020
Final project was tough.But they said only basic and asked to do project
By Yakshith P•
May 6, 2020
i learnt so many things in this course.......
By Supriya -•
May 25, 2020
Its a awesome platform to learn coding..!
By Soumyamoy D•
Jul 5, 2020
Not at all suitable for begineers...
By Puneeth 4•
May 5, 2020
course was really beneficial
By Noah P•
Oct 22, 2019
not very challenging
By Abhishek M•
Jul 8, 2020
for a beginner this seems a bit tough and they usually get startled
By James K•
Jul 15, 2021
I would like to say I am the most awesome and beautiful person in the world, who took a course with the most awesome and beautiful students in the world, at the most awesome and beautiful university in the world, taught by the most awesome and beautiful professor in the world, and give this course 5 out of 5 stars.
However, I have noticed people do not like when I talk about how awesome and beautiful I am and all the awesome and beautiful things I have accomplished.
Therefore, I am the most terrible and ugly person in the world, who took a course with the most terrible and ugly students in the world, at the most terrible and ugly university in the world, taught by the most terrible and ugly professor in the world, and I give this course 1 out of 5 stars.
I hope you guys are happy!
By Aren T•
Nov 26, 2019
Starts off with an in depth analysis of the different types of memory storage in C++ (and how they are used by a computer in general). After this detailed start, using very minimal but precise code, It then rapidly starts developing the all the other fundamental data structures in C++, moving at quite a fast pace until one has a nice broad overview. It then culminates in a substantial project, where the requirement is not so much to add a large amount of new code, but instead to assimilate the code base and use very precise logic to implement the functions.
The course develops a rigorous approached to coding based on unit test/test frameworks.
The multiple choice quiz questions are challenging and very well thought out, such that you will really have to think carefully about them, and in so doing will consolidate your knowledge.
Overall, I've really enjoyed this first course in the Specialization and look forward to progressing onward through the rest of it.
If you have no prior coding experience, or are new to Computer Science, you will probably find this course tough going, so I'd advise you perhaps do a couple of easier introductory courses first.
The fact that this course is based on C++ is a major PLUS in my view, as far too many courses are now dominated by Python, yet C++ is an industry standard language used for serious software engineering projects and major systems due to its extreme power and performance. (This does come at a price in terms of complexity, however!).
By Ruben D•
Mar 11, 2021
TLDR: Take this course over the Princeton and Stanford courses, it's taught by a professor who has actually coded professionally which makes a huge difference if you're like me, trying to pivot into software engineering. I was looking at the two Princeton Data structures and algorithms on Coursera which also has good reviews, but they only use Java. I'm applying to Tesla and SpaceX, both companies use python and C++ for most of their software automation and especially their time-sensitive systems (simulators, controllers, etc). I decided to take this course instead of the Princeton course as I didn't want to spread my focus too far on languages none of my target companies are using (Java). This course was super inspirational. I honestly can go to sleep being comfortable with memory management and pointers. I would take any course taught by Wade Fagen-Ulmschneider (the professor) in a heart beat. Another good resource is "The Cherno" on youtube (ex. Game engine software engineer at EA). When learning how to write code, you should really be listening to people who were paid professionally.
By Nikhil K G•
Dec 8, 2019
This is a really amazing course. I have been a hardware engineer for nearly 18 years. The last time I coded in C++ was in college. As I had a background in Python and Perl, it was a really good refresher. The professor is really the best. I was very skeptic when I started the course. I could complete the course in about 10 days. Never expected this. The fact that this course does not need addition books is really true. I did get a few books from the library just to refer but really one can complete this without any additional material. The assignments are also really good. They make you go back to the notes and slides. If I meet professor Wade Fagen-Ulmschneider, I will really thank him for this. The discussion forums are also a good source of information. It helps reading what others have asked and learn from their mistakes.
By Yuhan L•
Jul 3, 2021
I very much enjoy taking this course. Being already familiar with the basic C++ syntax and having some hands-on experience of scientific computation, this course helps me have a deeper understanding about memory, class constructor, template. I find it easier to read and understand the source code after I figure out all these concepts.
One drawback, though, is that the course does not give an overview at the beginning, like why the course material is organized in this way, and what is the connection between the different materials. Sometimes, it feels like we jump from one topic to another without knowing the correlation between them. It would be really nice if the instructor can add an overview part.
By Tapojyoti M•
Dec 12, 2019
I already had a basic understanding of C++ with if-else, functions. But I was struggling with OOP part of C++ with use of Classes, constructors, destructors etc. I am a Computer Engineering student with background in hardware hence I have had little experience in the OOP aspect of C++. I really liked the fact the course focuses directly on the OOP rather than starting from absolute basics which saved a lot of time for me as compared to other projects. Thanks to this course I am able to understand the syntax of much complex C++ code for my research. Thanks Prof. Wade :)
By Jacob R K•
Feb 27, 2021
Great course! Used it to refresh my C++ knowledge (last learned it 6+ years ago). I really like how it focused on some of the more confusing topics of C++ (pointers, heap/stack memory, classes). I got to learn some new things that I missed during my initial C++ education. The professor's lecture videos are very easy to follow (he draws out the function of the code) and he even provides lecture PDFs for download. I also appreciated the Linux based environment, it seems like it's really important for aspiring programmers to get used to this.
By Jason T•
Aug 20, 2020
Associate Professor Fagen-Ulmschneider's lectures are clear, concise and interesting. Neither too dense or light, too brief or too long.
The assessment infrastructure for the quizzes and submission of challenges worked flawlessly. The instructions that came with challenges made it clear what was required and how to submit the finished work.
My only suggestion would be to add optional, 'stretch' challenges for those who want to be further challenged to apply the course material without making it too hard for the other learners.
By Ramanan S•
Sep 30, 2019
It was a great learning and an eye opener to various ways of thinking while coding in a language. Unlike almost all other programming courses where only the syntax is the main focus, this course introduces a lot of compiler / memory related concepts which really take you into the crux of C++ and how to think in the language. Same method, if followed for other languages like Java/Python, would provide great insights into computer science languages and how computers actually operate! Great work! Thanks a lot for this course.
By Sotos M G•
Feb 9, 2020
Extremely useful and satisfying course. Great in depth explanations of the concepts and in the same time demanding quizes and assignments. You can easily let yourself spend hours on single questions and you will end up with a deep understanding of each one of them. A great introduction to object oriented programming for someone with little background on the field (although necessary).
Just do yourself the favor and install the linux compatible environment instead of trying with the windows MinGW versions.
By Jinyun L•
Jul 29, 2020
The lecture is well-organized and clearly expressed. The homework is well-organized.
There is only one thing that may not satisfy one's expectation, that is the homework project requires more reading than coding, comparing with projects in my university that we need to do as much coding as reading. However, you could take this as an advantage, since it saves you time on coding parts unrelated to the algorithm's key point.
By Lomash D•
Jun 5, 2020
It wasn't tough but really helped me in building a strong understanding of how the memory works and could be controlled by using pointers and other operators along with how is it managed by the system inside. Also, surely the knowledge I'd gained through this course will help me learn Data structures & Algorithms more easily ! All in all it was a great experience and the last project was kinda fun !
By Omar H•
Apr 5, 2020
It was a very nice course to refresh and touch important topics related to Object Oriented Programming in Modern C++. I especially liked the instructor's way of teaching that included both theory and practical in a concise, intuitive manner. Course content was both fun and easy to absorb compared to most C++ courses found online. I highly recommend this course to anyone interested in C++!
By KEYU X•
Mar 27, 2020
This is a great course for those who have programming experience and want to learn something about C++, especially suitable for the engineering students not majoring in Computer Science but be willing to study the basic idea about C++. I hope that instructor could extend the course, add more programming problems, and cover the topic of polymorphism, which is very important in my opinion.
By Emily B•
Jun 8, 2020
This course does an excellent job of highlighting the fundamental information for learning C++. I appreciated that it was at the intermediate level, because it didn't spend too much time on the more basic topics that I had already learned. It is definitely a good option for anyone looking to get a head start on learning this language prior to a more strenuous university course.
By Carlos G•
Apr 13, 2020
Great intesive course! Everything is explained very clear and getting to the point. I should highlight that there are some exercises test a first glance seem to be a little bit complicated compared to how simple the lessons are. But these excercises are thoroughly explained and adapted to the difficulty of the course, so they end up being a perfect complement for the course.
By Suprajith H•
Apr 7, 2020
Excellent course if you already know a little bit of C programming and you want to learn C++. Really good explanation about the memory model. The codebase provided with the course is terrific. One can learn a lot through these simple lessons. The reading section is also very helpful. The quizzes are topical and helps one understand the content of the lessons thoroughly.