Discuss Scratch

102acrimea
Scratcher
100+ posts

Integrate Coding Scratch blocks interface with Forum ScratchBlocks

Overview

Title: Integrate Coding Scratch blocks interface with Forum ScratchBlocks
Problem: Forums
Classification: UX and UI improvements
Duplicate?: No (from what I can see)
Denied?: No (not yet at least)


Abstract:
The forum scratch blocks is a system that allows a user creating a post to add code blocks to help readers visualize a script. The process of creating a Scratch Block requires hovering over an icon, then hovering over a block category, then clicking on a selected block which would then promptly add it to the post under a scratchblocks tag as text. This text can then be edited to manipulate the contents of the scratchblock. This process is highly tedious and can start to look very strange and confusing when trying to type of complex or long text with several operations. Like for example, behold, the strange occult text string that is a scratch block in text form:

go to x: (( of ((timer) * (10))::.perators) * (5)) y: (xPosition)

That is quite difficult to edit or comprehend while creating a scratch block. That script above is simply for creating a fast moving sin wave along the Y axis. And usually scripts that help is needed to visuals would be a lot longer and complex than that. It would look like this in scratchblocks.

go to x: (([sin v] of ((timer) * (10))::operators) * (5)) y: (xPosition)

Which looks a lot neater and easier to edit if instead the scratch coding interface would be used (the interface you see when you are coding in a project. That is why I propose that instead of the unique scratchblocks interface with text, the coding interface is used instead within forums.

The Problem
Several times while on Scratch forums trying to help people with scripts, I have used scratch blocks to help make the code more comprehensible instead of typing pseudo code. The forum Scratch Blocks to say the least, are not optimal for conveying long scripts. They currently have several underlying key issues that make conveying strings of text difficult such as:

- In text format meaning trying to edit or simply place another block in another position is difficult
- Difficult to visualize before posting (I know there are testing topics, but I doubt people use it often for serious purposes)
- No undo feature due to text injection meaning you would have to start over should a miss click happen
- A years worth of brackets making it difficult to see which brackets is which blocks
- Sometimes renders weird due to argument overlaps

Yeah, not the best.

The Proposed Solution
The coding interface of Scratch is already highly user friendly, it allows for the dragging of blocks in and remove of them as well as the editing of text fields or drop downs. Should this interface be integrated with the forum one, it can allow for the conveying of scripts much easier than trying to decrypt what in the world someone is trying to say in text instead of blocks. That means no more of this mess:

Example post:

To do that, you just need this script
scratchblocks
when green flag clicked
set a v to 3
set b v to 4
forever
move ((abs v) of (item ((item # of (joe) in (dictionary v)) v) of (translation v) :: list)::.perators) steps
set (c v) to ((sqrt v) of (((a) * (a)) + ((b) * (b)))::.perators)
end
/scratchblocks

NOTE: Sensitive characters that are used for other things such as indicating emojis or links or bold or whatever have to replaced

And then accidentally clicking on the wrong block and having to restart because you cannot undo or find that block you just placed.

Implementation
I am not a good coder when it comes to website languages but I can give a visualization of a possible way it works.

Firstly, when someone wishes to add scratchblocks into a forum post, they click on the scratchblocks button which then opens up a temporary project space below the positing button where they can use the coding interface to make blocks. For each seperate instance of scratchblocks, a new temporary project will be opened below. Finally, when it is posted, it will be rendered like regular scratch blocks.

Existing scratch blocks can easily be transposed to follow this format.

Comparison

(all is in comparison to the opposing system)

Current system:
Problems:
- In text format meaning trying to edit or simply place another block in another position is difficult
- Difficult to visualize before posting (I know there are testing topics, but I doubt people use it often for serious purposes)
- No undo feature due to text injection meaning you would have to start over should a miss click happen
- A years worth of brackets making it difficult to see which brackets is which blocks
- Sometimes renders weird due to argument overlaps

Benefits:
- Already implemented
- Typing to create blocks (but to be honest, who actually manually types out the scratchblocks when creating a big script)


Conclusion
The current forum scratchblocks interface is far from optimal and has not been modified for years now. Should Scratch 4.0 (or whatever version it is on rn +1) or even as a micro path occur, I hope that such a more convenient interface can be implemented, one where you don't need to use your mouse-pointer like it is doing a parkour course.

Should you have any questions, queries, suggestions or arguments, I would be more than happy to reply.

edit: another reason why is because if you are trying to type out the raw scratchblocks text without the scratchblocks tag to display is that it gets butchered beyond readability with random emojis popping up whenever you try to type in opperators or links to about blank tabs.

Last edited by 102acrimea (March 16, 2025 05:08:49)

NotK3ndricAltAgain
Scratcher
500+ posts

Integrate Coding Scratch blocks interface with Forum ScratchBlocks

Then loads of custom blocks wouldn’t be able to be made, like this:

Maybe in the My Blocks section you can create your own block with a custom colour or hex code?
102acrimea
Scratcher
100+ posts

Integrate Coding Scratch blocks interface with Forum ScratchBlocks

NotK3ndricAltAgain wrote:

Then loads of custom blocks wouldn’t be able to be made, like this:

Maybe in the My Blocks section you can create your own block with a custom colour or hex code?

It could still be possible to create custom blocks by adding an additional section which allows for choice between the original and potentially new one. The current version is just somewhat insufficient for the creation of long strings. It would could also be made so that a text is outputed so only the editing method is changed.
gdpr7314264727b19c01a53ed58b
Scratcher
1000+ posts

Integrate Coding Scratch blocks interface with Forum ScratchBlocks

102acrimea wrote:

- Difficult to visualize before posting (I know there are testing topics, but I doubt people use it often for serious purposes)
You can just preview by clicking the button (see the far-right of your toolbar), or alternatively taking the long route for whatever reason you may have and creating a POST request to https://scratch.mit.edu/discuss/preview/
with your request being “data:”(post content)“” (replace “(post content)” with the contents of your post, of course), note that newlines have to be covered with \n instead.

Last edited by gdpr7314264727b19c01a53ed58b (March 16, 2025 20:13:05)

102acrimea
Scratcher
100+ posts

Integrate Coding Scratch blocks interface with Forum ScratchBlocks

Zydrolic wrote:

102acrimea wrote:

- Difficult to visualize before posting (I know there are testing topics, but I doubt people use it often for serious purposes)
You can just preview by clicking the button (see the far-right of your toolbar), or alternatively taking the long route for whatever reason you may have and creating a POST request to https://scratch.mit.edu/discuss/preview/
with your request being “data:”(post content)“” (replace “(post content)” with the contents of your post, of course), note that newlines have to be covered with \n instead.

While previewing, it is not possible to edit so it is still difficult to some extent to determine what to edit to have what effect, besides, there still are other problems with the current system.
gdpr7314264727b19c01a53ed58b
Scratcher
1000+ posts

Integrate Coding Scratch blocks interface with Forum ScratchBlocks

102acrimea wrote:

While previewing, it is not possible to edit so it is still difficult to some extent to determine what to edit to have what effect
Fair enough.
102acrimea
Scratcher
100+ posts

Integrate Coding Scratch blocks interface with Forum ScratchBlocks

Bump
102acrimea
Scratcher
100+ posts

Integrate Coding Scratch blocks interface with Forum ScratchBlocks

Bump, I wrote this essay science report extended TEEL ALARM paragraph PETAL IDEAEAE suggestion so that it could be suggested.
KangaCoder
Scratcher
1000+ posts

Integrate Coding Scratch blocks interface with Forum ScratchBlocks

I don't know if DjangoBB could support this. It would also involve having to get all of the “stuff” (idk what to call it) regarding blocks in the editor and transferring it to DjangoBB's software. That means like a major hassle/resource for a developer team that doesn't view the forums as high priority, unfortunately.
102acrimea
Scratcher
100+ posts

Integrate Coding Scratch blocks interface with Forum ScratchBlocks

KangaCoder wrote:

I don't know if DjangoBB could support this. It would also involve having to get all of the “stuff” (idk what to call it) regarding blocks in the editor and transferring it to DjangoBB's software. That means like a major hassle/resource for a developer team that doesn't view the forums as high priority, unfortunately.
It does not need to be a total replication of the coding interface, just in a way that would make it easier to use. Perhaps instead of using the coding blocks interface it can simply be modified to add a Scratchblocks toolbar or hamburger bar that allows for the dragging of Scratchblocks on the text field, which should be more or less achiveable. Additionally, it could also be made so that during preview mode Scratchblocks are editable as visible.
BigNate469
Scratcher
1000+ posts

Integrate Coding Scratch blocks interface with Forum ScratchBlocks

You didn't have to write a whole essay to get the point across

NotK3ndricAltAgain wrote:

Then loads of custom blocks wouldn’t be able to be made, like this:

Maybe in the My Blocks section you can create your own block with a custom colour or hex code?
It could just filter out impossible blocks, and still let you type [scratchblocks] if you wish.
KangaCoder
Scratcher
1000+ posts

Integrate Coding Scratch blocks interface with Forum ScratchBlocks

102acrimea wrote:

It does not need to be a total replication of the coding interface, just in a way that would make it easier to use. Perhaps instead of using the coding blocks interface it can simply be modified to add a Scratchblocks toolbar or hamburger bar that allows for the dragging of Scratchblocks on the text field, which should be more or less achiveable. Additionally, it could also be made so that during preview mode Scratchblocks are editable as visible.
I just don't think the Scratch Team would be willing to spend the resources/time to add something that to a feature that is manageable (not perfect) to use right now.
102acrimea
Scratcher
100+ posts

Integrate Coding Scratch blocks interface with Forum ScratchBlocks

Still awaiting a nope/reject. While it is still manageable as of now, I believe that it would be of great benefit to the forums as it simplifies the process of assisting someone else making it faster allowing for faster and more detailed replies making it more understandable for the general age group of Scratch users. The Scratch Blocks feature on forums as of now is limited to simple scripts with my blocks and interlinked systems which make up a vast majority of projects that need help being highly difficult to create to the point that it is not worth creating one with scratch blocks, making potentially confusing explanations the only option.
102acrimea
Scratcher
100+ posts

Integrate Coding Scratch blocks interface with Forum ScratchBlocks

Bump, everyone gets a free essay at a 100% discount except for the time cost
102acrimea
Scratcher
100+ posts

Integrate Coding Scratch blocks interface with Forum ScratchBlocks

Reducing bump frequency to weekly
102acrimea
Scratcher
100+ posts

Integrate Coding Scratch blocks interface with Forum ScratchBlocks

Bump

Powered by DjangoBB