Live data from Hacker News

Snap is Scheme disguised as Scratch [pdf]

people.eecs.berkeley.edu

31–40 of 41 posts

Re: Snap is Scheme disguised as Scratch [pdf]

#31
post #4

The enormous effort to bring kids/young adults into CS is really awesome and admirable. However I fundamentally disagree with the philosophy of this paper. IMO, we should try to take the kid gloves off of our programming education as soon as possible . I learned how to code when I was an adolescent (10-12). I wasn’t personally interested in the act of programming itself, but I was fascinated by the possibilities of w…

Unreal Engine Blueprints absolutely scale, if you’ve played any recent games you’ve seen them in action.

Re: Snap is Scheme disguised as Scratch [pdf]

#32

The author states: Prior to joining the Snap! project, I had spent 20 years teaching computer science using the best computer science book ever written, Structure and Interpretation of Computer Programs (SICP). I have also taught high-school aged students using a modified version of SICP, Picturing Programs [1], and have had a very high success rate. The students have been able to comprehend topics like recursion and…

I have my doubts about the snap style of visual programming, e.g. due it emphasizing imperative code too much, but I have no doubt that text is bad. I've watched too many students struggle with text and the beginning, and this accident complexity slows down the learning by weeks.

Re: Snap is Scheme disguised as Scratch [pdf]

#33
post #7
post #4

The enormous effort to bring kids/young adults into CS is really awesome and admirable. However I fundamentally disagree with the philosophy of this paper. IMO, we should try to take the kid gloves off of our programming education as soon as possible . I learned how to code when I was an adolescent (10-12). I wasn’t personally interested in the act of programming itself, but I was fascinated by the possibilities of w…

> does not scale beyond the absolute basics > if they are inclined I agree with those, but I want to emphasize how important it is to ensure that the "absolute basics" remain accessible to the least inclined until they discover if they want to scale up to the next level or not. In regular shared classroom education, one of the toughest elements of accessibility is to ensure nobody ends up left out because of unfavora…

We should never introduce filters to education and understanding. It is immoral.

Giving examples of tenacious kids battling their tooling is evidence that we should increase the slope of the difficulty curve. This isn’t how pros train, this is how you self select for kids you don’t have to teach.

Re: Snap is Scheme disguised as Scratch [pdf]

#34

The author states: Prior to joining the Snap! project, I had spent 20 years teaching computer science using the best computer science book ever written, Structure and Interpretation of Computer Programs (SICP). I have also taught high-school aged students using a modified version of SICP, Picturing Programs [1], and have had a very high success rate. The students have been able to comprehend topics like recursion and…

> The question I have, which I could not find an answer for in the article, is why Snap, or any visual programming language, leads to greater successful outcomes than using SICP and Racket?

Because you can't make syntax errors (as the blocks don't fit) or spelling mistakes (because you drag-and-drop the blocks). Racket is great but Snap can be accessible even to primary schoolers who're just getting into Scratch. Snap's emphasis on drawing on the canvas has a very Logo / Turtle Graphics feel to it, which DrRacket doesn't quite have.

What makes it easier for the teacher is that Snap is in JS so you don't have to go through the app store to run it on school iPads (because that's just what's there in many classrooms, sadly). If the page is blocked on school wifi, you can even set up a local hotspot for it.

I imagine it could be potentially be more difficult to get Racket running on school iOS? Don't Apple have a ban on apps that can run code in many instances?

Re: Snap is Scheme disguised as Scratch [pdf]

#36

The author states: Prior to joining the Snap! project, I had spent 20 years teaching computer science using the best computer science book ever written, Structure and Interpretation of Computer Programs (SICP). I have also taught high-school aged students using a modified version of SICP, Picturing Programs [1], and have had a very high success rate. The students have been able to comprehend topics like recursion and…

I have my doubts about the snap style of visual programming, e.g. due it emphasizing imperative code too much, but I have no doubt that text is bad. I've watched too many students struggle with text and the beginning, and this accident complexity slows down the learning by weeks.

