News for hackers. Stuff that matters.
Re:Ask HN: Modern Day Equivalent to HyperCard? by creer on Wednesday May 01, 2024 @09:13PM (#40231683)
Scratch is far better and deeper than most people think. It's also interesting because the developer interface forces thinking for yourself on things like how to manage complexity in your project, or how to get different modules to communicate - and that's useful (if only helpers thought to point that out).

It's very unlikely the school is digging deep in Scratch. Most likely they are keeping to the very basics - and a kid can go deeper on their own... or not.

As the next step, moving to python or whichever other language is okay. And I doubt very much that at 11 they are already exhausting Scratch. A web browser and javascript is fine too.

Re:Ask HN: Modern Day Equivalent to HyperCard? by musicale on Thursday May 02, 2024 @12:13AM (#40232622)
> A web browser and javascript is fine too.

There seem to be many online environments where you can type your {html, css, javascript} code and run it. For example, MDN has one at

https://developer.mozilla.org/en-US/play

(Unfortunately it has advertisements... which I suppose is incentive to learn how to use custom stylesheets.)

I wish there were an offline environment like that built into firefox. You can bring up a javascript console, but it's not easy to just type in code and run it. And something like visual studio code is capable but also large and complicated.

Re:Ask HN: Modern Day Equivalent to HyperCard? by nox101 on Thursday May 02, 2024 @02:13AM (#40233215)
not sure it counts as "HyperCard" but for environments there's p5js.org (https://editor.p5js.org/)

> I wish there were an offline environment like that built into firefox. You can bring up a javascript console, but it's not really a friendly development environment. And something like visual studio code is capable but large and complicated.

That seems like a day project in electron. At least to MVP. Use CodeMirror or Monaco. As long as you pass the right options you can run the user's code in an iframe in a separate process. That way you can kill it even if it has an infinite loop.

Re:Ask HN: Modern Day Equivalent to HyperCard? by ben_w on Thursday May 02, 2024 @06:16AM (#40234522)
> I wish there were an offline environment like that built into firefox. You can bring up a javascript console, but it's not really a friendly development environment. And something like visual studio code is capable but large and complicated.

I use BBEdit whenever I do web stuff (caveat: not a pro web dev) — if someone wanted to learn HTML/JS from scratch, I'd suggest a plain text editor like that.

Re:Ask HN: Modern Day Equivalent to HyperCard? by WillAdams on Thursday May 02, 2024 @07:36AM (#40234957)
Agreed. It would be nice if more apps would build scripting in.

Krita has: https://scripting.krita.org/lessons/introduction

while for Inkscape there is: https://inkscape.org/~pakin/%E2%98%85simple-inkscape-scripti...

Re:Ask HN: Modern Day Equivalent to HyperCard? by miguel-muniz on Thursday May 02, 2024 @10:15AM (#40236572)
> I wish there were an offline environment like that built into firefox

Webmaker[1] isn't built in, but it does offer an offline code playground

[1] https://webmaker.app/

Re:Ask HN: Modern Day Equivalent to HyperCard? by AstroJetson on Wednesday May 01, 2024 @09:47PM (#40231906)
I do elementary school Robotics, we program the robot in a version of scratch / blockly. There is a huge amount what you can do.

The programming club does some pretty cool game things.

Re:Ask HN: Modern Day Equivalent to HyperCard? by ericd on Wednesday May 01, 2024 @11:28PM (#40232398)
Are there any good starter kits that you'd recommend on the hardware side that work well with the software stack you all use?
Re:Ask HN: Modern Day Equivalent to HyperCard? by tomr75 on Thursday May 02, 2024 @03:29AM (#40233614)
Also onterested
Re:Ask HN: Modern Day Equivalent to HyperCard? by AstroJetson on Thursday May 02, 2024 @11:00AM (#40237093)
VEXIQ is what we use. It has a little sister called VexGO it’s limit is the 4 channel brain. All of the mechanical parts are interchangeable, so do some VexGO, then add more motors, sensors, etc with VexIQ
Re:Ask HN: Modern Day Equivalent to HyperCard? by ericd on Thursday May 02, 2024 @11:48AM (#40237588)
Thanks for the pointer, these look awesome (not cheap, but well designed to not be too frustrating for kids).

Trying to figure out if it can handle proper full res camera input, looks like the optical sensor is a bit limited. Maybe these ports don't have enough bandwidth, tho. EDIT: Looks like the Exp level has the "AI Vision Sensor"

Re:Ask HN: Modern Day Equivalent to HyperCard? by AstroJetson on Friday May 03, 2024 @12:57PM (#40249790)
You would be surprised what you can do without the camera. The EXP/V5 camera is a closed garden, for example it can't do April tags yet.

Two schools of thought are 1)Software is the key to robotics - so the more powerful brain / camera is the selling point 2) Mechanical interfaces to the physical world is the key - the VIQ ecosystem makes this practical at a pretty low cost. If you root around on ebay for HEXBUG VEX ROBOTICS you can see lots of the plastic kits for sale that can give you parts that make something that you can later frankenmash into other things.

Good luck with your adventures!

Re:Ask HN: Modern Day Equivalent to HyperCard? by ericd on Saturday May 04, 2024 @11:46AM (#40258488)
lol awesome. Yeah, I’m kind of considering looking around for something more generic/open, but if it makes it too hard to do the basics, that might kill the enthusiasm well before we get anywhere near needing a camera. And I really like what I see of the mechanical aspects of this system. Thank you so much for letting me know about all this stuff. This is really cool.
Re:Ask HN: Modern Day Equivalent to HyperCard? by jacknews on Wednesday May 01, 2024 @10:21PM (#40232093)
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.

Re:Ask HN: Modern Day Equivalent to HyperCard? by armagon on Wednesday May 01, 2024 @11:47PM (#40232498)
Take a look at Snap. It was originally a scratch mod, but does allows for all sorts of advanced things. https://snap.berkeley.edu
Re:Ask HN: Modern Day Equivalent to HyperCard? by jacknews on Thursday May 02, 2024 @12:14AM (#40232629)
Yes, 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.

Re:Ask HN: Modern Day Equivalent to HyperCard? by kosolam on Thursday May 02, 2024 @04:53AM (#40234085)
Next 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.
Re:Ask HN: Modern Day Equivalent to HyperCard? by candiodari on Thursday May 02, 2024 @05:27AM (#40234269)
That's one thing scratch really needs: a quick way to switch back and forth between "visual" programming and text based programming.
Re:Ask HN: Modern Day Equivalent to HyperCard? by creer on Wednesday May 01, 2024 @10:31PM (#40232149)
Sure. 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.
Re:Ask HN: Modern Day Equivalent to HyperCard? by jacknews on Thursday May 02, 2024 @12:13AM (#40232620)
Well 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.

Re:Ask HN: Modern Day Equivalent to HyperCard? by creer on Thursday May 02, 2024 @01:00AM (#40232852)
It 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.

Re:Ask HN: Modern Day Equivalent to HyperCard? by SeanLuke on Thursday May 02, 2024 @03:31AM (#40233627)
> Scratch is far better and deeper than most people think.

Scratch has no local variables, no recursion, no pointers or references, and no data structures, correct?

Re:Ask HN: Modern Day Equivalent to HyperCard? by adamspiers on Monday May 06, 2024 @04:13AM (#40272363)
Check out https://pytch.org/ which is a great way for kids (or anyone) to transition from Scratch to Python. Built by a friend of mine.