Good comprehensive course with loads of practice which will never left u bored
This course was pretty all inclusive for all the material I learned in class, basically all of it was new to me. I liked the coding questions and multiple choice, I think it's helpful in testing my knowledge. I kind of wish after a couple attempts and getting coding questions wrong, there would be a hint or an example.
It was a very nice course for beginners.
I hate this
It was my second course in the computer science sphere. I received a lot of useful information, obtained new knowledge. But the last lesson of this course was incomplete in my point of view
I did this course not as a student at UCSD, so my assessment is based solely on the materials available on Stepik. All in all, this is a pretty decent first course on Python. It provides good coverage of basic concepts, while trying to develop an intuition for how things work under the bonnet, e.g. including a good discussion of references. The format of the textbook works well with the Stepik app and the explanations, esp. in the first half of the course, are both clear and specific. Most programming tasks are quite simple, which means you can go through the course at a steady pace even if you are learning on your smartphone and you will rarely feel discouraged from continuing. Some course decisions, although somewhat drastic, enforce good programming habits. E.g. the introduction of functions at the very start is somewhat extreme, but it does mean that by the end of the course writing a function is done pretty much automatically. The discussion of dictionaries is fairly thorough. At the same time, towards the second half of the course, teaching materials become uneven. While the chapter of development and debugging strategies may be useful for beginners, I found it pretty boring. While working with images sounds like a fun idea, most exercises are focussed on very trivial transformations and do not let you touch any real images. The amount of hand-holding also increases towards the end, so many questions in later chapters do not encourage understanding things properly, but just expect you to carefully memorize the specific details of earlier explanations. As the result, by the end of this course you would know enough Python to be able to express simple algorithms and use the most basic, imperative core of Python. At the same time, this course will not teach you any of the functional programming techniques, won't mention list comprehensions, generators and other things that make Python, well, Pythonesque. You will need to find more advanced courses to learn about these features. In any case, I definitely benefitted from doing this course. So thank you very much for making it available for free and I will definitely be interested in any course materials you may release in the future.
Readings were very clear and straightforward. Some of the exercises had to implement knowledge that was a little more advanced than the reading previously done, however
all super helpful! my only feedback is that in the segments about image transformations, you should elaborate further and have more examples. especially regarding clockwise manipulation of images and column-major manipulation
Honestly this was more useful than the actual course
Overall a very solid guide for the course material. In general, I think it has good explanations and adequate explanations for concepts. Well done!