Discuss Scratch

  • Discussion Forums
  • » Suggestions
  • » The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab! [RSS Feed]
7salad3salad
Scratcher
1000+ posts

The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab!

cookieclickerer33 wrote:

7salad3salad wrote:

That looks pretty cool. I think I'd like to see this implemented!
Id love to be able to play with it but it looks like it’s only available to people who took the course. This would be a great opportunity to give it a public release!
Yeah, i would really like to experiment with these.
medians
Scratcher
1000+ posts

The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab!

DifferentDance8 wrote:

medians wrote:

rdococ wrote:

You're all massively overestimating the abilities of this. This is just a slightly souped up ‘pick random’ block with simple workarounds:

(item (pick random (1) to (length of [list v])) of [list v])
Or just this?
(item (random v) of [list v])
That was removed in 3.0
Yeah I was told, but I found out you can still do this:
(item (join [any] []) of [list v])

(item (join [random] []) of [list v])
cookieclickerer33
Scratcher
1000+ posts

The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab!

Bump
BobRocks20
Scratcher
100+ posts

The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab!

Something I haven't mentioned until now is that Let's Chance seems to meet Scratch's design goals, in that effort was put into designing for a low floor, wide walls, and a high ceiling. For the “low floors,” they decided to load only two of the blocks instead of all 11 so it can be supportive and flexible for beginners. For the “wide walls,” children had a basic idea of probability thanks to an activity they did prior involving dice. With the blocks, they were able to think of various ideas for projects such as a maze generator, a chatbot, a chance-based animation, and music. For the “high ceiling,” blocks for Markov probabilities were designed to let advanced Scratchers enjoy the blocks. It is possible to make some cool projects with some form of artificial intelligence this way.

Oh yeah. For those of you who don't support because of workarounds:

Manuj and Shruti Dhariwal wrote:

By making random variables a primitive in Scratch, the chance blocks provide additional functionality and right level of abstraction for children to tinker with sophisticated probabilistic ideas which can often remain inaccessible or overly complex to imagine or construct using only the pick random block in Scratch.

Source: all from the thesis! For more details, see chapters 2.4, 2.5, and 2.6, as well as 3.3 which goes into detail on how workarounds can be problematic when you're trying to learn about probability.

despacito spider on page 32???

Last edited by BobRocks20 (Sept. 23, 2023 17:09:17)

cookieclickerer33
Scratcher
1000+ posts

The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab!

If you think there is a workaround then make it. I guarantee you it’s almost impossible to replicate what this extension does
BobRocks20
Scratcher
100+ posts

The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab!

7salad3salad wrote:

cookieclickerer33 wrote:

7salad3salad wrote:

That looks pretty cool. I think I'd like to see this implemented!
Id love to be able to play with it but it looks like it’s only available to people who took the course. This would be a great opportunity to give it a public release!
Yeah, i would really like to experiment with these.
How exactly would you like to experiment with the blocks? Any examples?
cookieclickerer33
Scratcher
1000+ posts

The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab!

PPPDUD wrote:

Support, because it would be awesome and useful for AIs. However, you should be able to programmatically change the chances of each item and add/remove items programmatically.
You can with another list
7salad3salad
Scratcher
1000+ posts

The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab!

BobRocks20 wrote:

7salad3salad wrote:

cookieclickerer33 wrote:

7salad3salad wrote:

That looks pretty cool. I think I'd like to see this implemented!
Id love to be able to play with it but it looks like it’s only available to people who took the course. This would be a great opportunity to give it a public release!
Yeah, i would really like to experiment with these.
How exactly would you like to experiment with the blocks? Any examples?
No specific examples, I'd just like to play around with them and see what they're capable of.

Last edited by 7salad3salad (Sept. 12, 2023 15:09:43)

cookieclickerer33
Scratcher
1000+ posts

The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab!

Bump?
BobRocks20
Scratcher
100+ posts

The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab!

Bump may need to make something original for these bump posts of mine later…
BobRocks20
Scratcher
100+ posts

The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab!

Bunp
blablablahello
Scratcher
1000+ posts

The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab!

BobRocks20 wrote:

blablablahello wrote:

rdococ wrote:

-snip-
I would disagree with the “its not hard” part, as you should be considering that many users of scratch are completely new to programming and are like 7. On the other hand, I do agree that rather then adding an entire extension just to workaround this, it would be better to have them figure it out themselves, as this is way too complicated and specific to be summarized into a simple block. A better solution would be to add or feature tutorials on matters such as these.
How is this “too complicated and specific?” I knew what they meant when people said there was a 1% chance of getting something when I was a kid.
Complicated and specific doesn't mean hard to understand, rather, just that I dont believe scratch should be implementing functions which do an extremely specific thing or one which is not simple.

