May 31, 2019
Excellent course. Refreshed all my concepts of Embedded System programming after a long time. Very good introductory course for Campus freshmen who needs to start working on System SW Development.
Jul 02, 2018
Great coursework. It makes you explore C , GNU's tool chain and Memory segments which are all essential for Embedded Systems. I'm very much excited and thrilled to share my experience to others.
by Jun L•
Aug 01, 2019
It'd be even better if it's available with teacher's online help ;)
by Ashraf K•
Oct 24, 2018
it is a good course but the lectures needs more information and explanation for some subjects
so if you would take that course you would need to talk another courses and youtube tutorials to gain a deep understanding and be able to solve the assignments easily
by Dwayne I•
Aug 31, 2017
An interesting course but the assignment goals aren't always the clearest. While i understand the importance of code reviews, I don't believe that they are the best way to grade assignments due to the varying skill levels of persons taking the course.
by Matias S•
Apr 13, 2018
The content is well crafted, there are some rough issues around the homework and the support in the forums is null.
by Stephen L•
Mar 08, 2018
This is a really unusual course. It has "Embedded Systems" in the title but the closest you will get to an embedded system here is cross-compiling a program to run on the ARM architecture. There is no coverage at all of the peripherals (A/D, timers, counters, etc.) that one would find on a microcontroller.
It is a frustrating class too. The lectures do not go into enough depth for you to be able to complete the assignments without doing external research on your own. I found this to be particularly true on the gnu make section. I knew very little about make and without frequent visits to Google I could not have completed that portion of the class. The quiz for the third week was also very difficult. There were only nine problems but even though each problem had four sections there was no partial credit. Miss any one of those sections and you miss the entire problem. It doesn't tell you which of the sections you missed so I had to retake that test several times before I was able to pass it.
The forum for the course is frustrating too. The instructor responds to so few posts that at first I thought that he never visited the forum at all. One has to dig back in the archives to find any real level of engagement from the instructor. Most posts go unanswered although I did get occasional help from one student and I was able to offer some help to one other person myself. The forum only appears active because old content is not removed.
This course is intended to be part of series and supposedly the next class will actually live up to the "embedded systems" name. You have to purchase a microcontroller development board for that course and according to the description given you actually get to run your code on the microcontroller. I haven't yet decided if I will take that course or not. The decision may be made for me. In the forums it says that the next course was originally supposed to be up on Coursera almost six months ago but it never materialized and I wonder if it ever will.
I wanted to only give a single star in this review but I decided to with two because despite the frustrations I did learn some things about gnu make and get a chance to brush up on my pointers. If you are wanting some embedded software experience I would recommend looking elsewhere or at least waiting for the next course(s) in the series to come out.
May 31, 2017
All are basics only. . . and its not a hands on training
by Bill W•
Feb 25, 2018
I was a little disappointed in this class. It teaches some important concepts, but at a relatively shallow level. I feel like it would have been very difficult for a student to have completed all the assignments without having prior experience (beyond the stated prerequisites) with the subject matter. The class was also very short; only three weeks of lectures, and and extra week "final assignment." This is the first MOOC I've actually pad for, and I feel sort-of gypped. (I guess I'll admit that it was still cheaper and better than the talks you'd get at a technical conference.) (I also guess that this is Coursera's new "style" - multiple 3-4 week mini-classes rather than a full quarter/semester-length class. I don't know if I like the idea. Especially since follow-on classes seem to be getting delayed.)
There was zero to very-little interaction on the discussion forums from instructors, "TAs", or even other students; I normally find the discussions to be particularly valuable with MOOCs. (The most successful have chosen to use Forum Software OTHER than (or in addition to) Coursera's. It look vaguely like the Coursera forums have improved, but it was still weak. Discussions from previous iterations of the class were still present in the forum; consider the lack of "current" discussion, I guess that was good, but I don't think it's desirable in general.
The use of a linux Virtual Machine is an interesting idea, and it worked OK for me (I have previous experience with both linux and VMs), but I felt like it was a stumbling block for a lot of people (of the few forum comments that appeared, "how do I do this without the VM" was number 2 right after "please peer-review my assignment.") I somewhat feel like the VM was pretty "heavy" for the average personal PC. The download was big, and slow.
The quizzes were pretty good (in particular, I like having "many" questions), except for the one I complained about in the forum. (multiple checkboxes per question leading to 2 of 36 mistakes failing with less than 80%) (
The programming assignments worked pretty well, for me. They do cry out for some sort of test framework to test results before the peer review (possibly submit results for grades, possibly just for personal testing.) The best of the MOOCs I've take have had both some form of automated testing AND a peer-review to cover harder-to-automate metrics. With the VM environment, it seems like this should be ALMOST there?
Teaching some use of git was valuable, but it was unclear how this was supposed to be carried forward in subsequent assignments, especially WRT whether there should have been one git repository per assignment, or one for the whole class.
by Oscar S T•
Apr 22, 2019
The activities are not sufficiently linked to what was explained in the videos and do not allow the reinforcement or comprehension of what has been exposed.
by William R•
Jul 04, 2017
Do you know what a C pointer is? Great, then you can spend 15 minutes on youtube and skip this course. It will teach you nothing more than basic C syntax, and some tangential embedded software trivia.
Besides the high price tag and woefully small scope, this course is extremely buggy. First, the provided VM does not seem to work; it comes with a virtual drive that the recommended VirtualBox software warns is incomplete, and on launch it is indeed seen as a read-only filesystem full of warnings and errors. Second, the assignments are very vague and often outright incorrect. Once I set up my own environment, I had to correct code that we were specifically instructed not to change on multiple occasions just to get the assignments to build. Further inquiries on the forums confirmed that these corrections were required. And of course, the assignments are provided with incomplete instructions which tend to omit lots of critical information.
I feel like I wasted my time and money with this course, and I would recommend that you not waste yours.
by Marcos F Z•
Jan 08, 2018
Payment is mandatory to view the tas
by PRANAV S D•
May 11, 2018
This course is not meeting coursera standards. I would say this is not worth to the price what they are charging. Content-wise too much poor. If they are charging 5000 Rs just for teaching gcc and related stuff then its wrong. These thing are easily available on YouTube. Also the elaboration is not much good, they should see how Prof. Andrew and Prof. xavier Serra are teaching and presenting ML and Audio processing courses.
I had thought of undergoing FPGA course by same university, but now I won't go for it. If possible I would like to have refund of my payment.
by Scott B•
Sep 23, 2017
Completely ruined by the final assignment.
This could have been a good course. While the lectures are presented at a whirlwind pace of cramming at least a full semester's worth of material into 4 weeks, and not at all for the feint of heart or those without a good solid background already in C and systems -- they are still really strong lectures. Fosdick's rapid-fire rat-a-tat lecturing style is mind bending to be sure, but the material is presented intelligently and articulately. The lectures slides are well-done and are provided for download (unfortunately in mixed formats: sometimes PowerPoint, sometimes pdf). And while the pace would be completely off-putting in a one-shot classroom environment, it is perhaps fitting for a video format where one can pause and rewind. Captions are a must, but unfortunately not all the videos have the right captions associated with them.
While the lectures are generally solid, and the material presented is practical and challenging, the course suffers from a problem that seems to plague the discipline of electrical engineering almost universally. This problem is the fundamental lack in the instructor's ability to bridge the gap between theory based lectures and pragmatic application of this information.
To be clear, there is a LOT of practical information supplied in the lectures. One only needs to be diligent and to view, review, and review again given the lecture style. However, there are numerous gaps between the information presented and the knowledge required to complete the assignments.
This, as I've stated, is a general plague on the house of EE. I have seen this problem in nearly every EE course I have ever taken. By comparison, the same problem is largely conspicuously absent from the teaching culture of the field of CS (I have done a considerable amount of work in both fields). Even in areas where the two disciplines overlap, the pedagogical culture of computer science almost always trumps that of electrical engineering in the singular aim to TEACH.
That all said, one who has a decent background in C programming and a decent systems-level understanding could quite successfully stumble through this material (with the caveat of planning to spend many more hours than the estimated commitment -- I spend 10+ hours per week on this course and have a considerable background in both systems and software). That is ... until the final assignment where it all falls apart. This assignment is, quite simply put, just plain lazy teaching. The assignment itself is a gross regurgitation of requirements that do little to support the ostensibly stated goals of the assignment itself. It is full of holes and ambiguities and contradictions. It would appear to be the case that the true intent of this assignment must be to weed out those who don't have the willingness to make a gargantuan commitment toward sorting out all the guesswork of what the professor REALLY wants. More likely, it's just a lazy effort, and reflects poorly on CU Boulder, Coursera, and the entirety of engineering education.
Could have easily been a 5-star course with a decent focus on clarity and quality and emphasis on teaching rather than lazily falling into the mode of letting the students with the most dedication just figure it out for themselves. Just such a waste of what appears to be solid potential on Fosdick's part