3 ms·
I'm with you except... For my side I did learn LOGO first in school. My son and daughter, I see they're being told Scratch. Why? Simple, they're learning on i
by keyle 3y ago
I'm with you except...
For my side I did learn LOGO first in school. My son and daughter, I see they're being told Scratch.
Why? Simple, they're learning on iPads, not computers with keyboards. Scratch Jr. has an iPad app where kids can drag and drop the visual programming blocks to do stuff.
That's why they go for Scratch and not LOGO anymore. I hope they will teach them LOGO at some point or I will.
- User23 3y agoI have mixed thoughts on this. On the one hand it feels obvious that this kind of lobotomized programming experience will be stultifying. On the other hand factorio shows what a gamified interface makes possible and I don’t see any reason it couldn’t be easily adapted for tablets.
- ece 3y agoMindustry runs on Android and iPad I see.
- maxbond 3y ago> On the one hand it feels obvious that this kind of lobotomized programming experience will be stultifying. As someone who learned to program in Scratch many years ago, don't worry about it. I've written in languages from Python to Assembly, I've worked professionally as a programmer, etc. It's fine. As far as I can tell, the best way to teach someone to program is to enable them to pursue their own projects and to help them when they get stuck before they get so frustrated they give up. (Maybe there are learning styles I'm not aware of, this is true of myself and of people I've met.) When I meet people who want to program but can't (which has happened approximately twice, one of them did come back to programming after a few years & succeeded), it seems to be because they didn't have access to sufficient support, and stupid issues (especially development environment issues) wore them down. Scratch is a tremendous help in both respects. It comes out of the box which cool stuff to do (eg, I made dumb games and animated little movies). It's simple enough for nonprogrammer adults (like teachers) to learn and help debug.
- DonHopkins 3y agoSnap! is like Scratch, but not at all lobotomized, with the full power of Scheme. Check out my other posting about it, and the links for lots more information. https://news.ycombinator.com/item?id=36755852 https://news.ycombinator.com/item?id=36755852
- DonHopkins 3y agohttps://people.eecs.berkeley.edu/~bh/hiding.pdf https://people.eecs.berkeley.edu/~bh/hiding.pdf 7. On the other hand, we are about to unveil a radical unhiding: showing users the innards of expressions and procedure bodies via macros and metaprogramming. The central feature making this possible is the ability to convert back and forth between executable code (the blocks and scripts that we've always had) and syntax trees: lists of lists of the individual blocks and constant values (such as text and numbers), the building blocks of expressions and scripts. That conversion overcomes the only weakness of block languages, namely, that programs aren't data, which makes them harder to manipulate programmatically. 7½. Pedagogically, this is an extension of the self-reflection by means of non-hidden continuations, which call attention to the sequence of events in executing a script, and which we inherited from Scheme. Continuations are conceptually simple for the implementor, since they already exist in any interpreter for any language, and it's just a matter of making them visible to users. But they're not conceptually simple for users! The fact that they can be called repeatedly, and from outside of the script in which they were created, feels like magic. And it is; it's the magic of "everything first class." But the point here is that we didn't add this feature in response to a specific pedagogic need. Rather, explicit continuations help advanced programmers write advanced programs, and a few library blocks. And they're a way to plant the flag of Scheme in Snap!, which was a big part of our motivation.
- OhMeadhbh 3y agoI think part of the point jgalt212 is making is LOGO is a language while scratch is an environment. LOGO very obviously maps from sequences of lexemes to actions while that association in Scratch is a bit muddied. You can open a code browser and start typing, but the whole environment is designed to allow you to do interesting things without every typing a line of code (well... maybe a few lines of code. But a LOT fewer than with LOGO.) I think it depends on what you're trying to teach kids. For young kids, scratch is probably a fine introduction to basic procedural coding (which is kind of funny since it's implemented in a descendant of the prototypical OO environment.) You can teach the same concepts with LOGO, and they did in the 70s. But it's a LOT easier to teach things like language processing and language concepts like recursion and evaluation with LOGO. But there's some question about whether or not kids younger than 8 or 9 can internalize these concepts. In the states we even hold off until around age 12 or 13 before introducing such things.