2 ms·
And before any says it, yes, I do love the idea of students EVENTUALLY learning a Lisp/Racket kind of language before they graduate. I would even be happy with
by acbart 7y ago
And before any says it, yes, I do love the idea of students EVENTUALLY learning a Lisp/Racket kind of language before they graduate. I would even be happy with an entire course dedicated to it. But I don't want that to be the CS1. I've just seen it go so wrong for so long now.
- snazz 7y agoI think this is extremely fair. It's really hard to understand why anyone might want metaprogramming until you've tried programming without it (on something larger than the average intro-to-CS assignment). Having more libraries and resources is extremely useful from teaching to working in the real world. Most of the points in the article are valid, and I especially agree that Racket or another Scheme should be taught at some point later on. Maybe even implementing a Scheme as a final course project or something like that (although that might not make sense outside a compilers class...)
- abhiyerra 7y agoI actually really enjoyed 61A with Scheme at Berkeley. I think the benefit of learning Scheme to start is the flexibility of learning how more complex features like OOP, can be built off a simpler language. > Pascal is for building pyramids imposing, breathtaking, static structures built by armies pushing heavy blocks into place. Lisp is for building organisms--imposing, breathtaking, dynamic structures built by squads fitting fluctuating myriads of simpler organisms into place. - Structure and Interpretations of Computer Programs
- badsavage 7y agoI had a beautiful beginning with a lisp like programming language when I was 8 or something. Every other languages have been disappointments until I found Clojure a few years ago. I hope you will get it some day.
- acbart 7y agoAnd I hope you will learn some empathy some day and understand the perspective of others. We all have some growing to do, it seems.
- emptysongglass 7y agoThe only way I was able to grok programming was through Racket. I owe my confidence and understanding to Gregor Kizcales’ How to Code, which makes clear to this art student what a dozen other language tutorials in a dozen other languages could not. I deeply love Racket and give thanks to its makers.
- acbart 7y agoGreat! I'm glad you found a path to computing, that is truly wonderful! And I'm not surprised that this approach worked so well for someone. Now, let's make sure we're finding ways that can generalize. It's an important problem in the world today.