
Describes learning environments which allow children to master mathematical concepts through the use of computer assisted instruction.
The point of scratch is not to prepare students for the professional world of computing, nor is it to prepare students for study in a CS program.
Instead, it's to expose students to computational thinking at an early age in an accessible, age-appropriate way. It's the same reason we teach the Bohr model of the atom before exposing kids to orbitals and probability distributions -- the Bohr model is false but at least it can provide a model and scaffolding for future learning. They're not ready for real Python or Javascript yet. You as a child might have been, but scratch is for teaching all students, not just the ones with a preexisting aptitude for coding.
> 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?
Why do you feel like exposing young children to professional development tools is important? Have you ever tried to get a class of students up to speed in a real language? Give it a shot and it might answer a lot of your questions.
> it could be that I simply don't get it, or that I'm not the target audience
Yes, this is very likely. Few years back I did a survey of elementary school students and their opinions on programming. Young kids exposed to Scratch reported that programming was "fun", "exciting", "enjoyable" and "something they wanted to continue to do". They viewed it as an extension of art and play. On the other hand, older kids who were then exposed to Python and VS Code no longer reported feeling the same way about programming, instead using words like "frustrating", "hard", "confusing" and most damningly described it "like math class", the least popular subject among students.
Exposing kids to the frustrating and confusing path first is a good way to make sure no one wants to go into the field. You as a child would probably have pursued the field nonetheless, so I can see why Scratch doesn't seem like a good teaching tool to you.
> I feel like there's a reason why these haven't really taken off,
wdym Scratch is wildly popular with students and widely used throughout the world. You see people here in this thread stating it's what got them interested in programming. Something like Snap! is nice because it provides a higher ceiling for Scratch programmers. It's not as popular because it Scratch serves much of the role, but its existence is an important bridge for older students who will eventually transition to Python or Java.
For further reading that can explain the theory better than I can, see the writings of Alan Kay and Seymour Papert, especially Papert's book "Mindstorms".
This reminds me of the pedagogical philosophy of Seymour Papert, who was heavily influenced by the ideas of Jean Piaget. Piaget's "genetic epistemology" argues that knowledge and understanding is created by interacting with environments, which traditional educational approaches fail to provide.
Papert combined Piaget's ideas with the emergence of computing to argue that children should be taught subjects in a hands-on, exploratory way - and not just for teaching computing! The idea is that by programming in simplified languages, children can discover ideas in subjects like mathematics and grammar - deriving them as they try to solve problems instead of having them dictated to them.
Suppose that biology was taught in a game-like environment where students were designing cells or organisms in some way. Maybe the game could be structured so that each organelle could be "discovered" by the student as they designed the cell to survive in some environment. Perhaps that'd make the purpose of each cell component more grounded and memorable.
Papert's book Mindstorms covers all this in detail, and I highly recommend reading it. I feel like it's especially important today given fears of how AI will affect childhood education. At best, I hope that computing can be a boon to education instead of a detriment if it's woven into pedagogy thoughtfully.
I went a little nuts with modern anthropology and absolutely adore Giddens. He was actually the person I was visiting in London when I bumped into Graber. "The Consequences of Modernity" is a bit dense and filled with jargon, but I love it.
There was another post I commented on and mentioned "Everything Was Forever Until It Was No More," and while it's not a general-purpose discussion of how we model social systems, it is a great read. It's where the word "HyperNormalization" comes from and tells the story of the last generation of soviet citizens who noticed things weren't working too well, but grew up in a world where there were no alternatives to state bureaucracy and politics.
I also read a fair amount about pedagogy since I'm interested in structured systems of developing denotational systems for modeling human knowledge with the objective of communicating said knowledge. I love Sylvia Ashton-Warner. She wrote an autobiography called "Teacher" that's worth a read. I hung out with Seymour Papert and Cindi Solomon when I was a kid, so I have to mention Mindstorms. And Freire's "Pedagogy of the Oppressed" has some interesting bits if you can handle the 70s communista jargon. It's not full-on marxist, but if you're sensitive to such things, it can be distracting. But... what they all have in common is a framework for how to communicate (potentially) complex models and knowledge maps.
Read everything you can find by Jung, McLuhan and Claude Levi-Strauss.
"Eros and Magic in the Reniassance" by Ioan Cuilianu. Then read it again because it's hard to figure out what you just read when you only read it once.
For fun I've read some of the articles and books by Rory Sutherland.
Bret Victor [0], Andy Matuschak [1], and Seymour Papert [2] to point to a few names.
[0]https://www.youtube.com/watch?v=oUaOucZRlmE
[2]https://www.google.com/books/edition/Mindstorms/nDjRDwAAQBAJ...
Computer Lib by Ted Nelson. This used to be the, "Bible" before Nelson fell into relative obscurity. Ted Nelson was the first to coin the term, "Hypertext" in the 1960s after reading a famous article by Vannevar Bush
https://worrydream.com/refs/Nelson_T_1974_-_Computer_Lib,_Dr...
Mindstorms by Seymour Papert. Introduction to, "interfaces as pedagogy." This lays a foundation for, "what computer interfaces look like when you can use human intuition to work through them."
https://worrydream.com/refs/Papert_1980_-_Mindstorms,_1st_ed...
Jef Raskin was the original head of the Macintosh team. This treatise on humane design is invaluable and has been largely ignored. Any person that takes these ideas and makes them work will be a proverbial father of, "the next generation of computing."
https://archive.org/details/humaneinterfacen00rask
Douglas Engelbart who is often regard as, "the inventor of the mouse" founded his working philosophy by describing an operation paradigm for continued exponential improvement in groups. In some sense it's a masterwork in, "computer ethics."
https://www.dougengelbart.org/pubs/papers/scanned/Doug_Engel...
Early article describing Hyperlinking and aspects of the Internet some of which haven't been or have been under-realized. Imagine what, "social histories for extending research" would look like if taken seriously.
https://www.theatlantic.com/magazine/archive/1945/07/as-we-m...
Computers As Theatre by Brenda Laurel; "think of the computer not as a tool but a medium." Brenda is an actress that applied Aristotle's Poetics to computer design. An absolute foundational classic.
https://www.cs.cmu.edu/~social/reading/Laurel-ComputersAsThe...
Worthy mention: Alan Kay's Quora. This is a literal goldmine of insights into the history of programming languages and computing paradigms. He'll answer your question if it's meaningful.
https://www.quora.com/profile/Alan-Kay-11
Remember: computer paradigms have changed every few decades. We started with pontifications by philosophers about the foundations of mathematics to mechanical machines to vacuum tube machines to (skipping some things) huge mainframes to mini-computers to linked personal computers (Engelbart) to the Xerox Alto. We now live in a world of castrated, linked post-Altos and a failed realization of portable computers in the form of b̶r̶a̶i̶n̶w̶a̶s̶h̶i̶n̶g̶-̶o̶u̶t̶r̶a̶g̶e̶ ̶m̶a̶c̶h̶i̶n̶e̶s̶ smartphones. Ask yourself-- what comes next? How can we significantly improve computers for human beings?
