Disclaimer: The course has been split into a Part 1 and Part 2; I've completed Part 1 only at this point.
Building on their first course, Introduction to Interactive Programming in Python (IIPP), this class aims to set a higher standard of programming and conceptual understanding (of the role of certain math topics in programming, in particular) for students.
The class differs from IIPP in several respects. As mentioned above by Gregor, almost immediately students are introduced to math concepts like combinatorics, probability, and growth rates (although the topics are treated at a relatively elementary level; the professors assured us that a more detailed discussion of the role of math in algorithms would commence in "Algorithmic Thinking 1 & 2). As opposed to IIPP, programs are now machine graded and must meet exacting programming guidelines (designed to mimic real-world restrictions). In addition, the projects are more ambitious than in IIPP, and require a more robust programming repertoire.
The highlight of the course are, as seems to be with this specialization, the projects themselves. The themes are fun and engaging and don't at all dilute the rigor of the concepts themselves. The homework problems are were personally more of an annoyance for me, but the do serve to cement concepts, practice coding, and prepare one for the projects.
My one real frustration with the course is that the instructions for the projects were not nearly as clear as in IIPP (although, in their defense, the projects in PoC were more complex). However, the instructions were just clear enough to get me through completion.
So far I've learned a great deal regarding object oriented coding in python, list comprehensions, manipulation of data structures, and much, much more. The course is well worth taking and well worth the money.