3 ms·
How to Design Programs: https://htdp.org/ https://htdp.org/ I already had a strong programming background in Java, C, JavaScript and PHP. I thought an introdu
by wffurr 3y ago
How to Design Programs: https://htdp.org/ https://htdp.org/
I already had a strong programming background in Java, C, JavaScript and PHP. I thought an introductory programming class at the Master’s level would be a waste of time. Going through rigorous program design in Racket was a mind expanding experience. I was amazed how much programming we did before reaching the assignment statement (set!) otherwise the first thing taught in typical introductory programming courses.
The format of the class was a big part of the experience though: all assignments pair programmed and then presented to a panel by a randomly chosen member of the pair.
A close second would be PLAI: https://www.plai.org/ https://www.plai.org/. As experienced through the Brown University online version of the Design and Implementation of Programming Languages: https://cs.brown.edu/courses/info/csci1730/ https://cs.brown.edu/courses/info/csci1730/
It gave me a very thorough and engaging grounding in the various programming language idioms and constructs and how they actually work.
- TheFreim 3y ago> I was amazed how much programming we did before reaching the assignment statement (set!) Reminds me of my programming languages course, probably my favorite class in college. Spent nearly a quarter of the course just learning scheme, didn't know if it would pay off even though I was interested, but when various language constructs were introduced through the use of a metacircular interpreter it was eye opening.
- adamddev1 3y agoYes, big second from me. HTDP taught me how to how to work with through complex data structures/problems in a really clear and simple way.
- optbuild 3y agoI really want to know about the outcome of reading HTDP with some programming experience, like you, versus taking it as a first course.