top | item 40103567

(no title)

lavp | 1 year ago

I also TA'd 110 and I firmly disagree. CPSC110 teaches you to view a particular problem as a series of different possible states, and solving for those states (while placing an emphasis on seeing base cases and working up from there). Students learn about data structures like binary trees by the fifth week, and the ninth week they're already able to solve sudoku puzzles using generative recursion. We even touched on the n-queens problem towards the end of the course.

Racket serves its purpose well as a simple and fast to learn educational language; it's easy to see and understand recursion. It's also easy to see what the execution order of statements in your program.

I will say though that some problem sets were a bit brutal in terms of time taken to complete them.

discuss

order

ie878|1 year ago

Agreed. My main observations from students in my cohort were that those who viewed programming as a set of instructions struggled, whereas those who viewed the course material as a series of manipulations on mathematical objects grasped the material much quicker. In general, the course focused a lot on learning from first principles, which I appreciate much more nowadays.