Comment by r_lee
13 hours ago
from someone who can remember how they even got into programming:
it's because this is BS and just a toy, it's got no connection to the real world.
from the angle of someone trying to make some toy to teach programming, maybe in their head it's like: oh this is so simple and easy it should work perfectly for teaching
but from my experience, most of my learning came from "whats this?" "how do i make a thing like this?"
this doesn't provide a way to accomplish that or to promote curiosity
I think same applies to basic CS courses teaching bits and bytes, it's not really useful to know what bits and bytes are if you don't understand what they're even used for or why you should know what they are
however, this is just my subjective point of view, maybe it differs for others.
Fair that your path worked differently for you.
But "no connection to the real world" is hard to sustain once you look at what people actually build with Snap!/Scratch. The ecosystem is full of bridges to physical stuff:
Cameras, microphones, audio, pen plotters, 3D (BeetleBlocks). Snap! 12.1 (video from a few days ago) adds body-language recognition, Bauhaus-style shape compositions, first-class Processes, translation updates:
https://www.youtube.com/watch?v=ID7wYxzHUAc
Arduino / micro:bit / boards (Snap4Arduino, MicroBlocks, many hardware libraries):
https://www.youtube.com/watch?v=Ltzlzk_zkys&list=PL5OeDsbY1E...
Robots (Finch, Hummingbird, Lego NXT, drones):
https://www.youtube.com/watch?v=6_0EqIbTlkk
Sewing machines (TurtleStitch -- embroidery from blocks; one of my favorites):
https://www.youtube.com/watch?v=K6ra5ThxkrE
Web APIs and IoT:
https://www.youtube.com/watch?v=l_P7MoBG250
ML/AI and digital fabrication (Ken Kahn's eCraft2Learn):
https://project.ecraft2learn.eu/
The "what's this? how do I make a thing like this?" curiosity you describe is exactly how a lot of people get pulled in -- making something move, blink, sing, or stitch on a machine they can see, rather than learning abstract syntax first. Blocks are the on-ramp; the project is the motivation.
Different audience than yours, maybe. But "just a toy walled off from reality" undersells what this community has been doing for decades.
Snap! also teaches real computer science at college level while staying accessible to kids -- not a stripped-down kiddie language. Brian Harvey: "Snap! is Scheme disguised as Scratch" (though he notes the original intent was closer to Logo disguised as Scratch):
https://forum.snap.berkeley.edu/t/hygienic-macros/3258/6
Re alanbernstein's point about keyboard vs GUI: Snap! is not keyboard-hostile. It has a keyboard editor for scripts -- build and edit whole scripts without the mouse, block search from the keyboard, infix arithmetic expressions typed left-to-right. Manual chapter:
https://docs.snap.berkeley.edu/user-interface-elements/#sec-...
Demo (typing formulas from the keyboard):
https://www.youtube.com/watch?v=ahHAl3p3gEU
Full IDE accessibility (screen readers etc.) is still a work in progress; Jens and Brian document what's there now:
https://github.com/jmoenig/Snap/issues/1498
I guess I just can't relate to it, because I was fascinated with the computing itself, not just getting from A to B as quickly as possible
so it wasn't the project that was the motivation, it was figuring out how to do it for real, and getting closer to expertise in programming
for example the TurtleStitch, I don't know how to say this exactly, but to me it doesn't strike as something that'd interest people who want to get into programming, but is more like a way to showcase how to do machined embroidery in an accessible way
I might be totally wrong, but my problem seems to be that a lot of this is just about showing off the capabilities of Snap, but it's not really something I would've engaged with for example?
like almost as if the ecosystem simply serves to show off Snap and thus misses the mark?
like Snap doesn't really provide a way to understand how stuff is actually done except for maybe simple logic. So I don't see how it'd be very useful for e.g. learning CS when it's not really something you'd see in the real world, i.e. you're learning a learning platform and some basic concepts
I guess my point is like, if it's not really something that's used in the real world, unlike say JS or Python, why use it instead of getting up to speed in a real language?
again, it could be that I simply don't get it, or that I'm not the target audience, but I feel like there's a reason why these haven't really taken off, and IMO there's no reason why they would need to, because they serve a very specific niche
>like almost as if the ecosystem simply serves to show off Snap and thus misses the mark?
No, I think you're the one missing the mark. And even if it shows off Snap! while teaching computer science, and students have something tangible, soft, and colorful to show off from the learning process, in what way is that missing the mark? What do you even believe the mark it misses is?
In no way are any of those modules I mentioned merely intended to simply show off Snap's capabilities. They have much more legitimate pedagogical purposes, and if you'd simply watch some of the Snap!Con presentations and videos I linked you to, you'd see and hear their developers and teachers and students show and explain what those purposes and results are.
I attended Snap!Con in Barcelona, played around with TurtleStich myself, and still have and cherish the cool textile artifacts (and also cool friends) I made.
And the TurtleStich presentation included live streaming video of students of diverse genders and cultures and ages enthusiastically showing off and talking about the beautiful physical objects they designed, programmed, made, presented to their parents and the conference, and are rightfully proud of, and discuss what they learned from the experience.
Trigger Warning: If diversity enrages you but Nazi salutes don't, then that's your own bigoted psychiatric problem.
Snap!Con 2021 - TurtleStitch: The Power of Diversity
https://www.youtube.com/watch?v=B-EGVQR9Aa4
>Over the last few years, the TS community has grown not only in size but also in diversity, integrating people from different cultures, ages and genders. We believe this has to do with the specific attraction that textiles generate. Every culture has a specific textile tradition which reaches directly into the daily lives of everyone, evocating both personal as well as collective memories, generating an affective field. The coding aspect allows rethinking this tradition from a contemporary point of view, creating a space that is open and not yet fully defined, inviting people to open experimental exploration.
>How this space is then explored, how the technical and the textile are combined, how machine and hand-craft are related and what kind of products -- tangible products of ones own learning and creativity -- are generated is deeply influenced by local conditions and personal preferences, providing the space of diverse articulation and, through the peer exchange on the platform, collaborative inspiration.
>In this talk, I will provide a short look back at the environment from which TurtleStitch emerged and give an overview of the current state. Voices from the TurtleStitch environment will provide their own perspectives on and use of TurtleStitch.
>Check out TurtleStitch at https://turtlestitch.org
In a nut shell or TL;DR for someone unwilling to put in the time and effort to learn or even consider evidence, and who talks about promoting curiosity but is incurious yourself, and who performatively refuses to recognize an obvious Nazi salute and feels compelled to repeatedly defend and praise Elon Musk after he does it twice in a row on international television: it's all about Constructivist Education, not promoting or showing off a product, or selling computer controlled embroidery machines, Arduinos, and robots, or even a cynical huckster perennially promising full self driving cars and trips to Mars.
https://en.wikipedia.org/wiki/Constructivism_(philosophy_of_...
>Constructivism is a theory that suggests that learners do not passively acquire knowledge through direct instruction. Instead, they construct their understanding through experiences and social interaction, integrating new information with their existing knowledge. This theory originates from Swiss developmental psychologist Jean Piaget's theory of cognitive development. [...]
>The formalization of constructivism from a within-the-human perspective is commonly credited to Jean Piaget. Piaget described the mechanisms by which information from the environment and ideas from the individual interact to form internalized structures developed by learners. He identified processes of assimilation and accommodation as crucial in this interaction, as individuals construct new knowledge from their experiences.
>When individuals assimilate new information, they integrate it into their existing framework without altering that framework. This can happen when their experiences align with their internal view of the world, but it can also occur if they fail to update a flawed understanding. Accommodation is the process of adjusting one's mental representation of the external world to fit new experiences. It can be understood as the mechanism by which failure leads to learning.
>Constructivism is not a specific pedagogy, but a theory explaining how learning occurs, regardless of the learning environment. However, constructivism is often associated with pedagogic approaches that promote active learning, or learning by doing. While there is much enthusiasm for constructivism as a design strategy, some experts believe that it is more of a philosophical framework than a theory that can precisely describe instruction or prescribe design strategies.[12] [...]
And that's not bullshit, just a toy, or disconnected from the real world, as you so wrongly claim. You're the one who's making unsupportable statements that are provably disconnected from the real world, my friend. And yours are knowingly false whoppers intended to offend sincere educators and defend trolling fascists, not polite white lies to spare people's feelings.