5 ms·
It is deeper, of course it's turing-complete, and I do applaud how easy it is just to get started, and make something, which is absolutely the key to getting ki
by jacknews 2y ago
It is deeper, of course it's turing-complete, and I do applaud how easy it is just to get started, and make something, which is absolutely the key to getting kids interested and keeping them so.
But I take huge issue with some of the 'deliberate' limitations. No function returns? No way to share code blocks? These are some of the fundamentals of code.
In my experience these limitations present a big barrier to kids who want to just get some things done, and teaches a very hacky style to those who are willing to learn the complex workarounds to overcome the barriers. Ultimately it leads to the majority being 'confined' to doing typical simple scratch projects, and a small 'elite' who go beyond. Possibly the opposite of what was intended.
- creer 2y agoSure. But it's now easy to move on to the next bigger thing. A kid, club or school, can onboard with Scratch, and any laptop can also run python et al. By the time a kid notices all the cool stuff that seems possible and that they could achieve total world domination, they are in a decent situation to pick another language: python, javascript, whatever. And they can do that on their own - they don't even need the school anymore.
- jacknews 2y agoWell there's quite a big jump in complexity moving to python or whatever. It's complex to even decide what to jump to, then there's setting up the environment, learning text editing and syntax, usually much more complex (and completely unfamiliar) graphics libraries, etc. And then they can't share projects so easily and aim to be curated, etc. I like lua and love2d as the next step, as it's much simpler and cleaner than kitchen-sink Python (don't get me started on significant-whitespace), but it's still a big jump from Scratch. I wish there was a Thonny for lua though.
- creer 2y agoIt is a big step. But the kid is now older and knows what programming overall is about. Less likely to get discouraged then. But sure, Lua will work. I agree though that debuggers are usually too complicated - print-based troubleshooting will be enough to start with.
- armagon 2y agoTake a look at Snap. It was originally a scratch mod, but does allows for all sorts of advanced things. https://snap.berkeley.edu https://snap.berkeley.edu
- jacknews 2y agoYes, snap is great. Unfortunately it's far more daunting than Scratch, if only just in the number of blocks and the way they are presented, using a smaller font, etc, so it's not so good for younger kids just starting out. But it works as a next step for sure.
- kosolam 2y agoNext step is usually into regular code. We stepped into Godot, in our case. After working with scratch on one serious project you realize its limitations and their associated pains. And moving to regular programming language relieves most of this.
- candiodari 2y agoThat's one thing scratch really needs: a quick way to switch back and forth between "visual" programming and text based programming.