(for example, “a block that makes the sprite say hello when it touchs another sprite which is in a positive y position” is easy to understand and self explanatory, but too specific. At the same time, a block which quicksorts a list wouldn't be as specific, but involves way too many ideas and cannot have how it works explained with a simple “this does this which does this leading to this”)

The weighting of probabilties is is pretty simple yet important concept, so I believe it'd be better to attempt to teach how it works then to simply implement a function for it.
(especially since the whole “help what does this block do” button is gone now)
PokePika__10339__
Scratcher
500+ posts

The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab!

This would be pretty neat to see, plus Scratch Labs needs something new after they added color contrast! Wait, they have video sprites. Never mind!

Last edited by PokePika__10339__ (Sept. 13, 2023 19:22:08)

cookieclickerer33
Scratcher
1000+ posts

The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab!

Bwa
BobRocks20
Scratcher
100+ posts

The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab!

blablablahello wrote:

BobRocks20 wrote:

blablablahello wrote:

rdococ wrote:

-snip-
-snip-
How is this “too complicated and specific?” I knew what they meant when people said there was a 1% chance of getting something when I was a kid.
Complicated and specific doesn't mean hard to understand, rather, just that I dont believe scratch should be implementing functions which do an extremely specific thing or one which is not simple.

(for example, “a block that makes the sprite say hello when it touchs another sprite which is in a positive y position” is easy to understand and self explanatory, but too specific. At the same time, a block which quicksorts a list wouldn't be as specific, but involves way too many ideas and cannot have how it works explained with a simple “this does this which does this leading to this”)

The weighting of probabilties is is pretty simple yet important concept, so I believe it'd be better to attempt to teach how it works then to simply implement a function for it.
(especially since the whole “help what does this block do” button is gone now)
Well, according to the thesis (1.2, 1.3), the Let's Chance blocks do teach probability, specifically probabilistic thinking, in a constructionist way. It also states that the current way probabilistic thinking is taught is too specific and restrictive for children to understand the concept. By introducing probabilistic blocks to Scratch, children will be able to explore and experiment with the blocks and become more aware of probabilistic thinking in the process. This is constructionist learning in action.

And for the “specific” part, think of the many projects children were able to create with these blocks. You can see me talking about how this meets Scratch's design goals here.

Last edited by BobRocks20 (Sept. 14, 2023 15:55:17)

cookieclickerer33
Scratcher
1000+ posts

The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab!

I MIGHT be able to make a reimplementation of this in snap using tables but it won’t be anywhere near as good as this

With that you would just have to feed it raw numbers and it would give an output, this has an entire display with it that lets you tweak the chances without having to learn how the block “works”

Last edited by cookieclickerer33 (Sept. 14, 2023 16:55:36)

rdococ
Scratcher
1000+ posts

The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab!

blablablahello wrote:

Complicated and specific doesn't mean hard to understand, rather, just that I dont believe scratch should be implementing functions which do an extremely specific thing or one which is not simple.

(for example, “a block that makes the sprite say hello when it touchs another sprite which is in a positive y position” is easy to understand and self explanatory, but too specific. At the same time, a block which quicksorts a list wouldn't be as specific, but involves way too many ideas and cannot have how it works explained with a simple “this does this which does this leading to this”)

The weighting of probabilties is is pretty simple yet important concept, so I believe it'd be better to attempt to teach how it works then to simply implement a function for it.
(especially since the whole “help what does this block do” button is gone now)
List sorting is a great example. Sorting is a good programming task for beginners, and adding it as a block means kids will take the easy way out instead of rising to the challenge of implementing a sorting algorithm and actually learning some programming in the process. Similarly, probabilistic algorithms like Markov chains are also interesting programming tasks. This extension would rid the kids the opportunity to solve these kinds of programming challenges in what is supposed to be an educational programming language.

BobRocks20 wrote:

Something I haven't mentioned until now is that Let's Chance seems to meet Scratch's design goals, in that effort was put into designing for a low floor, wide walls, and a high ceiling. For the “low floors,” they decided to load only two of the blocks instead of all 11 so it can be supportive and flexible for beginners. For the “wide walls,” children had a basic idea of probability thanks to an activity they did prior involving dice. With the blocks, they were able to think of various ideas for projects such as a maze generator, a chatbot, a chance-based animation, and music. For the “high ceiling,” blocks for Markov probabilities were designed to let advanced Scratchers enjoy the blocks. It is possible to make some cool projects with some form of artificial intelligence this way.
Maybe Scratch's design goals are the issue, or at least their implementation. The Scratch Team have made a language which makes the specific games, stories and animations they envision trivially easy, but anything from a side-scrolling platformer to advanced projects is disproportionately difficult. In terms of the “big room” analogy, Scratch has a low floor, and it might technically have “wide walls” and a “high ceiling”, but it's easier just to switch languages if you want to actually climb.

Last edited by rdococ (Sept. 14, 2023 20:30:24)

BobRocks20
Scratcher
100+ posts

The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab!

rdococ wrote:

blablablahello wrote:

-snip-
List sorting is a great example. Sorting is a good programming task for beginners, and adding it as a block means kids will take the easy way out instead of rising to the challenge of implementing a sorting algorithm and actually learning some programming in the process. Similarly, probabilistic algorithms like Markov chains are also interesting programming tasks. This extension would rid the kids the opportunity to solve these kinds of programming challenges in what is supposed to be an educational programming language.
OK this is where I bring this up:

Constructive Recommendations On How to Respond to and Make Suggestions! wrote:

Sixth Suggestion:
(Thanks to Tymewalk)
Stop saying this:
No support, there's a workaround.

The point of Scratch is to be a challenge, not just hand every block over to the user on a sliver platter. Users should work to get these scripts, not just have it done for them.
It's that last sentence especially that gets me angry. People just discard an idea because it “makes things too easy”.

The common response is “why do we have move () steps then”, but it goes much farther than that - why do we have “go to” if we can use “set x” and “set y”? Why use any of the pen stuff, you can replicate it with “stamp”? Why have clones, just make other sprites?

The answer is because not everything has to be challenging. So what if “real programming languages don't do that”? Scratch is supposed to be an introduction to programming, meaning that it's easier. And yes, there are cases where you have to say “no support”. But don't just say it because “it's not challenging enough”.

A block that calculates the sunset based on the user's given location? That's a little too far. A block that converts a “days since 2000” to real-time? That would be OK.

So please, take the time to read through suggestions before dissing them as “not challenging enough”.

rdococ wrote:

Maybe Scratch's design goals are the issue, or at least their implementation. The Scratch Team have made a language which makes the specific games, stories and animations they envision trivially easy, but anything from a side-scrolling platformer to advanced projects is disproportionately difficult. In terms of the “big room” analogy, Scratch has a low floor, and it might technically have “wide walls” and a “high ceiling”, but it's easier just to switch languages if you want to actually climb.
And here's where you come in:

rdococ wrote:

The Scratch Team has a very clear vision of what they want Scratch to be. Scratch is designed to be incredibly simple; kids as young as 8 years old must be able to pick up Scratch on their own and express themselves with stories, animations and games, as well as understand each other's code well enough to use it in their own projects.

Flexibility and power are also goals, but they take a backseat to this core vision. Any suggestion you make has to be so good that it outweighs the challenge of 8 year olds facing it for the first time, useful enough for Scratch's core vision of kids creating stories, animations and games, as well as supporting the sharing of projects, collaboration, and kids learning from each other's code, as well as outweighing these factors enough to justify the weight of simply having an extra feature.
Let's Chance was made to simplify probabilities so you don't have to do any difficult workarounds. Kids know what dice are. I bet they will have a basic idea of what the “roll die” blocks do the instant they see them. I have said this before and I will say it again: the children who had access to Let's Chance were able to make stories, animations, and games using these blocks (source: the thesis, link is in the first post).

If a project with Let's Chance blocks is shared with the community, people will have the option to remix that project and change the percentages set in the Let's Chance blocks. By doing this they are learning from that project's code and becoming capable of probabilistic thinking. I don't know about Let's Chance blocks being used for collaboration, but that doesn't matter, because it's possible and we are capable of thinking outside the box.

Last edited by BobRocks20 (Sept. 14, 2023 21:45:10)

BobRocks20
Scratcher
100+ posts

The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab!

Bump! I updated the original post so please read it before replying!
TPRisesAgain
Scratcher
24 posts

The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab!

Definite support, makes probability far less complicated
  • Discussion Forums
  • » Suggestions
  • » The Obscure MIT Project by Lifelong Kindergarten of Scratch, "Let's Chance." Let's add it to Scratch Lab! [RSS Feed]

Powered by DjangoBB