> I have my doubts about the snap style of visual programming, e.g. due it emphasizing imperative code too much,

The whole point of Snap is to encourage you to "Build Your Own Blocks" which can call themselves recoursively. They've made it really seamless, whereas in Scratch you just got all these looping constructs and limited options for abstraction. There is nothing inherent in visual programming which emphasizes imperative code. You should really try it; just implementing a quick fibonacci or something.

Re: Snap is Scheme disguised as Scratch [pdf]

#37
post #33
post #7

Earlier quoted context omitted.

> does not scale beyond the absolute basics > if they are inclined I agree with those, but I want to emphasize how important it is to ensure that the "absolute basics" remain accessible to the least inclined until they discover if they want to scale up to the next level or not. In regular shared classroom education, one of the toughest elements of accessibility is to ensure nobody ends up left out because of unfavora…

We should never introduce filters to education and understanding. It is immoral. Giving examples of tenacious kids battling their tooling is evidence that we should increase the slope of the difficulty curve. This isn’t how pros train, this is how you self select for kids you don’t have to teach.

Alright kindergarten, today we're gonna right ahead with calculus part II.

Even if we "take the gloves off as soon as possible", there is a point at which Snap is brilliant. Are you going to teach Python to primary schoolers?

Re: Snap is Scheme disguised as Scratch [pdf]

#38
post #36

Earlier quoted context omitted.

I have my doubts about the snap style of visual programming, e.g. due it emphasizing imperative code too much, but I have no doubt that text is bad. I've watched too many students struggle with text and the beginning, and this accident complexity slows down the learning by weeks.

> I have my doubts about the snap style of visual programming, e.g. due it emphasizing imperative code too much, The whole point of Snap is to encourage you to "Build Your Own Blocks" which can call themselves recoursively. They've made it really seamless, whereas in Scratch you just got all these looping constructs and limited options for abstraction. There is nothing inherent in visual programming which emphasizes…

I meant to say "scratch style", emphasizing the commonalities between them.

For example, I would have no mutation or ;+like things at all in my teaching language. All edges would represent dataflow.

Re: Snap is Scheme disguised as Scratch [pdf]

#39
post #34

The author states: Prior to joining the Snap! project, I had spent 20 years teaching computer science using the best computer science book ever written, Structure and Interpretation of Computer Programs (SICP). I have also taught high-school aged students using a modified version of SICP, Picturing Programs [1], and have had a very high success rate. The students have been able to comprehend topics like recursion and…

> The question I have, which I could not find an answer for in the article, is why Snap, or any visual programming language, leads to greater successful outcomes than using SICP and Racket? Because you can't make syntax errors (as the blocks don't fit) or spelling mistakes (because you drag-and-drop the blocks). Racket is great but Snap can be accessible even to primary schoolers who're just getting into Scratch. Sna…

Apple will make exceptions for education apps that can execute code, but I think your observation is good about iPads/tablets in general. They are not great devices for keyboard-driven programming apps, unless you have a keyboard attached!

You make a good point about syntax errors and the ergonomics of connecting blocks. My initial point was that Snap might not be the best option for high-school aged students. I can totally see it being really nice for younger students.

Re: Snap is Scheme disguised as Scratch [pdf]

#40
post #37
post #33

Earlier quoted context omitted.

We should never introduce filters to education and understanding. It is immoral. Giving examples of tenacious kids battling their tooling is evidence that we should increase the slope of the difficulty curve. This isn’t how pros train, this is how you self select for kids you don’t have to teach.

Alright kindergarten, today we're gonna right ahead with calculus part II. Even if we "take the gloves off as soon as possible", there is a point at which Snap is brilliant. Are you going to teach Python to primary schoolers?

I think we agree? Snap is brilliant and we should strive to teach everyone a subject, not just those that get-it on the first try. I don't think we should make things harder than they must be.
Post reply on HN