logoalt Hacker News

andrewlatoday at 6:17 PM8 repliesview on HN

I don't love graphical programming environments like this and Scratch and I can't quite put my finger on why I find them so unattractive.

A big part of it is that you can, to some degree, learn programming from this. But you absolutely cannot learn software engineering from this.


Replies

lubujacksontoday at 7:29 PM

I would love to see the opposite emerge, a programming environment focused on teaching architecture, security, separation of concerns, etc. All while letting LLMs deal with the fussy programming bits.

The script is already flipping, with kids making software using AI but they can only fumble forward inch by inch while burning tokens. It would be great to introduce programming in the way it functions in the workplace - we want to make a Mario clone, start with the goal, hammer out the elements to a certain fidelity then let the AI cook.

show 1 reply
JoeOfTexastoday at 7:29 PM

LEGO created NXT-G for programming their Mindstorm NXT. It has since, in my opinion, been the best graphical programming I've seen to date.

It did have a slight learning curve, but 5th graders were competing just fine against high schoolers haha.

alanbernsteintoday at 6:54 PM

If you appreciate when keyboard interaction gets added to a GUI, then you might think of a graphical language as the opposite, as it essentially removes keyboard interaction from what is normally a text-based system.

show 1 reply
crushinatortoday at 6:33 PM

You also can't learn to be a great novelist from the alphabet song, but it has its place!

poly2ittoday at 8:03 PM

I learned to program from block programming, starting out when I was 12. I'm now a full-time developer and funded startup founder. You absolutely can learn complex concepts from simple primitives, and there is a large underground community pushing the limits of languages like Scratch. See for example Linux running on RISC-V running on Scratch:

https://turbowarp.org/1201938491

show 1 reply
jonplacketttoday at 6:34 PM

I have the same gripe and I think it’s just simply that when you are used to being able to just write code, everything else feels like it’s in the way.

Visual coding is a pain to change and move around quickly. It’s just clutter ultimately - if you know how to actually code.

lern_too_speltoday at 6:47 PM

This supports making your own higher order functions. You absolutely can learn software engineering from this. What you can't do is get syntax errors, which makes teaching a classroom of kids by yourself intractable.

r_leetoday at 6:22 PM

from someone who can remember how they even got into programming:

it's because this is BS and just a toy, it's got no connection to the real world.

from the angle of someone trying to make some toy to teach programming, maybe in their head it's like: oh this is so simple and easy it should work perfectly for teaching

but from my experience, most of my learning came from "whats this?" "how do i make a thing like this?"

this doesn't provide a way to accomplish that or to promote curiosity

I think same applies to basic CS courses teaching bits and bytes, it's not really useful to know what bits and bytes are if you don't understand what they're even used for or why you should know what they are

however, this is just my subjective point of view, maybe it differs for others.

show 2 replies