Live data from Hacker News

Λ Snap – An inviting programming language for kids and adults for CS study

snap.berkeley.edu

31–40 of 55 posts

Re: Λ Snap – An inviting programming language for kids and adults for CS study

#31
post #28

Any name that you can't type is going to be a problem.

That's more of a problem in text-based coding. One of the things I genuinely like about Snap (well, in my case NetsBlox, which is a fork of it) is the ability to have spaces and weird characters in a variable name.

Edit: Oh, you meant the lambda in the post title? It's not really part of the name, but you can at least type it into Snap itself.

Re: Λ Snap – An inviting programming language for kids and adults for CS study

#32
Scratch is how I first learned programming. I was building increasingly ambitious projects in it, and at some point the editor itself became the main thing I was fighting. Once a project got to around 10,000 blocks, it could get painfully laggy, and I ended up spending a lot of time engineering around Scratch's limits.

That is what eventually led me to build goboscript: https://github.com/aspizu/goboscript

I'm one of the programmers who owe their career to Scratch, this year, I joined https://ente.com as a software engineer. Scratch taught me how to code, and perhaps a bit of real-world engineering indirectly.

Re: Λ Snap – An inviting programming language for kids and adults for CS study

#33
post #27
post #21

Question (serious) - Why teach kids programming anymore?

Why do we teach them to add and multiply we have calculators? Why do we teach them to read, we have text to voice? Why do we teach them to broom, we have Roombas? Why do we teach them to do the dishes, we have dish-washers?

Where is the opening tag?

Re: Λ Snap – An inviting programming language for kids and adults for CS study

#35
post #9

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.

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…

This would be so exciting. The implementation language would be less of a concern, but it worth wondering about... Would you use Rust, Racket, Lisp, Clojure, etc? I had a lot of fun teaching adults to program using DrRacket and didn't focus on the language as much as the concepts you mentioned above. They ended up being easily able to move to Javascript, Swift, and others at the end of the course.

Re: Λ Snap – An inviting programming language for kids and adults for CS study

#36
post #21

Question (serious) - Why teach kids programming anymore?

I'm a software engineer turned public middle school science teacher.

At the moment, I would never encourage any of my students to go into software engineering. It seems to me that's rapidly becoming a field where a small competitive handful will be making millions and everyone else will be unemployed.

That said, I have no problem teaching some programming. We're going to be making autonomous greenhouses soon, with windows that open or whatever, and they'll be using Scratch to program their micro:bits.

Anything that empowers you to do stuff is a good thing.

Re: Λ Snap – An inviting programming language for kids and adults for CS study

#38
post #9

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.

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

Re: Λ Snap – An inviting programming language for kids and adults for CS study

#39
post #5

Snap is designed to be more expressive and powerful than Scratch. But I find debugging them is very painful. Changing the name of a variable or block for example, could create “holes” in the calling sites but the system can or cannot report an error and fails silently. Snap is IMO more flaky and the team seems more eager to add features than polish the existing ones or make the system mor robust and stable.

> Changing the name of a variable or block for example, could create “holes” in the calling sites

WTF. Isn't the whole point of visual programming that you are NOT bound by the limitations of text as a medium? A block refers to a specific variable. It shouldn't matter what it's called, it shouldn't matter if what it's called changes, it should still refer to the same variable even after renames.

Re: Λ Snap – An inviting programming language for kids and adults for CS study

#40
post #32

Scratch is how I first learned programming. I was building increasingly ambitious projects in it, and at some point the editor itself became the main thing I was fighting. Once a project got to around 10,000 blocks, it could get painfully laggy, and I ended up spending a lot of time engineering around Scratch's limits. That is what eventually led me to build goboscript: https://github.com/aspizu/goboscript I'm one of…

same here! I got into Scratch at the age of 7 and without it (and the Scratch community), I wouldn’t have any career (or even a plan for one). I also worked as an intern on the Scratch team at the Scratch Foundation.

I also know that one of the important developers for the Asahi Linux drivers also started on Scratch. I think there’s a lot of real software engineers who started on Scratch (and the Scratch community, which is often overlooked)

Post reply on HN