[HN Gopher] Scratch is the world's largest coding community for ...
       ___________________________________________________________________
        
       Scratch is the world's largest coding community for children
        
       Author : khochesh_kushat
       Score  : 584 points
       Date   : 2023-03-30 14:17 UTC (8 hours ago)
        
 (HTM) web link (scratch.mit.edu)
 (TXT) w3m dump (scratch.mit.edu)
        
       | nrjames wrote:
       | As a parent who used Scratch with their kids... it all started
       | out great and then veered into being an unregulated social media
       | network lacking any ability to create a space where they could
       | build and learn to code in private. It wasn't long before they
       | were doing it only for the likes and, without constant
       | supervision, trying to figure out how to join various groups and
       | challenges simply for the attention they would receive.
       | 
       | I really like the idea of Scratch, but I feel like parents and
       | teachers who use it in the classroom should have a way to create
       | for their kids accounts that are not part of the community
       | aspects of the tool. Kids don't need to be doing anything online
       | for "likes" at the age of 8 or 9.
        
       | disembiggen wrote:
       | I was obsessed with scratch as a child. It was my way in to
       | computer programming, and I've taught in schools using it. It's
       | an incredible tool and I'll hype it up any chance I get! It
       | really is a miracle!
        
       | Wasserpuncher wrote:
       | Ohh yes! We also use it at school.
        
       | ciconia wrote:
       | Both of my teenage kids are learning Scratch at school. They both
       | find it confusing and annoying, and I don't disagree. I believe
       | teaching them something like LOGO would have been much more
       | efficient and gratifying.
        
       | skulk wrote:
       | Scratch is why I got into software. One day, more than 10 years
       | ago, my dad showed me this weird program for making a cat move
       | around, and the rest is history.
        
       | trustingtrust wrote:
       | My 9 year old nephew today told me he wants to learn scratch. I
       | don't know where he heard that from but he was very specific
       | about it. Wow.
        
       | [deleted]
        
       | yalogin wrote:
       | Folks here who used scratch with their kids, what is the next
       | step after scratch? How did you introduce a language/platform to
       | your kid? I have introduced python and my kid is able to pick it
       | up, but am unable to come up with projects that sustain interest.
       | It feels dry without UI and one shouldn't be doing web dev with
       | python too. So what is the progression for python and kids?
        
         | empressplay wrote:
         | turtleSpaces is a text-based variant of Logo with both 2D and
         | 3D modes that runs in a web browser. Its syntax is very similar
         | to Scratch, and it's less picky about formatting (doesn't care
         | about white space, etc).
         | 
         | You can make 3D models (for printing), 2D artwork, and 2D and
         | 3D animations and games. Once they're able to create things
         | with turtleSpaces, it's much easier to move on to Python, Lua
         | or Javascript
         | 
         | https://turtlespaces.org/weblogo
        
         | JamesSwift wrote:
         | Roblox could be good. The marketplace is such that you can drop
         | them in and have them create practical things, while deciding
         | how in the weeds of actual coding they want to get into.
        
         | alexb_ wrote:
         | I think it's best to just leave them with scratch until they
         | get bored of it. Eventually, if they end up having a passion
         | for programming, the fundamentals built there will help them
         | immensly at picking it up. Be careful not to force your own
         | interests on your kids!
        
         | tropicaljacket wrote:
         | After scratch, we tried this:
         | 
         | - https://www.codemonkey.com/ (mix of block programming and
         | python) . Step by step guidance. A lot of kid-oriented UI/fun
         | stuff.
         | 
         | - https://codecombat.com/ (python or JS). Still have levels,
         | hint etc but the solution is less straightforward (sometimes
         | I'm even stuck trying to help my kid!)
         | 
         | - If your kid is advanced enough, try https://open.kattis.com/
         | 
         | One common problem that kids encountered that's not
         | straightforward is debugging simple coding issue (e.g. missing
         | colon, mixing variable names, etc.) Even with great guidance
         | from the platform, it's very common for kids to run into this
         | and the compiler error is not helpful. A parent/teacher with
         | programmer experience is needed to unblock.
        
         | jawns wrote:
         | For our kids, the progression has been:
         | 
         | - Scratch Jr.
         | 
         | - Scratch
         | 
         | - Replit
         | 
         | Scratch helps them understand programming concepts such as
         | variables, lists, conditionals, and events, but still in an
         | intuitive visual programming interface.
         | 
         | Replit gives the kids access to real programming languages (JS,
         | Python, etc.) but with lots of support, and the same "remix
         | other people's projects" culture.
         | 
         | Indeed, our kids have found that there are a LOT of Replit
         | users in their early teens (12-15), and they all help each
         | other out.
        
           | csmeyer wrote:
           | What projects do your kids complete on replit? Are they
           | following youtube tutorials or first party content from
           | replit?
        
         | moreati wrote:
         | https://www.hedy.org/ is billed as an incremental bridge from
         | Scratch to Python, with built in learning aids and teaching
         | aids.
        
           | ragebol wrote:
           | I used this with my scout group a while ago, kids 11-14. They
           | loved it and went way further with this than I ever expected.
           | 
           | Kids had no experience with any programming language, no
           | Scratch, no Python etc.
        
         | giraffe_lady wrote:
         | BBC microbit is a decent transition in my experience. It gives
         | a couple sensors and simple LED and sound output built in which
         | helps come up with ideas for playing around with it.
         | 
         | The IDE also allows you to switch back and forth between
         | scratch and, I think js or python, and see the code output of
         | the scratch you've written.
        
         | snowytrees wrote:
         | As someone who learned programming with scratch in elementary
         | school, the next step they did was using DrRacket but honestly
         | I did not like it. I don't remember anything I made with it but
         | still remember my scratch projects. I think pygame would be a
         | good next step as it is batteries included and let's you build
         | similar gui applications with an event loop. However, I haven't
         | used scratch since around 2010 so it could have evolved a lot
         | since I used it and the concepts might not translate anymore.
        
         | askvictor wrote:
         | MakeCode is pretty amazing. Options for it are the micro:bit,
         | an 8-bit arcade system, or Minecraft. Switches between block-
         | programming and Python or Javascript, so you have an easy path
         | to text programming.
         | 
         | For 'real' programming, once they have their python chops, have
         | a look at https://anvil.works
        
         | ronilan wrote:
         | [dead]
        
         | adunsulag wrote:
         | I put my kids through both scratch and khan academy javascript.
         | I've found that it helps them come to terms a lot with the
         | underlying mechanics of scratch and my oldest is now graduating
         | onto building web apps. When my child hits a hurdle and feels
         | like doing something easier they go back to scratch.
        
         | Uhhrrr wrote:
         | I showed my younger kid some stupid JavaScript tricks in the
         | browser developer console and he was off to the races, looking
         | up how to make splashy buttons and the like. So I got them the
         | "Get Coding" books, which are HTML/JavaScript. He's on to more
         | elaborate things now.
         | 
         | I also showed my older kid some JavaScript and Python after he
         | had messed around in Scratch for a while, and he was mildly
         | interested and then went off to do other things. So YMMV
         | because my mileage certainly varied.
        
         | somethoughts wrote:
         | I'm in the process of testing out the following on Middle
         | Schoolers:
         | 
         | microStudio includes all you need to write code, create sprites
         | and maps for your 2D game. All from your web browser. Your
         | project is stored in the cloud, accessible from anywhere.
         | 
         | Write your game code in microScript, a simple language inspired
         | by Lua. The documentation is always there to help. Create cool
         | demos in just a few lines of code.
         | 
         | microScript shines by its simplicity and interactivity. But you
         | can also code in JavaScript, Python or Lua if you prefer.
         | 
         | https://microstudio.dev
         | 
         | Also recently found https://www.solarus-games.org:
         | 
         | https://www.youtube.com/watch?v=Qq7rda5G6Lc
         | 
         | Starts out with some default RPGMaker style tools (i.e. tile
         | map editor, sprite manager, enemy manager, etc.) but subtly
         | introduces Lua to enable mods to the default game making tools
         | so you can make your own Zelda like games.
         | 
         | Wish me luck!
        
         | kgwxd wrote:
         | Roblox Studio is, by far, the most encouraging environment I've
         | see for kids. Being able to easily share a multiplayer 3D world
         | with friends is a HUGE motivator. My 6yo has been using it
         | almost daily for a few months now and things like Scratch never
         | held his interest for more than a few hours total. Only
         | downside is you need a decent PC for it to be usable.
        
           | Wowfunhappy wrote:
           | I've heard great things about Roblox Studio in isolation, but
           | it's just so unfortunate that it's tied to a proprietary
           | platform that uses dark patterns to profit off of children.
        
       | photochemsyn wrote:
       | I'd imagine learning at least a little Python alongside Scratch
       | would be more optimal than Scratch alone. It's like bilingual
       | education, it has great benefits although individuals may
       | gravitate towards a preferred option. Perhaps it's a bit like
       | comparing Minecraft to Factorio:
       | 
       | https://www.idtech.com/blog/scratch-vs-python
       | 
       | Looking around, it also seems possible to set up your own Scratch
       | server, which is comparable to setting up a Minecraft server,
       | then you could use Python to pound away via the Scratch API
       | (which is otherwise disallowed by the Scratch team on the public
       | Scratch servers, reasonably enough). That might be a good project
       | for older kids (teenagers).
        
         | hedora wrote:
         | JS is cleaner than Python for this, IMO:
         | 
         | https://developer.mozilla.org/en-US/docs/Games/Tutorials/2D_...
         | 
         | It's also more likely to run a few years from now, and it works
         | on tablets, grandpa's ailing windows box, etc.
        
         | hajile wrote:
         | Scratch now uses blockly under the surface and blockly itself
         | is written in JS. If you wanted to extend things, JS seems like
         | a more natural choice.
        
         | cyrialize wrote:
         | Other platforms similar to Scratch actually teach Python!
         | 
         | They start off with drag and drop coding and then Python. The
         | Python is actually pretty fun, you write code to make animals
         | move around and get stars.
        
           | knicholes wrote:
           | It's almost as if Python was designed to make it easy for
           | kids to learn how to program.
        
           | teucris wrote:
           | Which platforms are you referring to?
        
             | giovannibonetti wrote:
             | Not OP, but CodeWars is a platform I heard about that fits
             | the description
        
             | mstade wrote:
             | I think maybe Lego mindstorms does this.
        
             | askvictor wrote:
             | Not OP, but Makecode does this.
        
             | Elte wrote:
             | Also not OP, but I literally just learned about Hedy [1]
             | today. No experience except from clicking through it for 20
             | minutes, but it looks quite interesting, taking somebody
             | from a language with a very simple syntax (and limited
             | functionality) to full blown Python, one level at a time,
             | by making the language gradually more complicated (and more
             | powerful).
             | 
             | [1] https://www.hedycode.com/
        
               | pdm55 wrote:
               | I also quickly went through the basic tasks in 17 levels
               | of Hedy in about 20 mins. (I just know a little
               | programming.) Hedy is text-based and introduces ideas
               | such as: print, entering variables, if, else, repeat, ...
               | I really liked the gradual approach, which keeps you
               | going forward onto the next level.
               | 
               | There are additional tasks at each level (see tabs at
               | top) which I didn't try. It seems that these tasks are
               | best done from left to right in order to get the basic
               | idea of what is required.
        
               | em-bee wrote:
               | i found it very confusing that the introduction at each
               | level links to the next level but does not tell you to
               | try the exercises. i didn't even realize that the tabs
               | were exercises per level as i consider tabs a higher
               | level hierarchy compared to the previous/next buttons. (i
               | expect those to work within a tab, and not switch to a
               | different row of tabs)
               | 
               | and also, why introduce an echo command in level 1 only
               | to drop it in level 2? they could have waited and
               | introduced ask in level 2 or 3 even.
               | 
               | i love the quiz questions though, they even make me, as
               | an experienced programmer, think
        
               | rahimnathwani wrote:
               | Do kids who start programming with Hedy get confused
               | about when a piece of text is interpreted as a variable
               | vs. a string?
               | 
               | https://www.hedycode.com/hedy/2#default
               | 
               | The way it automatically detects variable within strings
               | seems to magical. OTOH AIUI Hedy has been developed
               | alongside research on what works for kids.
        
               | alephaleph wrote:
               | IIRC one of Hedy's unique features is that it gradually
               | increases in complexity as you "level up" including
               | introducing what we'd call "breaking changes". At level
               | 4, they start allowing _and requiring_ you to quote
               | string literals: https://www.hedycode.com/hedy/4#default
        
               | rahimnathwani wrote:
               | Nice!
               | 
               | I'm excited for my son to try it out once he's gotten
               | comfortable with scratch.
               | 
               | At the moment, he's more interested in the visual design
               | part of scratch than the programming, so I probably need
               | to find some cool existing animations to inspire him.
        
         | disembiggen wrote:
         | the thing I've found teaching is that the place scratch really
         | shines is teaching kids who are a bit too young to "get"
         | Python. I think it's related to their language/visual intuition
         | but a seven year old will be able to pick up quite complex
         | things in Scratch visually without being able to grasp fairly
         | basic things in Python. Give them a couple of years in the oven
         | with or without Scratch and they'll be much more confident and
         | ready in picking up Python, but scratch can teach them a lot in
         | the mean time.
        
         | eshnil wrote:
         | Snap language by SAP (snap.berkeley.edu) would be a better
         | stepping stone rather than directly going to industrial
         | languages. It's got first-class functions, first-class lists,
         | object-oriented programming, APL-style vector operations which
         | are very handy for media processing, machine learning etc,
         | continuations, ability to make HTTP calls etc - while keeping
         | the same playful environment as scratch.
         | 
         | Features like this enable serious study of computer science
         | possible with Snap: https://emu-
         | online.de/ComputerScienceWithSnap_2.pdf
         | 
         | There's even a variation for 3D geometries: beetleblocks.com
         | 
         | Scratch is immensely popular but with lack of reporter blocks
         | and lack of first-class lists, it encourages many bad
         | programming habits (global state, no datas tructures like
         | stack/queue/tree/graph etc. The one advantage it has over
         | SnapLang is that it has better performance for building
         | intensive games etc.
        
         | [deleted]
        
         | em-bee wrote:
         | etoys for squeak, which is somewhat similar to scratch (and
         | supposedly influenced its development) has the ability to
         | switch between blocks and the smalltalk code that the blocks
         | generate. so you can basically look under the hood (and also
         | change the smalltalk code)
        
       | __mharrison__ wrote:
       | "It's like Scratch but annoying" - One my of children's friends
       | when describing working with Python in hour of code.
        
       | martin1b wrote:
       | My kids love scratch. Excellent introduction to coding for kids.
       | Wish it was taught in schools more as it helps build methodical
       | cognitive thinking. I consider it modern BASIC.
        
       | zabzonk wrote:
       | i (a 69 year old c++ dev) use it for writing interactive xmas &
       | birthday cards - it really is great! give it a try.
        
         | samstave wrote:
         | Please post an example?
        
           | zabzonk wrote:
           | cannot - they are all personal
        
         | Turing_Machine wrote:
         | For sure. Though designed for kids, Scratch is a lot of fun for
         | adults as well. I encourage everyone to spend a little time
         | playing with it. I think you'll be impressed.
        
       | throw0101b wrote:
       | If any parents live in Toronto, the TPL has programs for kids
       | (9+) on Scratch at various branches:
       | 
       | * https://www.torontopubliclibrary.ca/search.jsp?Ntt=Scratch+C...
        
       | moneywoes wrote:
       | Is there monetization?
        
       | csmeyer wrote:
       | When people use scratch with their kids, what tutorials do they
       | follow? Do they try and figure things out from first principles,
       | or are their popular content creators who make stuff? How do
       | people transition their kids from scratch to Python? From my
       | experience teaching, it seems like it's really hard for kids to
       | make that transition.
        
         | khochesh_kushat wrote:
         | There's an official YT channel with lots of small simple game
         | tutorials.
        
         | NDizzle wrote:
         | Great questions, and good timing. My daughter asked about
         | learning "line programming" instead of "block programming"
         | yesterday.
         | 
         | Finally, out of 3 kids one is interested! Now what do I do?!
         | Python, I'm assuming, but following what curriculum?
        
           | jalk wrote:
           | How about p5.js Graphics centric which imo is easier to keep
           | kids engaged. The coding train yet channel has tons of videos
           | on P5.js
        
         | ocfnash wrote:
         | There is a marvelous app designed to solve exactly this problem
         | called Pytch: https://www.pytch.org/app/
        
       | berkle4455 wrote:
       | With LLM's, Scratch is probably a closer interface to the sort of
       | programming we'll all be doing in the near future.
        
         | quonn wrote:
         | When the managers have do this ,,programming" themselves they
         | will go back to letting developers pick their tools. Just like
         | now.
        
       | memco wrote:
       | Haven't worked with scratch myself, but I do enjoy HelloComics'
       | stream where they're making a pretty fun looking 2d metroidvania
       | style game in Scrtatch. If you're interested in seeing how it
       | could be used for a large scale project it might be worth a look:
       | https://m.twitch.tv/hellocomics.
        
         | CoryAlexMartin wrote:
         | He's actually using Stencyl, which has a programming interface
         | based on Scratch.
        
       | maliker wrote:
       | I would have guessed Roblox was the largest. 214 million monthly
       | active Roblox users in Feb 2023, assume only 20% are kids
       | actually building something so 43 million, beating scratch's 36
       | million monthly unique visits [1]. Still awesome how huge Scratch
       | has become.
       | 
       | [1] https://scratch.mit.edu/statistics/
        
       | diego_sandoval wrote:
       | I Learned to program using Microsoft Small Basic. I was 14 and
       | the experience was really good. I learned through the PDF
       | tutorial [1], which now has also been translated to HTML
       | documents [2].
       | 
       | And I think that if I had been 9 years old when I learned, I
       | would have still chosen to use Small Basic rather than Scratch.
       | Block-style coding _feels_ less versatile than text. It may look
       | more attractive to some kids, but I would also suppose that some
       | kids would rather use a text-based language.
       | 
       | Graphic capabilities in Small Basic were still really easy to use
       | (look at the PDF from chapter 6 onwards).
       | 
       | [1]
       | https://download.microsoft.com/download/9/0/6/90616372-C4BF-...
       | 
       | [2] https://smallbasic-
       | publicwebsite.azurewebsites.net/tutorials...
        
       | thesausageking wrote:
       | My 8 yo loves Scratch. She's made over 30 apps with it and has
       | had a great time. However, now that she's reached the limits of
       | what it can do, I have been frustrated that there isn't a natural
       | place for her to graduate to. And Scratch does get really limited
       | quickly.
       | 
       | There are unofficial forks like SheepTester's one which let you
       | drop JavaScript into Scratch projects, but they're not easy to
       | use. We've failed a few times trying to setup it and make her
       | successful with it. And it also requires you to know JavaScript
       | moderately well.
        
         | 123pie123 wrote:
         | my kids really like CodeCombat
         | 
         | https://codecombat.com/
        
           | nwinter wrote:
           | Thanks for the mention! We are working on a side-by-side
           | blocks-and-code mode with two-way sync that should be pretty
           | good for this.
        
         | easrng wrote:
         | Snap _!_ has already been mentioned, but another scratch mod
         | that has more extensions available (and is faster and has more
         | options) is Turbowarp (https://turbowarp.org/)
        
         | john-tells-all wrote:
         | Agree. My nephew has made _800_ Scratch projects, which is
         | mind-blowing. I 'd _love_ to offer him a smooth path to other
         | development. However:
         | 
         | - Python has graphics, but it's a very steep climb from the
         | simple drag-and-drop of Scratch
         | 
         | - Javascript has easy UI elements, but he'd have to learn HTML
         | and other things
         | 
         | Scratch is so different from "straight" programming, I'm not
         | sure if it's worth his time to learn JS and then translate his
         | Scratch knowledge to it.
        
           | mkehrt wrote:
           | Possibly Processing? or processing.js?
           | 
           | The Coding Train on youtube (run by Daniel Shiffman)
           | (https://www.youtube.com/channel/UCvjgXvBlbQiydffZU7m1_aw)
           | has some great tutorials.
        
           | birdyrooster wrote:
           | It's so wonderful how prolific children can be when they get
           | excited about something.
        
           | skeaker wrote:
           | A younger relative of mine did a course through code.org a
           | few years ago. I remember it being essentially Javascript but
           | you could toggle to a code blocks view and could drag-and-
           | drop some HTML elements so you wouldn't have to worry about
           | the HTML side. Not sure if the actual courses are any good,
           | but it might be similar to what you're looking for.
        
         | keithjl wrote:
         | I'd make a case for any node-based scripting language in 3D
         | modeling software. Blender or Grasshopper for Rhino comes to
         | mind. Benefit of Grasshopper is that there are convenient
         | Python or C# nodes for you to write scripts that can't be
         | expressed through nodes (IE loops); downside is that it is paid
         | software (although not subscription based!!).
         | 
         | For architecture/design students, Grasshopper is usual their
         | first introduction to programming and algorithmic thinking, and
         | many students become fantastic programmers by extension.
        
         | mkehrt wrote:
         | Possibly Processing? or processing.js?
         | 
         | The Coding Train on youtube (run by Daniel Shiffman)
         | (https://www.youtube.com/channel/UCvjgXvBlbQiydffZU7m1_aw) has
         | some great tutorials.
        
         | lkajslkjdd wrote:
         | The Microsoft Makecode editor allows you to switch between
         | block and JS, which can help with this.
         | 
         | More embedded orientated but still an interesting idea.
         | 
         | https://makecode.microbit.org/#editor
        
         | brw12 wrote:
         | [I was an engineer at Scratch for 4 years]
         | 
         | The "what do we do after Scratch" question is tricky! There's
         | no super clear answer (and a big market opportunity!)
         | 
         | It is important for people getting deeper into programming to
         | learn a text-based language. But I do want to say that you
         | don't need to _stop_ using Scratch -- lots of adults use it,
         | and it 's really great for many things... e.g., this memory
         | portrait of my mother sewing when I was young
         | https://scratch.mit.edu/projects/646805603
         | 
         | Several comments here have hit on the visual UI as an element
         | of Scratch that other languages don't have as readily.
         | 
         | Another element is the sharable context: you can make a Scratch
         | project with others' enjoyment in mind; your project doesn't
         | have to have another purpose besides being fun to play with.
         | 
         | So for moving on to other programming languages, I think the
         | key is to identify compelling projects and to find (or build)
         | small communities which will use those projects.
         | 
         | E.g.:
         | 
         | * sites like replit and Glitch and Github Pages and val.town
         | where the whole idea is to make a small program (or piece of a
         | program), publish it instantly, share it with others and remix
         | others' programs
         | 
         | * making a choose your own adventure-style or Zork-style text
         | game
         | 
         | * Advent of Code https://adventofcode.com provides a massive
         | multiplayer experience where you know you're solving the same
         | project as thousands of other people
        
           | em-bee wrote:
           | etoys for squeak has the ability to switch between blocks and
           | code, as a way to learn about the code that the blocks
           | generate.
           | 
           | it would be interesting to have a programming language that
           | is essentially a text form of scratch and that can drive the
           | same animations so that you could learn the text syntax and
           | continue creating the same games, or even translate from one
           | to the other.
        
         | RRWagner wrote:
         | Maybe this: https://snap.berkeley.edu/
        
         | leobg wrote:
         | What app/device are you using? Looking for something like this
         | for my 6 year old.
        
       | Joeri wrote:
       | Scratch also really lets you focus on one concept at a time. My
       | son followed a programming course in scratch and the entire first
       | lesson was about sequence, they learned to drag one instruction
       | after another and saw how the order of steps impacted the result.
       | I would have never conceived of explaining something as basic as
       | sequence first, but scratch is ideal for that because it doesn't
       | require any boilerplate.
        
       | bastardoperator wrote:
       | Can you run scratch locally?
        
         | khochesh_kushat wrote:
         | Yes: https://scratch.mit.edu/download/
        
           | Kon-Peki wrote:
           | My kids got started with Scratch 1.4 on a Raspberry Pi.
           | That's as far as we've gone with it. Scratch 2 was a lost
           | cause from the start, and Scratch 3 leans way too hard into
           | the "community" aspect of it. It's really too bad.
        
             | em-bee wrote:
             | in what way does it lean to hard into community? you can
             | run scratch 3 offline, without any community at all.
        
       | singhrac wrote:
       | I am a Scratch-taught programmer in that I played with Scratch in
       | 5th grade and ended up programming professionally. It was great
       | and I'm sure they've done a good job with it since. I'm very,
       | very grateful.
        
         | [deleted]
        
       | cgk wrote:
       | Full disclosure: Principal Software Engineer here on the Scratch
       | backend...
       | 
       | Scratch is not built to be a "teach your kid programming
       | languages" system, it is based on the work and ideas of the Life
       | Long Kindergarten group at the MIT Media Lab (the director of
       | this group is Professor Mitch Resnick, the LEGO, Papert Professor
       | of Learning Research). The Papert part is where the term
       | Mindstorms comes from (https://www.amazon.com/Mindstorms-
       | Children-Computers-Powerfu...) and was used by the Lego Group
       | when branding those products, and our philosophy is heavily
       | influenced by that.
       | 
       | I can say that the https://scratch.mit.edu/statistics/ are real
       | and we have a substantial footprint of backend services and
       | custom software to support it. We handle on the order of 15-20
       | million comments/month.
       | 
       | The primary design philosophy is:
       | 
       | Passion: You have a strong interest in a subject/problem to
       | solve/explore Projects: Build something based on your passions,
       | gain directly interactive experience with it. Peers: Share your
       | work with folks who are interested and provide feedback to you
       | Play: It should be fun!
       | 
       | Note that there is nothing in there about STEM/STEAM nor
       | application development. We build and support Scratch to provide
       | creative tools for anyone to explore computation in a from that
       | is relatable and has a low floor for understanding/entry. Having
       | said that, the complexity of what Scratch can do rises sharply
       | the more you work with it and the concepts behind "forking" and
       | opensource are built in via the remix ability on individual
       | projects.
       | 
       | A lot of design thinking goes into the frontend of Scratch to
       | build on a creativity feedback loop that is not focused on
       | learning Python or any other specific language (or the syntax of
       | them, i.e. avoid "why isn't my program working... oh, one too
       | many tabs... or maybe this semi-colon, or maybe this .")
       | 
       | Another part I think is worth raising, the Scratch frontend is a
       | sophisticated virtual machine interpreter that has it's own
       | machine code and model that is executing in a Javascript
       | environment in browser and it is still open source. Google's
       | Blockly project was based on the ideas of Scratch 1.4 and when we
       | ported Scratch 2 away from being Flash based, we partnered with
       | the Blockly group to fork their code base and create Scratch
       | Blocks.
       | 
       | Based on the TIOBE index, we're usually somewhere in the top 20
       | most popular "programming languages". _eat it Fortran!_
        
         | outworlder wrote:
         | Scratch really seems to be well-designed, from what I've seen.
         | 
         | I actually wanted to use Scratch to program Home Assistant
         | automations. My day job is enough 'serious' programming
         | already. Plus maybe my family would be able to modify some
         | automations.
        
         | Mixtape wrote:
         | While I have the chance here, I want to say thanks to you and
         | your team for the amazing work that you all are doing. I doubt
         | you need further validation, but believe me when I say that the
         | ideas you're describing do work. My entire career in CS started
         | with Scratch in intermediate school (somewhere between 2010 and
         | 2012). Having an interface with a low barrier to entry,
         | particularly for someone whose economic situation didn't allow
         | for engagement with more sophisticated tools, allowed me to
         | begin engaging with computing in ways that I'm not sure I
         | would've been able to otherwise. It was also a bonding
         | experience for my peer group and provided me with a shared
         | interest to meet people over. At the precipice of graduating
         | with a bachelor's in CS, I've been reflecting a lot on how I
         | get here, and Scratch certainly played no small part in that
         | process.
        
         | 123pie123 wrote:
         | >"Scratch is not built to be a "teach your kid programming
         | languages"
         | 
         | You might want to change the wikipedia page that describes you
         | to the whole world
         | 
         | (from the first line of wikipedia)> Scratch is a high-level
         | block-based visual programming language and website aimed
         | primarily at children as an educational tool for programming,
         | with a target audience of ages 8 to 16.
         | 
         | I would say scratch is a brilliant first language for children
        
         | varun_ch wrote:
         | Thank you for the amazing work you and the Scratch Team do. I
         | want to second the comment that Scratch works. I'm 16 years old
         | and I discovered Scratch when I was 7. Soon I will be starting
         | my professional career (hopefully something in computer
         | science/engineering/cybersecurity), and it's all thanks to
         | Scratch and the amazing community you have fostered. I don't
         | think I would have ever even considered computers as something
         | interesting to me unless I discovered Scratch.
         | 
         | Thank you.
        
         | mjb wrote:
         | > We build and support Scratch to provide creative tools for
         | anyone to explore computation in a from that is relatable and
         | has a low floor for understanding/entry.
         | 
         | I love this philosophy. Computing is so much more than
         | application development. It's a creative tool, and exploration
         | tool, a tool for finding insight and exploring spaces. Giving
         | people access to those tools without gatekeeping or accidental
         | complexity is fantastic.
         | 
         | The popularity "you need to start with SICP" and "BASIC
         | mutilates programmers" lines of thinking have done so much
         | damage to the way we, as an engineering community, think about
         | the role of computation in society.
        
         | dfex wrote:
         | I grew up with Applesoft BASIC and later HyperCard - as a kid,
         | I was never a "Developer", but I was always curious - the fact
         | that I could take someone else's source code and change it to
         | my will felt like a superpower.
         | 
         | Now Scratch has more than filled that gap for my own children,
         | and while they may never choose to pursue a career in IT, the
         | fact that they are able to explore the field so easily is
         | invaluable and may help them down the line.
         | 
         | Thanks to you and your team for all you do!
        
         | plttn wrote:
         | Remembering back to when I was a kid, Scratch was absolutely
         | fantastic, and definitely helped me put me on the path I am
         | today. Fantastic work.
         | 
         | With that said (and apologies on using the power of HN here),
         | I've been trying to get in touch with Scratch support to have
         | an old account of mine deleted, but I can't ever seem to get a
         | reply. Would you happen to know who to get in touch with, other
         | than the contact form?
        
           | brw12 wrote:
           | [I was an engineer at Scratch for 4 years]
           | 
           | My suggestion is to try using the contact form again. Sorry
           | that isn't more helpful.
        
         | zem wrote:
         | scratch seems like a good candidate to be the next flash, in
         | the sense of an authoring tool that makes it easy to create and
         | share little games. do you have any theories as to why scratch
         | games haven't taken off the way flash games did back in the
         | day?
        
       | JustinGarrison wrote:
       | If you're interested in what's on the backend I interviewed one
       | of the infrastructure engineers and talked about it here
       | 
       | https://youtu.be/QrBztSqCmlk
        
         | em-bee wrote:
         | why did you cut out the actual interview? i'd have been
         | interested in that as well, and learn what you derived that
         | whiteboard from.
        
       | Retr0id wrote:
       | They're selling it short - it's the largest coding community full
       | stop.
       | 
       | "As of 15 February, 2023, community statistics on the language's
       | official website show more than 123 million projects shared by
       | over 103 million users, over 804 million total projects"[1]
       | 
       | Compare to GitHub:
       | 
       | "As of January 2023, GitHub reported having over 100 million
       | developers and more than 372 million repositories"[2]
       | 
       | Of course, the average Scratch user is very different from the
       | average GitHub user, and the average Scratch project is very
       | different from the average GitHub repo - but the numbers don't
       | lie (probably).
       | 
       | [1] https://scratch.mit.edu/statistics/
       | 
       | [2] https://github.blog/2023-01-25-100-million-developers-and-
       | co...
       | 
       | Edit: Somewhat tangentially, bear in mind that Scratch publicly
       | launched in 2007. The first generation of Scratch learners are
       | now adults with jobs in-industry, who appear from time to time on
       | the front page of HN ;)
        
         | __mharrison__ wrote:
         | Pretty sure Excel is the largest coding group in the world,
         | they just don't share their code in Github.
        
           | spullara wrote:
           | You have to wonder why there isn't a huge online excel
           | community.
        
             | fredsmith219 wrote:
             | They're all in sleeper cells.
        
             | zimpenfish wrote:
             | Shame?
        
             | FigmentEngine wrote:
             | they work in single cells...
        
           | Retr0id wrote:
           | "Community" being the key word.
        
             | TeMPOraL wrote:
             | All Microsoft needs to do here is to include a stripped
             | down IM inside Excel, a blend between MS Teams and
             | Chatroulette, but with a twist: it will upload what you're
             | working on to Bing to take a look at, group you with others
             | whose Excel sheets are closest to your in the latent space,
             | and connect you all in a group chat.
             | 
             | Like magic, fluid, self-associative communities.
        
               | idinnoaname wrote:
               | I can see why this got down-voted, but seeing this in
               | fruition would be quite interesting.
               | 
               | Of course, this would probably require sharing internal
               | corporate data which is a big no-no.
        
               | bobthepanda wrote:
               | I wonder if you could have this where the chat just
               | tokenizes or minifies code on the client and spits out
               | human readable made up stuff on the other end.
        
               | thebigshane wrote:
               | sounds like the new Microsoft Loop product/service
               | announced a few days ago
               | 
               | https://www.microsoft.com/en-
               | us/microsoft-365/blog/2023/03/2...
        
             | zamnos wrote:
             | I have _never_ seen a programmer as excited to tell me
             | about something like, say, Duff 's Device as I've seen one
             | excel user hear another ask "what're pivot tables"? and to
             | have the other reply "Let me show you..." That may have to
             | do with the kind of party I end up at, but "helping each
             | other out" is a rather important feature of any community.
             | There are also Excel championships with a prize.
             | https://www.fmworldcup.com/excel-esports/microsoft-excel-
             | wor...
             | 
             | When's the last time you got a prize for programming
             | outside of your paycheck or a signing bonus? Communities
             | definitely have shared events and what better shared event
             | than a competition?
        
               | Retr0id wrote:
               | I'm amused that's still going, one of my classmates
               | qualified for and attended the Word championship hosted
               | in Vegas many years ago.
               | 
               | As for programming prizes, "last week" if we're counting
               | bug-bounties, "a few years ago" if we're counting CTFs,
               | and 5 years ago if we're not.
               | 
               | Clearly there _is_ an Excel community in the general
               | sense but as far as I know it isn 't centered around any
               | particular venue - at least, not one at the scale of
               | GitHub or Scratch
        
               | zamnos wrote:
               | Infosec is a community unto itself. What was the
               | competition 5 years ago?
        
         | Wowfunhappy wrote:
         | Every time you open a new instance of the Scratch editor,
         | Scratch saves it as a new project. It's still a huge number but
         | a bit skewed compared to e.g. Github.
        
           | hnbad wrote:
           | 103 million users is still more than 100 million developers
           | though, even if you disregard the number of projects.
        
           | pftburger wrote:
           | Haha pretty sure GitHub counts pointless forks and generator
           | projects though
        
             | Wowfunhappy wrote:
             | Scratch has their version of a fork, called a "remix".
        
             | [deleted]
        
         | charcircuit wrote:
         | Is scratch counting remixes in the total projects? I doubt
         | Github is counting folks.
         | 
         | Also sharing raw user count doesn't mean much. I have a
         | suspicious github deletes far more bot accounts than scratch
         | does and really we should care about something like MAU which
         | takes into account retention.
        
           | sokoloff wrote:
           | Why wouldn't _github_ count forks? I have several repos
           | forked with my own local changes. (I also have some repos
           | forked without changes.) They should absolutely count forks
           | with commits on them at the very least.
        
         | munificent wrote:
         | By that metric, gist.github.com is probably the world's largest
         | coding community.
        
         | qznc wrote:
         | The numbers do lie I think. I have two Github accounts (work
         | and private). My single Scratch account is also used by my two
         | kids. So Scratch might be even more ahead.
         | 
         | On the other hand, your numbers are accounts, I assume. Not
         | active users
        
           | wizzwizz4 wrote:
           | Many Scratchers hop between accounts like they're... well,
           | accounts in a computer system. Last I checked, the average
           | (among active Scratchers) seemed to be about 4 accounts per
           | person.
        
         | n3storm wrote:
         | Many kids created several user profiles. Most of the times when
         | they "level up" and for example "learn functions" (custom
         | blocks), instead of create new projects with the learning old
         | ones they create a new user profile so I would at least divide
         | 103 million users by two.
        
           | Retr0id wrote:
           | Anecdotally, I have at least 3 GitHub profiles
        
             | Wowfunhappy wrote:
             | Note that Scratch does not require users to verify their
             | email addresses (although some functionality is
             | restricted), so the barrier to entry is somewhat lower.
             | 
             | Even for confirmed email addresses, Scratch is super lax in
             | terms of what they'll accept. My company (a childrens'
             | coding enrichment program) probably has upwards of a
             | thousand Scratch accounts attached to a single gmail via
             | "+" aliases, and Scratch doesn't care at all.
        
             | datkam wrote:
             | I have many profiles on any platform that I use a lot (at
             | least 15 on HN and 15 on reddit).
        
               | freedomben wrote:
               | Genuine question: why? I only have one, and I wonder if
               | I'm missing something.
        
               | Tade0 wrote:
               | Anecdata: my sister had a additional Facebook account for
               | gaming on this social media platform and adding strangers
               | as friends for related bonuses without running the risk
               | of inviting stalkers.
               | 
               | EDIT: additional, not "duplicate", which would imply any
               | of the personal data was similar - it was of course
               | fictional.
        
       | sobkas wrote:
       | But for how long programming will be an useful skill? Because if
       | it become a hobby/toy it will have to compete with other
       | activities that are more fun/fulfilling. Or it could become part
       | of existing hobbies eg. let's write software for onboard computer
       | in this model rocket.
        
       | pcwalton wrote:
       | Scratch is brilliant, and the research that has gone into
       | creating a visual programming language has paid off handily. I
       | wish that node-based visual scripting systems like Unreal
       | Blueprints (and, to a certain extent, things like Blender Shader
       | Nodes and Geometry Nodes+) worked more like Scratch:
       | 
       | 1. Edges in node-based programming get tangled easily and it
       | becomes hard to read. Scratch has no visual edges: the pieces
       | snap together, making it easy to visually follow the flow.
       | 
       | 2. Having to manually drag nodes around is a chore. Scratch does
       | automatic layout within individual functions.
       | 
       | 3. Some node-based systems use colors to distinguish types. This
       | is inherently less readable than the different shapes that
       | Scratch uses.
       | 
       | 4. Scratch is structured programming, unlike node-based systems
       | which are essentially based on GOTO.
       | 
       | 5. Visual programming systems based on nodes have no easy way to
       | step up to text-based programming languages, unlike Scratch which
       | follows the form of standard source code. This is largely because
       | of (4): nodes are based on GOTO, which is not how modern
       | programming languages work.
       | 
       | + Node-based programming is more defensible when there's no
       | control flow, such as with common shaders, but I still think it'd
       | be worthwhile to try something like Scratch in this domain,
       | perhaps modified a bit to better visualize "pipeline" workflows.
        
       | GaggiX wrote:
       | Everyone talks about their kids trying Scratch but I'm pretty
       | young myself, I remember playing with Scratch when I was a kid,
       | very simple games that I would then show my friends. It was a fun
       | experience.
        
       | adolph wrote:
       | Scratch also has a plugins for BBC Micro:bit and Lego Boost. They
       | work well although the old Boost hardware is lacking storage so
       | only works in Bluetooth tethered mode. The solutions have two
       | parts: 1. a side application to facilitate the Bluetooth
       | connection from the web browser to the device; 2. additional
       | block types to control the servos etc.
       | 
       | https://scratch.mit.edu/microbit
       | 
       | https://scratch.mit.edu/boost https://scratch.mit.edu/boost
        
       | davepeck wrote:
       | Seattle Public Schools participates in code.org's "hour of code"
       | program, which introduces students to programming in general and
       | to the (delightfully good) free resources and programming
       | environments on both code.org and scratch.mit.edu. My daughter
       | had her first "hour" in first grade and it stuck; she loves
       | toying with scratch and making little games. Both organizations
       | are doing amazing work.
        
         | varun_ch wrote:
         | Hour of Code is wonderful. I think my old school was one of the
         | first to try it, in 2013 or 2014, and that's how I discovered
         | my love for computers. It's a really great initiative that has
         | no doubt impacted thousands of people around the world. I hope
         | Hour of Code and Scratch continue to exist for years to come.
        
       | dang wrote:
       | Related. I'm a bit surprised there hasn't been more (most of
       | these threads were small). Others?
       | 
       |  _Ask HN: Alternatives to Scratch for a blind child?_ -
       | https://news.ycombinator.com/item?id=34229502 - Jan 2023 (67
       | comments)
       | 
       |  _Ask HN: is learning Elixir suitable for a kid who currently
       | uses MIT's Scratch?_ -
       | https://news.ycombinator.com/item?id=32242897 - July 2022 (4
       | comments)
       | 
       |  _Show HN: CodeStruct - Python programming environment for
       | novices after Scratch_ -
       | https://news.ycombinator.com/item?id=32232110 - July 2022 (5
       | comments)
       | 
       |  _Show HN: PickCode - An educational coding environment for
       | students after Scratch_ -
       | https://news.ycombinator.com/item?id=32230329 - July 2022 (32
       | comments)
       | 
       |  _I made advanced BI queries with Scratch puzzle pieces_ -
       | https://news.ycombinator.com/item?id=32130444 - July 2022 (20
       | comments)
       | 
       |  _Scratch is a big deal_ -
       | https://news.ycombinator.com/item?id=32120445 - July 2022 (296
       | comments)
       | 
       |  _Linux Kernel Module written in Scratch (a visual programming
       | language for kids)_ -
       | https://news.ycombinator.com/item?id=31921996 - June 2022 (38
       | comments)
       | 
       |  _Snap is Scheme disguised as Scratch [pdf]_ -
       | https://news.ycombinator.com/item?id=28337196 - Aug 2021 (40
       | comments)
       | 
       |  _Syllabus for teaching Scratch programming to kids_ -
       | https://news.ycombinator.com/item?id=24633742 - Sept 2020 (2
       | comments)
       | 
       |  _Show HN: My 10 yr olds recent scratch creations_ -
       | https://news.ycombinator.com/item?id=23892698 - July 2020 (9
       | comments)
       | 
       |  _Scratch: Block-based visual programming language_ -
       | https://news.ycombinator.com/item?id=22854218 - April 2020 (10
       | comments)
       | 
       |  _Recursion and Fractals_ -
       | https://news.ycombinator.com/item?id=21879638 - Dec 2019 (19
       | comments)
       | 
       |  _Scratch 3.0_ - https://news.ycombinator.com/item?id=18810216 -
       | Jan 2019 (110 comments)
       | 
       |  _Game of Life in Scratch_ -
       | https://news.ycombinator.com/item?id=14625653 - June 2017 (7
       | comments)
       | 
       |  _How Scratch teaches kids to follow the hacker ethic_ -
       | https://news.ycombinator.com/item?id=14274249 - May 2017 (115
       | comments)
       | 
       |  _A Forth to Scratch compiler_ -
       | https://news.ycombinator.com/item?id=13564754 - Feb 2017 (7
       | comments)
       | 
       |  _Why I Believe Scratch Is the Future of Programming_ -
       | https://news.ycombinator.com/item?id=13129030 - Dec 2016 (62
       | comments)
       | 
       |  _Scratch is probably the answer_ -
       | https://news.ycombinator.com/item?id=10144228 - Aug 2015 (27
       | comments)
       | 
       |  _MIT Scratch - Teach kids to program stories, games, and
       | animations_ - https://news.ycombinator.com/item?id=8751969 - Dec
       | 2014 (30 comments)
       | 
       |  _MIT 's Scratch Team releases Scratch 2.0 editor and player as
       | open source_ - https://news.ycombinator.com/item?id=7739604 - May
       | 2014 (61 comments)
       | 
       |  _Scratch for Arduino_ -
       | https://news.ycombinator.com/item?id=6613619 - Oct 2013 (11
       | comments)
       | 
       |  _What 's New in Scratch 2.0_ -
       | https://news.ycombinator.com/item?id=5685448 - May 2013 (47
       | comments)
       | 
       |  _Super Scratch Programming Adventure--A new programming comic
       | for kids_ - https://news.ycombinator.com/item?id=4419513 - Aug
       | 2012 (2 comments)
       | 
       |  _Using Kinect with MIT 's Scratch (visual programming language)_
       | - https://news.ycombinator.com/item?id=2086238 - Jan 2011 (4
       | comments)
       | 
       |  _Use Scratch to Easily Program Household Appliances_ -
       | https://news.ycombinator.com/item?id=2077265 - Jan 2011 (8
       | comments)
       | 
       |  _Apple Rejects Kid-Friendly Programming App_ -
       | https://news.ycombinator.com/item?id=1281738 - April 2010 (26
       | comments)
       | 
       |  _Scratch: Programming for all_ -
       | https://news.ycombinator.com/item?id=955228 - Nov 2009 (2
       | comments)
       | 
       |  _Ask HN: Guido van Rossum 's comment about go and scratch_ -
       | https://news.ycombinator.com/item?id=946338 - Nov 2009 (26
       | comments)
       | 
       |  _Scratch Helps Kids Get With the Program_ -
       | https://news.ycombinator.com/item?id=608629 - May 2009 (11
       | comments)
       | 
       |  _Scratch is a Programming Language for Kids_ -
       | https://news.ycombinator.com/item?id=36053 - July 2007 (5
       | comments)
        
         | isp wrote:
         | _Linux Kernel Module written in Scratch (a visual programming
         | language for kids)_ -
         | https://news.ycombinator.com/item?id=31921996 - June 2022 (38
         | comments)
        
           | dang wrote:
           | Wow great catch. Added above. Thanks!
        
       | shultays wrote:
       | Looks kinda similar to early Flash, which was my first real
       | programming experience. Actionscript had a similar visual
       | programming tool back then and you could also switch to "text
       | mode" if you wanted to see what those visual blocks meant as a
       | code. And it came with an amazing offline help manual.
       | Flash/Macromedia was start of my career basically
        
       | stuckinhell wrote:
       | Doubtful, I believe that actually goes to Roblox or Minecraft.
        
         | kleer001 wrote:
         | Maybe it terms of total users, but I don't think every Roblox
         | or Minecraft user is actually coding. Most of them are
         | assuredly just players.
        
       | Brajeshwar wrote:
       | If your kids tinker with Scratch, try out TurboWarp[1], a Scratch
       | mod that compiles projects to JavaScript.
       | 
       | Other alternatives to tinker with are Blocky[2] and Snap[3].
       | 
       | 1. https://turbowarp.org
       | 
       | 2. https://developers.google.com/blockly/
       | 
       | 3. https://snap.berkeley.edu
        
       | michelb wrote:
       | My nephew loved Scratch, he went on to https://www.hedycode.com/
       | in school and is now continuing in Python. Great stuff.
        
       | titchard wrote:
       | Scratch is a great tool for teaching the entry level elements
       | before you move onto a written code. I have been running after
       | school classes for kids using Scratch (under the Raspberry Pi
       | charity arm codeclub.org) and they take to it very quickly.
        
       | dabei wrote:
       | Is there any effort to connect Scratch with LLMs?
        
       | smfjaw wrote:
       | Scratch gets meme'd way too hard, such a good way to learn, we
       | did this for a few classes in highschool as an intro to the
       | concepts, got me hooked and now I'm a dev at a hedge gund
        
       | zzixp wrote:
       | Without scratch I would not have connected with programming the
       | way I did when I was a kid. Fantastic program, and a great
       | community as well.
        
       | n3storm wrote:
       | My kid has learnt a lot both programatically and online social
       | skills thanks to Scratch.mit.edu. Thanks from Spain!
        
         | tropicaljacket wrote:
         | can you explain more about social skills? And how old is your
         | child?
        
       | hcaz wrote:
       | I have spent countless hours in scratch when I was younger. I
       | learnt to program in basic originally but I loved scratch for its
       | ease of use.
       | 
       | There was a group of us during ICT classes who would try and make
       | the best games with scratch. Ended up learning the basics of
       | momentum and control schemes by messing around with it.
        
       | salawat wrote:
       | Does no one do Logos anymore?
        
         | empressplay wrote:
         | Yes! Many schools around the world still teach Logo. Two web-
         | based Logo interpreters are:
         | 
         | Lynx: https://lynxcoding.club
         | 
         | turtleSpaces: https://turtlespaces.org/weblogo
        
         | dhosek wrote:
         | There's a logo app for ios that my son (9yo) has been playing
         | with.
        
         | khochesh_kushat wrote:
         | What is doing logos?
        
           | trufas wrote:
           | The one with the turtle[0]
           | 
           | [0] https://en.wikipedia.org/wiki/Logo_(programming_language)
        
           | dhosek wrote:
           | I think op meant logo
        
       | ar9av wrote:
       | Scratch gets a lot of hate with semi-experienced programmers (the
       | kind to browse this sub) because of its simplicity, but it's
       | actually really good. It teaches you basic programming concepts
       | without all of the complexity of other programming languages.
       | 
       | I remember back in school, some of the students in my computer
       | science classes didn't understand the basic concepts of
       | programming: variables, loops, functions, etc. and programming is
       | 90% logic and problem-solving.
       | 
       | You can't teach programming by teaching the syntax of a language,
       | you have to teach logic. If you know one language, figuring out
       | another is going to be easy because most of the things are the
       | same, the only difference is the syntax.
        
         | narag wrote:
         | _Scratch gets a lot of hate with semi-experienced programmers
         | (the kind to browse this sub) because of its simplicity..._
         | 
         | "This sub"? Semi-experienced? Nice way to start a conversation.
         | OK, I'll bite.
         | 
         | My first contact with Scratch was ten years ago when my son
         | wanted to learn it in a workshop organized by Medialab Prado, a
         | group funded by the city council. The wait list was already
         | very long so, in order to cut it, I volunteered as an assistant
         | teacher for another course.
         | 
         | I reviewed my son's assignment and helped him make some
         | modifications after the classes.
         | 
         | I don't hate Scratch. I have a good opinion in general. But it
         | had its shortcomings, that made easy to end up with some sort
         | of visual spaghetti code, as soon as the project grew a little
         | over the size of the examples. IIRC all variables were global.
         | 
         | My son chose a different tool for the next workshop, I don't
         | remember the name (appstudio?), Python for the next and then
         | Python again, but as a teacher. So good for initiation, but my
         | impression was that not so good for bigger programs.
         | 
         | That might have changed, it's been a long time, but if you're
         | curious about where criticism comes from, maybe it's not hate
         | from semi-experienced wannabes :)
         | 
         | Oh and BTW, the guy that was the main teacher in my course
         | defected in a couple of classes, so I had to take over. The
         | children were bored with HTML and I tried introducing
         | JavaScript. Surprisingly they understood it very quickly and
         | liked it. Of course the group had a selection bias, people
         | interested enough in programming to know about the course, etc.
         | but my guess is that with some syntactic sugar and graphic
         | libraries, it could reach a wider audience.
         | 
         | My two cents: every language should make super easy to draw
         | shapes in a canvas and move them. If you need more than ten
         | lines of boilerplate to do that, you shouldn't be designing
         | languages.
        
         | birdyrooster wrote:
         | My first CS course used Scratch to teach it and I have to say I
         | enjoyed it a lot more than the C++ which followed and I
         | certainly remember more from the experience. C++ was my
         | introduction to pain.
        
         | jackson1442 wrote:
         | I think it's great- most of the hate probably comes from people
         | who came into their first programming class already knowing how
         | to code to some degree and had to "downgrade" from a
         | traditional language to Scratch to learn along with the class.
         | 
         | I've been there, but there's still some cool stuff you can do
         | when you bring in your outside programming knowledge.
        
         | overthrow wrote:
         | fyi, this comment is a copy/paste of a 4 year old comment from
         | https://old.reddit.com/r/learnprogramming/comments/asqslg/if...
         | 
         | I guess HN has karma farming bots now
        
           | raspasov wrote:
           | Wow.
        
           | archgoon wrote:
           | <from the shadows>
           | 
           | Yep, as are most of the other comments.
           | 
           | <sinks back into the shadows>
        
           | dang wrote:
           | Thanks. Banned.
           | 
           | All: if you ever notice anything like this and have a minute
           | to let us know at hn@ycombinator.com, we'd really appreciate
           | it. I only saw this by change.
        
           | pstorm wrote:
           | I'm curious, how did you figure this out? Do you search texts
           | of random HN comments? Did you remember that comment? I see
           | these posts on here sometimes, and just don't understand how
           | the commenters so consistently find these types of things.
        
             | wl wrote:
             | > semi-experienced programmers (the kind to browse this
             | sub)
             | 
             | Is a giveaway the comment is copy/pasted from Reddit.
        
           | ikesau wrote:
           | What a bummer. Open, anonymous, and free forums are some of
           | the most interesting places on the internet. this profit-
           | motivated antisocial shit makes me so sad.
           | 
           | edit: oh. most if not all of the comments are from reddit.
        
             | ansible wrote:
             | https://lobste.rs/ has an interesting mechanism to curb
             | bots on the platform.
             | 
             | To join to website, you have to get a referral from another
             | current user. And this referral is public information. So
             | if someone you referred starts acting like an ass, then you
             | can expect some concern being directed your way. People are
             | rightly a bit cautious with giving out referrals as a
             | consequence.
             | 
             | The topics on lobste.rs are more focused on programming and
             | computers (stuff you'd likely also see on HN), and there's
             | not really any political discussion. Traffic is light,
             | expect maybe a dozen new links per day.
             | 
             | This comment, by the way, does not constitute an invitation
             | to ask _me_ for a referral. I don 't really know too well
             | anyone on HN, other than the most famous users (none of who
             | know who I am), so if you ask _me_ for a referral, the
             | answer is very likely  "no".
        
       | NayamAmarshe wrote:
       | Anybody remember Logo? That turtle graphics program? That's what
       | they taught us at school. Programming for kids surely has changed
       | a lot since then.
        
         | jazzido wrote:
         | Scratch is part of the same lineage [0]. Seymour Papert
         | (creator of Logo) was one of the doctoral advisors of Mitch
         | Resnick, who leads the group at MIT that maintains Scratch.
         | 
         | [0] https://el.media.mit.edu/logo-
         | foundation/what_is_logo/histor...
        
           | kleer001 wrote:
           | THAT is fantastic and heartwarming. I wish they put that
           | front and center on a History of Scratch page.
        
         | empressplay wrote:
         | There are modern web-based Logo interpreters too, including:
         | 
         | Lynx (2D): https://lynxcoding.club turtleSpaces (3D):
         | https://turtlespaces.org/weblogo
         | 
         | Logo is still taught by many schools, all around the world!
        
         | mcshicks wrote:
         | You can do turtle graphics in scratch. I have taught some
         | beginner scratch classes at my local library and used the
         | turtle graphics feature for the example for the class
        
         | latchkey wrote:
         | My grandfather got me a lesson in Logo when I was <10 on his
         | apple ii. It was before I understood the concept of degrees, so
         | I really struggled with it. That said, it is part of what made
         | me into a software engineer today.
        
         | theonething wrote:
         | I played around with Scratch and all the pointing, clicking and
         | dragging drove me nuts.
        
       | SpaceManNabs wrote:
       | I first used scratch in 200X as a freshman. Glad to see lots of
       | other kids are still using it to learn. My best friend at the
       | time made an incredible sonic game and it showed me how deep you
       | can go with any tool.
        
       | [deleted]
        
       | Kelamir wrote:
       | I was impressed when I had seen that the scratch forum has
       | millions of posts: https://scratch.mit.edu/discuss/
        
       | JoeOfTexas wrote:
       | My 9 year old daughter surprised me yesterday with her little
       | game made with Scratch. I was impressed.
       | 
       | I surprised her back when I did user-testing haha. She discovered
       | the fun world of bugs and user's doing things they shouldn't!
        
         | AzzieElbab wrote:
         | I code in 5 languages professionally, and I also do
         | infrastructure and architecture. My kid is so much better than
         | me in Scratch; it is embarrassing.
        
         | pixelize wrote:
         | I LOL'ed! You really brought out the QA and product testing on
         | her, haha!
        
         | shagie wrote:
         | > I surprised her back when I did user-testing haha. She
         | discovered the fun world of bugs and user's doing things they
         | shouldn't!
         | 
         | Oh... that path takes you to strange places.
         | 
         | Mr. Fart's Favorite Colors - https://medium.com/@blakeross/mr-
         | fart-s-favorite-colors-3177... (7 years ago -
         | https://news.ycombinator.com/item?id=11231631 )
         | 
         | It starts when we're 8 and coding our very first program.
         | "What's your favorite color?" it asks, sweetly, twirling a lock
         | of Visual Basic around its finger. You type in your answer, the
         | screen changes color accordingly, and boom -- time to show off
         | to family.
         | 
         | Then Aunt Jody calls.
         | 
         | "Honey, it froze on me. 'Color.exe has crashed.' I don't know
         | what that means." You take a look at her entry. She entered: 2.
         | 
         | "I thought it asked how many favorite colors I had?"
         | 
         | But how could you...but what does it even mean to have more
         | than one favori...ok, fine. No big deal. You add a sliver of
         | code to stop people from typing numbers into the box.
        
           | skeaker wrote:
           | Great read, thanks for sharing. This took me down an hour
           | long rabbit hole of airplane safety procedures which is not
           | what you would have expected going in.
        
         | dunham wrote:
         | We had one in makecode that I had to look into after my kid
         | left for school. (He was pretty frustrated.) Turned out that it
         | wasn't applying changes we made in the code and the window
         | needed to be reloaded.
         | 
         | My ten year old is doing both scratch and makecode. The
         | graphics in makecode are not as flexible as scratch, but it's
         | fun to be able to make a game and run it on a physical device
         | (pybadge).
        
         | welfare wrote:
         | Quality Assurance is a first reality-check.
         | 
         | Please shield her from doing UAT with unreasonable business
         | stakeholders as long as you can
        
         | vb234 wrote:
         | I've been tempted to teach my daughter programming with
         | scratch. At what age did you introduce your daughter to Scratch
         | and programming? Where there any helpful/fun guides you or she
         | discovered along the way?
        
           | sokoloff wrote:
           | I introduced to my kids at around 6 and 8. 6 was maybe a
           | little early, but not much (and will vary by kid, of course).
           | 
           | One thing that really added to the fun when they were making
           | games is I got a PS3 controller (which is bluetooth) and
           | connected that to the computer as a keyboard, which Scratch
           | code can then read and use in the games.
           | 
           | The first big (for them) project we did was:
           | https://scratch.mit.edu/projects/219423211/ They had just
           | turned 7 and 9 when we did that and dad helped them out with
           | a fair bit of guidance (and cribbing from other projects),
           | but after this one, they really took to playing around with
           | it on their own and a few times per month, I'll look over and
           | see Adam using scratch around 5 years later.
           | 
           | PS: There is a Scratch Jr if your kids don't seem quite old
           | enough to have the attention span/focus for scratch.
        
           | JoeOfTexas wrote:
           | She uses it at school, but no one taught her how to use it.
           | She has followed tutorials for making games on Roblox Studio
           | in the past. However, kids just hit the ground running with
           | Scratch way better than adults.
        
         | asciii wrote:
         | > I surprised her back when I did user-testing
         | 
         | Wait till she gets tough PR reviews.
         | 
         |  _This block is ugly, and our team does not like looking at it_
         | :P
        
           | samstave wrote:
           | AND This damn kid WORKS FROM HOME every darn day and doesnt
           | even let me know on Slack!
        
           | qikInNdOutReply wrote:
           | Remember that robblox investigation, were they interviewed
           | that 12 year old that already talked like a burned out
           | developer, feeling cheated out of the revenue. The children
           | yearn for the mines..
           | 
           | https://www.youtube.com/watch?v=_gXlauRB1EQ
        
             | asciii wrote:
             | Yikes...
             | 
             | Scratch and Roblox conspiracy to create an army of child
             | developers? :O
        
               | Wowfunhappy wrote:
               | Please do not conflate Scratch and Roblox!
               | 
               | Scratch is open source software created by a nonprofit
               | foundation to promote education and creativity.
               | 
               | Roblox exploits children for profit and I quite literally
               | believe they are violating child labor laws.
        
             | bitdivision wrote:
             | The part in question: https://youtu.be/_gXlauRB1EQ?t=827
        
         | unfairly4820 wrote:
         | Found this piece of code long ago online , Calculator game made
         | from a kid from Scratch... (but spelled Claculator lol)
         | 
         | https://i.redd.it/5t9mpdhzzniz.png
        
         | alexb_ wrote:
         | I remember when I was young, I made a scratch game that was
         | just "Guess the secret letter". Basically "if l pressed, you
         | win, else you lose".
         | 
         | Except my 10 year old brain did not understand what else meant.
         | So I created, over the course of hours, a different if
         | statement for every key on the keyboard that all ended with
         | "you lose". Was a shock to me when my parents, after seeing my
         | code for the first time, told me what else means. What a waste!
        
           | detritus wrote:
           | One of the fun things about having a kid is realising how
           | fundamentally-learned _everything_ is, and how much we adults
           | end up taking for granted. I catch myself so many times
           | explaining things to my daughter, and then realising that the
           | terms and concepts I 'm using in the description also need
           | describing. (She's 22).
        
       | avtar wrote:
       | At work [1], we've wanted to provide kids with cognitive and/or
       | physical disabilities an introduction to coding fundamentals
       | (sequences, loops, etc). As a result, we've created Weavly [2].
       | It's a React app that can work standalone, but also integrates
       | with some off-the-shelf robots. It's free, open source [3], and
       | accessible to people using screen readers, switches, and other
       | assistive technologies.
       | 
       | [1] https://idrc.ocadu.ca/
       | 
       | [2] https://weavly.org/
       | 
       | [3] https://github.com/codelearncreate/c2lc-coding-environment
        
       | distcs wrote:
       | Not a Scratch user. Also not a child here. A grown up software
       | programmer. But I did try Scratch and I could not make much sense
       | of it. Maybe I am missing something. So read this comment as a
       | request for help.
       | 
       | The last time I tried, I remember I had to drag and drop building
       | blocks available as tiles. Some tiles made the character turn
       | right. Some tiles did something else. Some implemented
       | conditionals. Am I remembering it right?
       | 
       | And then when you run the program, the character moves across the
       | screen in the way it was programmed. Is that all? Is there
       | something more that we can do with Scratch? Can we write an
       | interactive adventure game for example?
       | 
       | Just making sure I did not miss something. I would really like to
       | try it again but not sure what I was missing. Or is it really
       | meant for children and it would not appeal to adults?
        
         | fayten wrote:
         | You can make some pretty robust stuff with Scratch.
         | 
         | User griffpatch has made a lot of advanced stuff here:
         | https://scratch.mit.edu/users/griffpatch/
         | 
         | He has a youtube series too about building a 2D RPG in Scratch
         | along with a built in tile editor:
         | https://www.youtube.com/watch?v=5lof-Nu1VVE&list=PLy4zsTUHwG...
         | 
         | There is also a faster interpreter called TurboWarp that runs
         | significantly faster than the official Scratch implementation:
         | https://turbowarp.org/
         | 
         | Here is an example of the old 2d space shooter Tyrian running
         | in turbowarp: https://turbowarp.org/151417355
        
         | khochesh_kushat wrote:
         | It's possible you were playing Scratch Jr, it sounds a bit like
         | it.
        
         | hoherd wrote:
         | It's a lot more than that. People do ray tracing with scratch.
         | https://scratch.mit.edu/users/Raytracing/
        
         | Retr0id wrote:
         | Scratch also has variables, lists, if/else and looping control
         | flow structures, and procedures (the main limitation, imho,
         | being that procedures don't have scoped local variables and
         | cannot return a value)
         | 
         | It also has event-based concurrency.
        
           | distcs wrote:
           | Are they all available as tiles to be dragged and dropped? Or
           | can I type it out too with a keyboard?
        
             | Retr0id wrote:
             | The former. If you want text, other languages are
             | available.
             | 
             | If you _really_ want to use a keyboard, Tosh exists,
             | effectively acting as an alternative front-end for Scratch
             | https://tosh.blob.codes/
             | 
             | If even using a keyboard is too much effort, I have a
             | Python library for doing Scratch metaprogramming and code
             | generation, with optional vscode integration:
             | https://github.com/davidBuchanan314/boiga
             | 
             | I've used it to write non-trivial Scratch programs, such as
             | X25519 key exchange with ChaCha20-Poly1305 authenticated
             | encryption https://scratch.mit.edu/projects/714773326/
        
               | Wowfunhappy wrote:
               | > If you really want to use a keyboard, Tosh exists,
               | effectively acting as an alternative front-end for
               | Scratch https://tosh.blob.codes/
               | 
               | I really wish this was a bit more robust. I would like to
               | use it as a bridge between Scratch and Python or
               | Javascript, getting kids in the habit of typing things
               | using syntax they are already intimately familiar with.
               | 
               | But the project is just a bit too buggy. I've had
               | variables randomly not appear, sounds not import, etc.
               | 
               | This is in no way a criticism of the developer who
               | created tosh as a passion project, it's just a lament.
               | Tosh is so close to being a fantastic tool.
        
             | varun_ch wrote:
             | Not anything officially supported, but there are some
             | community tools to do that, tosh[0] and Scratch Addons'[1]
             | "Insert blocks by name" addon comes to mind
             | 
             | [0] https://tosh.blob.codes/ [1] https://scratchaddons.com/
             | (It's a browser extension chalk full of little enhancements
             | for Scratch)
        
       | avodonosov wrote:
       | My experience (past HN thread):
       | https://news.ycombinator.com/item?id=32122972
        
       | mavili wrote:
       | Isn't it pretty much the only coding community for children?
       | Headlines like this are always catchy but also not so. Largest
       | community.. for children.. of 10-11 years.. :D the group just
       | gets narrower and narrower as you read
        
       | balls187 wrote:
       | Scratch is also one of the largest places for kids to play games.
        
         | stevenkkim wrote:
         | Yeah, I learned this when I thought my kid was spending hours
         | coding, he was actually spending hours playing games.
        
         | snowwrestler wrote:
         | This is true--and watch animated stories.
         | 
         | But the cool thing is that for any game or story on Scratch,
         | the kid can click into the project to see how it was made, and
         | even access the code and assets. They can copy, fork, alter,
         | build.
         | 
         | The technology is different obviously, but it feels like the
         | early days of the Web, when you could "view source" and "save
         | as" to easily explore and learn how any web page was put
         | together.
        
           | Turing_Machine wrote:
           | > But the cool thing is that for any game or story on
           | Scratch, the kid can click into the project to see how it was
           | made, and even access the code and assets.
           | 
           | Definitely an important feature for learning. Seeing
           | something cool and then immediately being able to find out
           | how it was done is much more motivating than reading and
           | memorizing docs ahead of time.
           | 
           | It's similar in some respects the early days of the web when
           | "View source" was enough to figure out how something worked.
           | It's rather sad that feature has mostly been lost.
        
       | MH15 wrote:
       | Scratch was instrumental in my path to software, I loved using
       | the old desktop version as a kid. Thrilled to see it continues to
       | inspire a new generation of children.
        
       | ksab wrote:
       | My 4 year old made his first program using Scratch Jr.
       | 
       | What was this program?
       | 
       | He made a story where cats jump up and down 25 times and then
       | walk away. He recorded sound effects for the cats that repeated
       | as the cats jump.
       | 
       | It's simple but offers so much more of a creative outlet than
       | games/educational apps aimed at his age group.
        
         | ryanjshaw wrote:
         | Thanks for mentioning this option -- much easier to use for
         | early readers!
        
         | efitz wrote:
         | I bought a subscription to CodeSpark Academy and my kid has
         | spent literally hundreds of hours on it over the last few
         | years. He's 9 now but started at 5 or 6. It allows him to do
         | exactly the kind of things you describe- simple animations with
         | kid-provided sound effects, a simple visual building block
         | programming language, etc. I think that the key advantage of
         | these types of systems is that they allow kids to do things
         | that kids like (animated cats, poop noises, whatever) right off
         | the bat. Getting enough python skill to do these kinds of
         | things would take many hours of learning.
        
         | meterplech wrote:
         | This is really cool. Out of curiosity - how did you actually
         | set this up for him to use? Was it on tablet or a computer or
         | phone? Any suggestions for a dad of a 3.5 year old?
         | 
         | Also, is he reading / at what level? Trying to get a feel for
         | when I can introduce it to him.
        
           | ksab wrote:
           | We're using an iPad. It's theoretically aimed at older
           | children (5+) but my son was able to pick it up no problem.
           | 
           | I sat down with mine about 6 months ago (he was 3.75 at the
           | time) and we learned what each of the blocks did and how to
           | combine them.
           | 
           | Now he asks to make a program and can do it independently.
           | 
           | He experiments with the backgrounds, sound effects, loops and
           | motion.
           | 
           | My son can read but knowing how to count/recognize numbers is
           | more important in this interface. Everything is graphical.
           | Loops require a number input.
           | 
           | Another toy aimed at older children that younger ones can
           | play with is snap circuits. We introduced the toy at 3. He
           | can copy the project schematic and build the project. He
           | built the AM radio project independently.
        
             | meterplech wrote:
             | Really helpful - thanks for the details!
        
       | contemplatter wrote:
       | [flagged]
        
         | pavlov wrote:
         | Why spend money on expensive Legos when you can buy any
         | imaginable plastic toy for cheaper on AliExpress?
        
         | khochesh_kushat wrote:
         | I suspect even with AIs certain kinds of people will still
         | enjoy creating by hand. Certain kinds of people won't, of
         | course, and that's ok.
        
         | gs17 wrote:
         | Because they're doing this for fun. A lot of kids genuinely
         | enjoy the process of making games.
        
         | patchymcnoodles wrote:
         | Why learning anything, if we have GPT-4? Why even commenting
         | here, GPT-4 could do that, too ;).
        
       | MikeTheRocker wrote:
       | I love Scratch! I credit it partially with getting me into
       | programming in middle school.
        
         | matthew28845 wrote:
         | Same, I think I made my account when I was 9. I have Scratch to
         | thank for a lot of my interests today.
        
       | myth_drannon wrote:
       | I find Scratch so confusing. So many menu options, drop downs ,
       | select here click here. Very frustrating experience. I don't
       | think my child (8 years old) learns coding from it. I'm trying to
       | find away to introduce him to Basic. But he looses interest once
       | he sees just lines. Scratch is flashy and things can be moved and
       | clicked which is what the kids are used now, but I just don't see
       | any educational or fun value added.
        
         | zabzonk wrote:
         | honestly, you don't need to use the menus much at all. it's
         | mostly just drag and drop from the block pallette. this thing
         | has been specifically designed to be easy for kids to use, and
         | all the evidence is that it has worked amazingly well.
        
         | eimrine wrote:
         | > But he looses interest once he sees just lines.
         | 
         | This hits me deeply. I do not have kids, even not married. But
         | when/if they will appear I will manage to disallow any GUI on
         | the territory of my house for everybody including me (I hope
         | old Nokias will still be a thing at that time for having
         | ability to communicate or it will not work). Then a child will
         | look at the lines as at the most interesting thing in the house
         | and maybe starts going a GNU/Linux hacker way as early as some
         | greatest mathematicians have started their math careers.
         | 
         | I respect such thing as Scratch and any of his competitors, but
         | let's be honest, gentlemen - games is a misusing of computer
         | and the lines is what matters.
        
         | Mezzie wrote:
         | Can you start him with JavaScript and basic web development
         | instead? That's how I learned around that age (started around 5
         | or 6). The immediate feedback of being able to change something
         | in text and immediately see the impact was a big thing that
         | helped me. Likewise, something like helping him mod games he
         | plays might be good.
         | 
         | Scratch always kind of struck me as a non-programmer's idea of
         | how to teach children to code personally. (Or at least
         | programmers that didn't start/weren't active _as_ children).
        
         | khochesh_kushat wrote:
         | My 7 year old watched it and it clicked quickly, but we also
         | watched a couple example videos on their official YouTube
         | channel. Maybe give that a try. Once it clicked we were able to
         | make some cool stuff together, and she was able to add features
         | on her own.
        
       | roland35 wrote:
       | I love that my son enjoys scratch, but I wish there was some way
       | to have parental controls on the social aspects of it! I am a
       | little uncomfortable with the fact that random users have
       | messaged my son and there really isn't anything I can do besides
       | periodically logging in myself
        
         | khochesh_kushat wrote:
         | You can use the local version instead, maybe.
        
       | insane_dreamer wrote:
       | My favorite language for teaching kids to code and which I taught
       | my daughter starting around 9 or 10, is Ruby. Expressive syntax,
       | easy to read, good introduction to objects. Her first real
       | program was a treasure hunt game in the terminal, using classes,
       | inheritance, methods, and conditionals, etc.
       | 
       | It didn't have the cute graphics side of things, but she learned
       | all the concepts well (she now has a degree in engineering and
       | being paid to write code)
        
         | ptd wrote:
         | Does she like her job? I only ask because you specified comp in
         | a way that suggested that is what is most important to you(and
         | her).
        
           | insane_dreamer wrote:
           | Good question. She actually got a degree in chemical
           | engineering not CS, but then switched over to fulltime
           | software dev at her company a couple of years out of school
           | as she liked that more -- so yeah, I would say so.
        
       | ocfnash wrote:
       | I mentioned this in a reply to a comment below but I think it is
       | worth repeating at top level: there is a great app called Pytch
       | which is a bridge between Scratch and Python (and runs in a web
       | browser).
       | 
       | I always recommend it to anyone teaching young kids to program.
       | 
       | You can find it here: https://www.pytch.org/app/
        
       | irrational wrote:
       | I had no idea my son even knew scratch, but the other day I
       | looked over his shoulder at his chromebook and was astonished to
       | see him working on a huge scratch project. I asked if he had any
       | other projects and he had dozens of projects, some incredibly
       | complex. I was both surprised and pleased.
        
       | mattw2121 wrote:
       | Also used in Harvard's, excellent, CS50. I recommend this for any
       | middle or high schoolers thinking about a career in tech.
       | 
       | https://pll.harvard.edu/course/cs50-introduction-computer-sc...
        
       | danabrams wrote:
       | I took a refactoring class where we used scratch and it was a lot
       | of fun.
       | 
       | I now have a 5-month old and I can't wait to introduce him to
       | scratch jr in a few years.
        
       | pradn wrote:
       | Scratch supports message-passing and concurrency, which makes
       | writing parallel programs fairly straight-forward. This is
       | usually considered a more advanced series of programming
       | concepts, and yet, I've seen children use them for their own
       | games. The language is more powerful than you think!
        
       | JamesSwift wrote:
       | Its a really good intro, but can become stifling really fast for
       | young learners. You risk losing their interest too soon if they
       | want to push past the boundaries.
        
       ___________________________________________________________________
       (page generated 2023-03-30 23:00 UTC)