My belief is that learning is done best when there is a connection to something real, not just a simulation or an exercise.
Okay but you're stacking your unsubstantiated belief based on a sample of just you against an entire field of research where people have dedicated their lives, so maybe you can understand why some people take it personally when you just call it BS off the cuff?
since you're convinced that no matter what, you're right
You're the one convinced you're right no matter what. You countered their very many resources with "Yeah but my belief". Okay, well what backs up your belief? Again, Scratch/Snap are backed up by decades of research, user studies, and deployments. It's not this one person's opinion what they're saying here.
Whereas with real languages you can get close to how things are done for real, which serve as a motivator and invoke curiosity.
Have you actually examined if this is true or do you just feel that it is true? Moreover, even if it is true, have you examined if this is the only and best way to do things for everyone or do you just feel it?
Okay but you're stacking your unsubstantiated belief based on a sample of just you against an entire field of research where people have dedicated their lives, so maybe you can understand why some people take it personally when you just call it BS off the cuff?
No, I usually don't understand why people take it personally if it's not directed towards anyone, but I do understand why it would come off as demeaning, so for that I apologize.
However it was not to the degree where this guy's response was warranted at all. Not one bit.
You're the one convinced you're right no matter what.
No. I never said I was right. I've literally multiple times said that it is MY opinion, and my view point, and that I'm simply saying what I think.
Okay, decades of research and whatnot, so is the conclusion that Snap is perfect for what it's intended and that there is no room for criticism or opposing views against it? Would I have to do decades of research in order to say anything about Snap? That would basically mean it's immune from criticism. We can say the same things about SAP for example.
again, I was replying to this comment:
I don't love graphical programming environments like this and Scratch and I can't quite put my finger on why I find them so unattractive.
> A big part of it is that you can, to some degree, learn programming from this. But you absolutely *cannot learn software engineering* from this.
I am not saying that it doesn't fill a niche, it's literally what I've already said, but I said that it doesn't mean that it is widely applicable, which is *totally fine*
Have you actually examined if this is true or do you just feel that it is true?
Yes, my experience was this. I never said it was for everyone, and you obviously know that, there's no way something will work for absolutely everyone
and I also haven't met basically anyone who learnt programming with Scratch or etc., it was mostly though playing around with real stuff in primitive ways and learning how things work until they became familiar.
I don't understand. There are a few people here who said they learnt programming through scratch, and that's great. However, I'm giving my own subjective experience and my thoughts as to why imo this is not as effective as some might claim, and especially for actually learning programming, not just gaining interest (which would be a small niche)
I think it's totally fine to give your own views, opinions and beliefs on a HN post subject, and I believe that progress happens through people communicating their own ideas and beliefs about things, from which others can then gain new perspectives outside of their own.
I also think it's very much against the hacker spirit to simply shut down everything because there isn't decades of research behind an argument.
You can discard all my beliefs and arguments here and that's totally fine. If they spark some idea or some theory, that's even better. Or if it's something you can relate to and go "oh so it's not just me!" that's also cool. Like how I felt with the original reply.
However it was not to the degree where this guy's response was warranted at all. Not one bit.
Agreed.
so is the conclusion that Snap is perfect for what it's intended and that there is no room for criticism or opposing views against it?
That's going too far in the opposite direction, no one has claimed that at all. Your opening post was "this is BS and just a toy, it's got no connection to the real world."
That was a strong negative statement so you've elicited strong pushback.
and I also haven't met basically anyone who learnt programming with Scratch or etc.,
Well what kind of people do you associate with? What age group? I'm 40, people my age learned Logo as kids, which was the first language of its kind but also quite old by the 90s when I learned it. Before Logo, no one really made languages for kids.
The last student I taught who reported having learned from Logo was in 2020 and he was from Greece, so I think it may have some special appeal there. Beyond that, most of my students (I have taught thousands) report having their first programming experience in Scratch, regardless of whether they are majoring in CS or not. I can count on one hand the number of students who started learning naturally via Python or Javascript or even HTML before being introduced by a teacher to Scratch.
I think it's totally fine to give your own views
It's totally fine to give your own views and you've spent many posts and many characters doing just that, so you haven't been impeded.
What I and others have are asking is for you to consider something beyond your own views. You've already acknowledged that probably you're not the target audience here, and it's exactly that: Scratch is not for you, and that's okay. That doesn't mean your way doesn't work when it works, but if you want to say something more about how far your method goes or Scratch's efficacy, you need something more than your own views.
Look, I'm actually with you -- I started programming on a mechanical typewriter at 5, and kept going from there. I love running enrichment programs for kids who are like that because you can give them anything and they'll just go with it. But really, only <1% of kids are like that.
That's going too far in the opposite direction, no one has claimed that at all. Your opening post was "this is BS and just a toy, it's got no connection to the real world."
Yes, the phrasing I used was simply to point out that without the possibility of giving my beliefs and thoughts, we'd end up in this loop where you could only chime in if you can back your arguments with all kinds of research and citations, which usually ends up shutting the conversation down entirely, because the people involved in such projects can do so but most can't.
Strong pushback is completely fine and I appreciate it. It's kind of what I try to aim for, because it allows us to get down to the truth, or something of value.
Well what kind of people do you associate with? What age group? I'm 40, people my age learned Logo as kids, which was the first language of its kind but also quite old by the 90s when I learned it. Before Logo, no one really made languages for kids.
I started programming at around 12, and many people that I know are in their 20-30s or so. I don't have experience with Logo or have heard of anyone in my circles using it.
Many of my friends began by tinkering with games, writing scripts for them or just writing basic scripts in Bash/Batch/JS/Python and moving to C#/C++ etc.
And I don't think Scratch is completely irrelevant, I just simply think that it is a very limited tool, it's got very few use cases, and that you're better off moving off of it sooner than later, rather than trying to use it for more complex projects or exercises.
What I and others have are asking is for you to consider something beyond your own views.
And I appreciate that, but I don't think this was simply the case (not talking about you)
for example my reply at https://news.ycombinator.com/item?id=49666774 , I was very upfront with what motivated me and what angle I was coming from, and Don seemed to reply to me trying to convince me that I was mistaken and that in fact it was very relevant and that it "teaches real CS at college level"
I then replied in the aforementioned post that I still didn't get it, and what my motivations were when getting into programming and why the examples he gave didn't change my opinions and why I felt like that.
You replied there with "nor is it to prepare students for study in a CS program." but that was part of my criticism because he claimed that.
Scratch/Snap is fine for what it is, as a way to get young kids interested in the simple primitives of programming and logic. That's great! But again, I think there's a reason why some people, including I, don't see the appeal of these for actual "programming", which is what he tried to show me it's useful for.
That's what I meant with "toy". It's not _really_ programming, and it's very niche, which you seem to point out with how young kids viewed it as an "extension of art and play"
And I absolutely agree, don't put a 5 year old on a bash terminal or an IDE, but I'm not talking about that here. Don was giving out links on Arduinos, Web APIs/IoT, ML/AI, sensors, etc. that's what I meant with "missing the mark"
But I know that even in e.g. where I live, if you join an after-school computer club or whatever, they will happily let you do simple Java courses (MOOCs), or at least they used to do so, even at like 6th grade.
Look, I'm actually with you -- I started programming on a mechanical typewriter at 5, and kept going from there. I love running enrichment programs for kids who are like that because you can give them anything and they'll just go with it. But really, only <1% of kids are like that.
Yes, that's why I'm aware that I may be missing something here, but I don't think even what you're pointing out here contradicts my core points, unlike with what Don tried to convey in his initial reply.
And the reason why I've kept engaging is because I thought that my point of view may be unique and maybe there could be something there which would explain why these kinds of "languages" don't work for specific situations or audiences. If it was just about it being a language for young kids to explore basic programming logic, I wouldn't have argued against it at all.
Comments
Okay but you're stacking your unsubstantiated belief based on a sample of just you against an entire field of research where people have dedicated their lives, so maybe you can understand why some people take it personally when you just call it BS off the cuff?
You're the one convinced you're right no matter what. You countered their very many resources with "Yeah but my belief". Okay, well what backs up your belief? Again, Scratch/Snap are backed up by decades of research, user studies, and deployments. It's not this one person's opinion what they're saying here.
Have you actually examined if this is true or do you just feel that it is true? Moreover, even if it is true, have you examined if this is the only and best way to do things for everyone or do you just feel it?
No, I usually don't understand why people take it personally if it's not directed towards anyone, but I do understand why it would come off as demeaning, so for that I apologize.
However it was not to the degree where this guy's response was warranted at all. Not one bit.
Okay, decades of research and whatnot, so is the conclusion that Snap is perfect for what it's intended and that there is no room for criticism or opposing views against it? Would I have to do decades of research in order to say anything about Snap? That would basically mean it's immune from criticism. We can say the same things about SAP for example.
again, I was replying to this comment:
I am not saying that it doesn't fill a niche, it's literally what I've already said, but I said that it doesn't mean that it is widely applicable, which is *totally fine*
and I also haven't met basically anyone who learnt programming with Scratch or etc., it was mostly though playing around with real stuff in primitive ways and learning how things work until they became familiar.
I don't understand. There are a few people here who said they learnt programming through scratch, and that's great. However, I'm giving my own subjective experience and my thoughts as to why imo this is not as effective as some might claim, and especially for actually learning programming, not just gaining interest (which would be a small niche)
I think it's totally fine to give your own views, opinions and beliefs on a HN post subject, and I believe that progress happens through people communicating their own ideas and beliefs about things, from which others can then gain new perspectives outside of their own.
I also think it's very much against the hacker spirit to simply shut down everything because there isn't decades of research behind an argument.
You can discard all my beliefs and arguments here and that's totally fine. If they spark some idea or some theory, that's even better. Or if it's something you can relate to and go "oh so it's not just me!" that's also cool. Like how I felt with the original reply.
Agreed.
That's going too far in the opposite direction, no one has claimed that at all. Your opening post was "this is BS and just a toy, it's got no connection to the real world."
That was a strong negative statement so you've elicited strong pushback.
Well what kind of people do you associate with? What age group? I'm 40, people my age learned Logo as kids, which was the first language of its kind but also quite old by the 90s when I learned it. Before Logo, no one really made languages for kids.
The last student I taught who reported having learned from Logo was in 2020 and he was from Greece, so I think it may have some special appeal there. Beyond that, most of my students (I have taught thousands) report having their first programming experience in Scratch, regardless of whether they are majoring in CS or not. I can count on one hand the number of students who started learning naturally via Python or Javascript or even HTML before being introduced by a teacher to Scratch.
It's totally fine to give your own views and you've spent many posts and many characters doing just that, so you haven't been impeded.
What I and others have are asking is for you to consider something beyond your own views. You've already acknowledged that probably you're not the target audience here, and it's exactly that: Scratch is not for you, and that's okay. That doesn't mean your way doesn't work when it works, but if you want to say something more about how far your method goes or Scratch's efficacy, you need something more than your own views.
Look, I'm actually with you -- I started programming on a mechanical typewriter at 5, and kept going from there. I love running enrichment programs for kids who are like that because you can give them anything and they'll just go with it. But really, only <1% of kids are like that.
Yes, the phrasing I used was simply to point out that without the possibility of giving my beliefs and thoughts, we'd end up in this loop where you could only chime in if you can back your arguments with all kinds of research and citations, which usually ends up shutting the conversation down entirely, because the people involved in such projects can do so but most can't.
Strong pushback is completely fine and I appreciate it. It's kind of what I try to aim for, because it allows us to get down to the truth, or something of value.
I started programming at around 12, and many people that I know are in their 20-30s or so. I don't have experience with Logo or have heard of anyone in my circles using it.
Many of my friends began by tinkering with games, writing scripts for them or just writing basic scripts in Bash/Batch/JS/Python and moving to C#/C++ etc.
And I don't think Scratch is completely irrelevant, I just simply think that it is a very limited tool, it's got very few use cases, and that you're better off moving off of it sooner than later, rather than trying to use it for more complex projects or exercises.
And I appreciate that, but I don't think this was simply the case (not talking about you)
for example my reply at https://news.ycombinator.com/item?id=49666774 , I was very upfront with what motivated me and what angle I was coming from, and Don seemed to reply to me trying to convince me that I was mistaken and that in fact it was very relevant and that it "teaches real CS at college level"
I then replied in the aforementioned post that I still didn't get it, and what my motivations were when getting into programming and why the examples he gave didn't change my opinions and why I felt like that.
You replied there with "nor is it to prepare students for study in a CS program." but that was part of my criticism because he claimed that.
Scratch/Snap is fine for what it is, as a way to get young kids interested in the simple primitives of programming and logic. That's great! But again, I think there's a reason why some people, including I, don't see the appeal of these for actual "programming", which is what he tried to show me it's useful for.
That's what I meant with "toy". It's not _really_ programming, and it's very niche, which you seem to point out with how young kids viewed it as an "extension of art and play"
And I absolutely agree, don't put a 5 year old on a bash terminal or an IDE, but I'm not talking about that here. Don was giving out links on Arduinos, Web APIs/IoT, ML/AI, sensors, etc. that's what I meant with "missing the mark"
But I know that even in e.g. where I live, if you join an after-school computer club or whatever, they will happily let you do simple Java courses (MOOCs), or at least they used to do so, even at like 6th grade.
Yes, that's why I'm aware that I may be missing something here, but I don't think even what you're pointing out here contradicts my core points, unlike with what Don tried to convey in his initial reply.
And the reason why I've kept engaging is because I thought that my point of view may be unique and maybe there could be something there which would explain why these kinds of "languages" don't work for specific situations or audiences. If it was just about it being a language for young kids to explore basic programming logic, I wouldn't have argued against it at all.