This is a review of the course for undergraduate students :)
After studying up to the level of Pointer in the first semester of my freshman year, I enlisted in the military. Luckily, I was able to continue studying little by little in the military, and although I didn't study in depth, I did some algorithms and PS implementations that weren't too difficult.
Now, I'm about to return to school in the second semester, and I wanted to learn C properly again, so I started Ttabae. Now that I've overcome all the big mountains in Ttabae and (personally) entered the later courses that aren't too burdensome, I'd like to describe my feelings.
First, I'd like to recommend this course to undergraduate students. I would definitely recommend this course to undergraduate students or prospective freshmen. Not only is it worth the price, but I think the content is really valuable to undergraduate students. If you take the course in an undergraduate school, it may vary depending on the professor's personality, but I think it's basically a series of studies that are rigorous but difficult to embody easily.
The professors also make constant efforts to improve the students' level, but it's really hard to lead all students to the same point. At this time, the professors' choice is to lower the level so that all students can follow, or to give up on students who cannot follow. I was lucky enough to study for one semester with a professor who did not give up on everyone, and fortunately, I was able to build a foundation to some extent.
However, not all students can enjoy this kind of luck. Among the ordinary undergraduate students around me, many complain of great difficulty in the first semester classes. As a result, they end up becoming students who barely learn C grammar without properly building a foundation. This may be due to the philosophy of C, which completely trusts programmers, and it may also be due to the hardware knowledge required to properly understand C. However, I think the most important factor is the lack of time to properly embody knowledge of strict accuracy. In reality, the time given to professors and students during class is quite short to aim for embodying students, so embodying is completely left to the students.
That is why I recommend this course to freshmen and undergraduates. As the title, Learning C by Following, suggests, this course encourages us to directly participate in important parts. The process of following the code and repeatedly encountering practice problems simultaneously helps you acquire and internalize the concept of C.
And, here are the disadvantages.
The first disadvantage is that this lecture explains a large chunk. In other words, it is not a lecture that explains A in the beginning, B, and then C, but rather a lecture that explains A and b, c, d, and e in the beginning, and B, C, e, and f in the end, and completes ABCDEFG at the end of the lecture. Therefore, even if you know the concept, you cannot skip the middle part and listen to the lecture. Of course, this disadvantage is not a big problem because even if it is a part that I knew exactly, I will gain something after listening to the lecture.
The second disadvantage is somewhat shared with the disadvantage above. I will explain this disadvantage with an example.
Now, I took notes after listening to the concept of A in the beginning of the lecture. However, the explanation is vague and confusing. At this time, in order to resolve this concept of A in this lecture, you must first listen to the reference lecture. Then, at some point, a more rigorous explanation of A appears, or other secondary explanations make you realize the identity of A clearly.
This process is quite painful. It is like a sweet potato stuck in your throat, but you have no water, so you have to swallow your saliva drop by drop. However, this pain has become the driving force that keeps you listening to this lecture consistently. For almost a month since I first started listening to the lecture, I have continued to try to relieve this frustration, and now I am finally getting to the point where I can finish this lecture with a sense of relief, swallowing the sweet potato with some difficulty.
This lecture is by no means an easy lecture. Rather, it is closer to a difficult lecture. However, because of that, it is a lecture that saves more time. It does not stop at simply conveying knowledge, but because Mr. Ttaebae's lecture and Mr. Hong Jeong-mo's lecture are with you through the painful time of directly embodying it, I think that in the end, you will not waste time and will go faster. I can't even imagine how much futile effort it would have taken to fill in the gaps on my own to get to this point.
Therefore, I highly recommend this course :)