WELCOME TO THE LIST OF REJECTED SUGGESTIONS!
This topic contains any suggestions that have previously been rejected by the Scratch Team. As a result, these suggestions will not be added to Scratch, so please do not make any posts in the “Suggestions” forums asking for one of these. Otherwise, you may be directed to this post.
PLEASE DO NOT SUGGEST THINGS HERE!
I am a member of the Scratch Team, but your suggestion will get more attention if you make your own topic about it. Also, please do not spam or create off-topic posts.
There were previous topics about the rejected suggestions, but they have all become either inactive or incomplete. You can see the old topics below:
@jvvg's List (May 2013 – February 2017),
@customhacker's List (February 2017 – August 2018),
@LionHeart70's List (August 2018 – March 2019).
Descriptions for each rejected suggestion have been written by myself, and for most of the suggestions, I have included a link to a post that serves as the official rejection. Every suggestion listed here has been officially rejected by the Scratch Team.
Please let me know if any information is incorrect, missing, or outdated! I will do my best to update and revise the list as needed. In addition, feel free to tell me if there are any spelling mistakes or formatting errors.
There are currently 51 rejected suggestions. This list will be updated regularly.
Click here for a table of contents.
Click here for the suggestions that have been rejected most recently.
THE REJECTED SUGGESTIONS
1. Scratch Blocks
1.1 “Broadcast received” boolean block
The block below would allow a project to detect when a broadcast is sent. But, there is a lot of ambiguity on how this would work. Would it return true if the broadcast was fired since the project was created, since the green flag was clicked, or since something else was broadcasted? The workaround is simple: use variables that change when a broadcast is received, then use the “equals” block.
However, the blocks “repeat until broadcast received” and “wait until broadcast received” are NOT rejected; you can discuss them on this post.
<[message v] received? :: events>
1.2 “When stop sign clicked” hat block
The block below would allow users to click the stop sign to run a script. However, the stop sign is designed to stop all the scripts in the project. With this block in place, more scripts will start when you want the project to stop, thus defeating the purpose of the stop sign. This could also be rather confusing for the “stop all” block. Regardless, there is a workaround that uses the “when (timer) > (number)” hat block; one such workaround can be found in this post.
when stop sign clicked :: events :: hat
1.3 “Pointing towards sprite” boolean block
The block below would allow a sprite to detect it is pointing towards another sprite. However, this block is also rather ambiguous; does it return true if the sprite is pointing in any direction towards another sprite, or strictly at the center of the sprite? Either way, it is relatively easy to work around, and the workaround depends on how you want the block to work.
<pointing towards [sprite v]? :: sensing>
1.4 Money blocks or paid advertisements on Scratch
The block below, and others, could be used to ask users to pay real money in order to do something in the project. The problem with such money blocks is that many users on the website are young and do not quite know how money works (and most do not even have a credit card account). Users could make projects which require others to pay a large amount of money in order to play the project. Overall, it adds further complexity to the website, and would limit users' access, without any clear benefit towards the educational value.
Moreover, Scratch is supposed to be a non-profit organization. If the Scratch Team or any Scratchers start making money from projects on Scratch, that would contradict this non-profit philosophy, and that would be a huge legal issue. This is also why paid advertisements, like on YouTube, would also not be a good fit for Scratch.
ask for [$ v] () and wait :: sensing
1.5 Social action reporter blocks
The block below could be used to obtain the current number of loves, favorites, or views of the project. Similar blocks could return the number of loves or followers that the user or creator has. But, project creators can easily use these blocks to prevent Scratchers from playing unless the project is given enough loves, favorites, and the like. These blocks could also make people think that getting these social actions are important, or that Scratch is about fame. In reality, if a user presses the love button on a project, it should be because they enjoyed the project, not because they are trying to reach some sort of goal.
This suggestion extends to all social actions, including views, loves, favorites, remixes, comments, and followers.
(number of [loves v] :: sensing)
1.6 Cloud lists
Cloud variables currently have several restrictions. There can be at most 10 cloud variables per project due to server costs. New Scratchers cannot use cloud variables, for it is easy to misuse them. Cloud variables can only support up to 256 numeric digits to restrict the creation of chat projects; for more information, see #3.1 on this list.
The block below would allow you to create lists to be stored on the servers for everyone to see, similar to cloud variables. However, cloud lists would require similar restrictions as listed above, and the issues currently presented with cloud variables would only grow with the addition of cloud lists. You can still use cloud variables to create a list which contains entries everyone can see, but the Scratch Team will not be adding an easy official way to make cloud lists.
(☁ list :: list)
1.7 2D lists
2D lists, also known as 2D arrays, nested lists, or matrices, are a type of data structure that allows you to put an entire list as an element of another list; that is, it allows you to put lists inside of lists. These sorts of data structures are used widely in other programming languages.
The block below, and others, would allow you to create 2D lists to store information, sort of like a table. However, this is too complicated for what is supposed to be an introductory programming language. In addition, there are workarounds possible by using an ordinary list and an indexing function.
For those who are interested, it may be worth checking out Snap. It is a block-based programming language designed for more experienced programmers, and has more advanced data structures than Scratch does.
add () to sublist () of [list v] :: list
1.8 3D Scratch
The block below, and others, could be used with a z-axis in the project stage to make it easier to create 3D projects. But, Scratch is a language that is designed to be as easy as possible for beginners to learn. Adding 3D features would make the language more difficult for beginners to understand, and a 3D engine is not exactly the purpose of Scratch. There is a similar program to Scratch that contains block programming with 3D features, called Starlogo TNG. You can also try Alice; it is not exactly like Scratch, but has some similar features.
go to x: () y: () z: () :: motion
2. The Coding Interface
2.1 Adding users to work on projects
This would be difficult to moderate not only due to server limitations, but also because it could lead to private messaging. For more information, see #6.1 on this list. This suggestion includes live editing (similar to Google Docs) and other forms of private collaboration. If you would like to work on a project with another Scratcher, you can remix each others' projects.
The Scratch Team is interested in making some form of collaboration on Scratch. However, until the problems regarding moderation issues are addressed, this suggestion will likely not be implemented anytime soon.
2.2 Text-based coding in Scratch
Some users wish to code Scratch not with the blocks, but with typing code instead (similar to how more advanced programming languages work). However, the Scratch Team has discussed this possibility multiple times and has decided every time that it would not be beneficial for beginners or for teachers.
One amazing thing about block-based programming is that syntax errors largely do not exist. Text-based programming would introduce syntax errors which younger users might not understand.
2.3 Set the editor to look like older versions of Scratch
Some users prefer the look and feel of the Scratch 2.0 editor, and have suggested that the editor look like Scratch 2.0, but still run off of HTML5 like Scratch 3.0 does. However, this would be more complicated for educational and documentation purposes. It could be confusing if someone is trying to learn Scratch from someone who is using a completely different layout of the editor than them.
In addition, the Scratch Team changed the design for a reason: to make it easier, more intuitive, and friendlier for newcomers to use. If you dislike the Scratch 3.0 editor, you can still download the Scratch 1.4 or Scratch 2.0 offline editors; for more information, see #2.4 on this list.
However, the Scratch Team is still considering adding options to change the block size inside the editor, an option to switch the side of the screen the stage is on, and an option for a dark mode interface. It may be some time, though, before these ideas are implemented; please be patient.
2.4 Revert back to older versions of Scratch
Scratch has to update sometimes in order to accommodate for certain changes. In particular, an online editor that ran off of Adobe Flash (rather than Java) was added in Scratch 2.0, and Scratch 3.0 was created for tablet support and in anticipation of the discontinuation of Flash. Changing the editor back to these older versions of Scratch would not only undo years of hard work by the Scratch Team, but also might not work online anymore. If you wish, you can download the Scratch 1.4 and Scratch 2.0 offline editors. However, the Scratch Team is likely no longer concerned with fixing any bugs with these offline editors.
The Scratch Team is still working on bug fixes, new features, and other improvements on Scratch 3.0. The new interface was created in such a way that it is easy for the Scratch Team to make new updates, and they are indeed continuously making new updates (although these updates and bug fixes take much longer to implement than you think). Don't worry, Scratch 3.0 is far from finished!
2.5 Official Scratch to EXE converter
On Scratch, an important goal is to have anyone be able to look at the code for any project. This philosophy is not only important for learning code and remixing, but is also important for moderation purposes; for more information, see #3.2 and #4.1 on this list. Converting to EXE (or any other black box executables) will prevent users from looking at the code, and hence goes against this philosophy. Third party converters do exist, and you can use those, but an official one made by the Scratch Team will not be made.
2.6 Increase the 300 clone limit
The clone limit is set in place in order to prevent projects from becoming unplayable. Otherwise, users could create a large amount of clones very quickly and crash someone's browser page. Plus, the Scratch Team wants to make sure that all projects run smoothly for as many people as possible. Increasing the limit to even 500 clones might make the project run slowly on some users' devices.
3. Scratch Projects
3.1 Chat projects with cloud variables
Although it is possible to make a chat project using cloud variables, you cannot make such a project. This is because there is high potential for bullying and inappropriate messages, and the Scratch Team does not have the resources to moderate these chat rooms.
Chat projects on Scratch which contained a whitelist (that is, the user could only chat using certain words) used to be allowed on Scratch. Over time, however, the moderation issues got too high, and some users attempted to use such projects to get around the Community Guidelines. As a result, the Scratch Team has decided that these kinds of projects are not allowed on the Scratch website, even if they contain a whitelist.
3.2 Disable remixing or censor minor remixes
One of the most important ideas of Scratch is the share aspect. Scratch is a website not only for displaying your work, but also for sharing it with others, and by posting your project on the Scratch website you agree to allow others to remix your work. You are not allowed to write “Do not remix this project” in the Notes and Credits of your project; you may get alerted for this because it discourages remixing.
A remix of a project is allowed on Scratch, even if the remix only contains minor changes (this includes recolors). However, when you remix a project, you should put in the Notes and Credits what you changed. If you see a project that contains no noticeable changes, please use the Report button on it so the Scratch Team can take a look at it.
For more information, see #4.1 on this list. This suggestion extends to “extremely minor remixes,” such as a remix of a game that gives you 2 points per second instead of 1. As long as the user explains what they changed about the project and gives proper credit, this is okay.
3.3 Remove restrictions on Five Nights at Freddy's projects
You can read more about why these restrictions were placed on the post above. Because of the content in these games, the reputation of Scratch had been ruined at one point. The Scratch Team does not want to risk their reputation by removing these restrictions.
This suggestion extends to any project with jumpscares in them, even if they have warnings in them. After all, projects shared on the Scratch website should be for all ages, and young children may not understand what they are getting themselves into. However, you are free to use Five Nights at Freddy's characters in your project as long as the project follows the Community Guidelines (one example is a Five Nights at Freddy's dress-up game). Be sure to report any project that does not follow the Community Guidelines, especially if it contains jumpscares or scary images.
3.4 Censor projects with no coding
Scratch encourages creativity, simple as that. As a result, many kinds of projects are allowed, such as algorithms, games, art, animations, music, and others. Some of these projects do not necessarily need any scripts in them, and the Scratch Team will not require that they do.
4. Project Pages
4.1 Disable “See Inside” or restrict sharing
Some users want an option to prevent Scratchers from looking inside their project and using their artwork, scripts, or sounds. However, the core ideas of Scratch are "Imagine – Program – Share". By sharing a project on the Scratch website, you are allowing others to see the code and potentially remix or reuse the data inside, as long as they give credit. That being said, please report any project that does not give credit to a certain user where credit is due. If you do not want other users to see inside your project, then do not share your project on the Scratch website.
Restricting sharing so that only certain users can view the project is also not going to be implemented. It is important for projects to be publicly shared for everyone to see so people can report them if they are inappropriate. Only allowing certain users to view projects could increase the chances of inappropriate projects being shared on the website. It could also be used for private messaging; for more information, see #6.1 on this list.
4.2 Dislike button or a project rating system
This idea has a major drawback. Generally, a user's first project is something rather simple, such as a test project, a remix, or a project made using a tutorial. Because this project is simple, other users may give the project low ratings since it is not advanced. With low enough ratings, the creator might be discouraged enough to stop using Scratch, even though the creator is just trying to learn.
Moreover, constructive feedback is encouraged on Scratch. A dislike button may show the creator how many people disliked their project, but it tells nothing about what the creator could do better. If you do not like a project, you could choose not to love it, or you could leave a respectful and constructive comment telling the user how to improve.
4.3 Delete or edit your comments everywhere
The inability to delete your comments everywhere is put in place so users do not post inappropriate comments or spam comments on other users' profiles, projects, or studios, just to delete them later on. In contrast, you are not really likely to spam your own projects or profile. Editing comments could similarly lead to comment manipulation, such as a user commenting “I like this project!”, waiting until someone replies with “I agree!”, and then editing the original comment to say “I hate this project!”.
4.4 Remove character limits on text fields
This is placed to prevent spam. If any character limits were removed entirely, spammers could use this to paste large blocks of text, effectively taking up server space and slowing down the website.
Simply raising the limits, however, is NOT rejected. You can discuss various character limits on the following topics: About Me and What I'm Working On, Project Comments, or Studio Descriptions.
4.5 Ability to see who viewed a project
Views are different from loves and favorites in that users can view a project to see if they like it, and then love or favorite the project if they do like it. With this suggestion, some drama could be started if a user sees that another user viewed a project, but did not love or favorite it. Moreover, projects generally get significantly more views than loves, favorites, or comments, so if users got notifications for this, it would lead to even more unwanted messages. Despite all this, there is a workaround for this which uses cloud variables, so one could potentially see who viewed a project.
5. Studio Pages
5.1 Remove studio activity messages
Although they may seem annoying at times, they can be rather helpful for some users. Removing such messages entirely does not have a clear benefit for everyone. If you find it annoying, one easy way to solve this is to not curate so many studios.
However, the option to turn them off is NOT rejected. You can discuss it on this post.
5.2 Add an “invite all followers” button for studios
This feature existed in Scratch 2.0, but it was an extremely easy way for one user to create lots of notification spam for other users, most of which was unwanted. By removing this feature, users are forced to work a little bit to invite a large number of users.
5.3 Remove “add everything” or “invite everyone” studios
These studios are not against the Community Guidelines and are also rather harmless. Certain friendships or collaborations could also be formed as a result of such studios. Furthermore, the Scratch Team marks these studios NFE (Not For Everyone), so they generally will not show up in search results anyway.
6. Scratch Community
6.1 Private messaging
Scratch currently has public messaging, meaning anyone is able to see the comments that you write. As a result, people are more likely to be respectful since anyone can see the comment. However, with private messaging, people know that only the intended recipient can see the message, so users may not think before posting. This could lead to many more disrespectful or inappropriate comments.
The Scratch Team also simply does not have the resources to moderate a private messaging system, precisely because there would be a lot of disrespectful or inappropriate comments. In addition, it is a huge Internet safety concern, and is not really the purpose of using Scratch anyway.
This suggestion extends to allowing users to post links to other private messaging websites, such as Discord. Many such messaging websites are not as well-moderated as Scratch is. If such links were allowed, Scratch may be held responsible if anything bad happens to someone.
6.2 A 13+ version of the Scratch website or age-restricted content
Scratch is designed for ages 8 to 16, but any content shared on the website must be appropriate for all ages. Dividing the community by making a separate, age-restricted website would not be helpful. Potential restrictions from entering the website (such as a warning, or requiring a parent to answer math equations) would not necessarily stop an underage child from entering the 13+ website.
This suggestion extends to age-restricting anything on Scratch, such as viewing specific projects, or viewing NFE (Not For Everyone) projects. As a general rule, Scratch is designed for all ages.
6.3 Notification for being mentioned in comments
Some users would like to be notified whenever someone mentions their username in a comment in the website. Although such an option was considered, it was not added due to the potential for spam. For instance, someone could write @Scratcher multiple times to spam that user's notifications.
6.4 Ban “follow for follow” (f4f)
Asking someone to participate in follow for follow is relatively harmless. It is also not enforceable; how do you stop someone from doing follow for follow? If someone asks you to do follow for follow, and you do not want to, just politely decline their request. If they keep spamming you with requests, you can report that user.
6.5 Allow Scratchers to moderate the website
Certain community moderator programs used to exist where Scratchers could moderate the website, but it was removed due to some very inappropriate things showing up in the report activity, among other reasons. As a result, the Scratch Team has decided to only allow adults to moderate the website, including the forums.
If you are 18 or older, legally allowed to work in the United States, and are interested in moderating the website, check out the Jobs link to see if there are any openings for the “Community Moderator” position.
6.6 Scratch Team members should not post political views
According to the Community Guidelines, “Scratch welcomes people of all ages, races, ethnicities, religions, abilities, sexual orientations, and gender identities.” As long as someone's beliefs and statements are respectful and welcoming towards all groups of people, they allowed to express them on the Scratch website, and this includes members of the Scratch Team.
A more detailed explanation in the case of LGBTQ+ ideas can be found in this post.
6.7 Improve or remove the extension policy
User-created extensions and userscripts are not allowed on Scratch as per the extension policy. Although such extensions may be useful for some users, it is not easy to tell if the extension is harmful to your device. The Scratch Team believes that the potential risks and harm in allowing user-created extensions outweigh the benefits, and are not looking for ways to improve this policy.
7. Account Information
7.1 Changing usernames
If a user could change his or her username (or even set a certain “nickname”), this could be very confusing for the Scratch community, especially for those following that user. In addition, this would make moderation of the website more difficult because it would be harder for the Scratch Team to keep an eye on what a user may be doing. It could also be hard on the servers. The Scratch Team has allowed username changes only on very rare occasions, such as if the username contained inappropriate or revealing content. Generally the Scratch Team does not change usernames on request (such as for reasons like “I do not like my current username anymore”).
However, because of the way that usernames are stored on the server, changing the cases of letters in your username (for example, changing @Za-Chary to @ZA-CHARY) is NOT rejected; you can discuss it on this post.
7.2 Add a rank above Scratcher or remove the New Scratcher status
There are three ranks: New Scratcher, Scratcher, and Scratch Team. The only reason the New Scratcher rank exists is to prevent spam, and since it only takes two weeks to become a Scratcher, bullying and separation is rather minimal. Similarly, the Scratch Team rank exists so users know who is on the Scratch Team; generally, Scratch Team members do not brag about the Scratch Team rank. In contrast, there may be division in the community between Scratchers and those with a higher rank, which could also lead to bragging and bullying.
Although the restrictions for New Scratchers may seem annoying, they are extremely effective against spam and inappropriate content. For New Scratchers who are wondering how to become a Scratcher or what it means to be one, check out this post. The Scratch Team will not allow any accounts to “skip” the New Scratcher status, even if it is an alternate account of an existing account.
7.3 Show when users are online
This suggestion refers to some sort of indicator that lets you know if a particular user is currently online. The Scratch Team has discussed it and has decided that it is not something that can benefit Scratch as an educational platform. Between making projects, sharing projects, and viewing projects, an online indicator is not much help in these areas.
7.4 Show when users are banned
The Scratch Team does not share account information with anyone other than the account owner. In addition, a banned user may not want to reveal the fact that they were banned to the public.
7.5 Delete inactive accounts or delete name sniping accounts
The only potential benefit to this suggestion is that it would free up the servers; however, a Scratch Team member has indicated that there is not a desperate need for more server space. In addition, deleting inactive accounts might mean that the user's projects get deleted, which would be extremely unfortunate should they decide to return to Scratch.
This includes accounts that have no activity at all; that is, the account has no projects shared, favorited, or followers. The Scratch Team sees no need to take down any accounts at this time to “free up usernames,” especially since there is currently no system available to recycle usernames. Having the Scratch Team make such a system is not as much of a priority as are other issues with the website.
7.6 Blocking users
This feature existed in Scratch 1.4, but the Scratch Team found that it buried the problem rather than solve it. Even if you block a user, that does not stop the user from harassing other Scratchers. If you are having a problem with a user, be sure to report that user with the Report button, or use Contact Us if the situation requires more explanation.
7.7 Digital currency or Scratch achievements
Essentially, digital currency would not really benefit the educational value of Scratch; after all, there is not really anything that you can buy. While there could be features that are only unlockable via digital currency, this does not really contribute to Scratch's purpose of being a programming language available for everyone. In addition, it is not clear as to how users could obtain this digital currency. However, you can make digital currency in your own projects, if you like.
A very good detailed analysis for why digital currency should not be on Scratch can be found on this post.
Some other users have suggested Scratch achievements such as “Created 50 Projects” with the idea that this would give users motivation to keep using Scratch. However, this sort of idea does not really fit in with the purpose of Scratch. Some users may use their achievements to determine that they are more important or better than other users. However, you are allowed to make achievements in your own games, if you like.
7.8 Remove the location feature
This is useful to see all the different areas of the world which use Scratch. If you do not want to share your country publicly, you can set it to something false, such as Antarctica.
7.9 Notification when someone unfollows you
This sort of feature could create a lot of drama within the Scratch community. Those who are concerned about follower count may get angry at another user for unfollowing them. The Scratch Team believes that users should be able to follow or unfollow anyone they want without feeling guilty about it, especially as their interests change. Remember that Scratch is not about the number of followers; it's about having fun!
8. Discussion Forum Features
8.1 Bring back the “Discuss” tab
The Discuss tab was removed for reasons that may not 100% clear to some users, but it will not be coming back. In general, the forums are not as restricted as the main website is, in terms of post content. For instance, users can post images on the forums, users can write Scratch blocks on the forums, and users can write and edit posts of up to 200,000 characters, none of which is possible on the main website. Yet, these options allow for more spam and misuse, especially for New Scratchers who are not aware of how the forums work. It is suggested that Scratchers learn of the forums through other Scratchers, who direct them to the correct forums.
A very good detailed analysis for why the Discuss button may have been removed can be found on this post.
8.2 Notification for being quoted in topics
Due to the way that the forum structure works, this suggestion simply is not possible to add. Even if it was possible, there would be a very high possibility of getting spammed with unwanted notifications. The technical issues and the potential for abuse make this feature rather impractical. If you want to stay updated on a certain topic, you can always follow the topic and get notified on new posts that are made.
8.3 Delete your own forum posts
If this suggestion were implemented, this could cause users to create inappropriate posts or spam posts, only to delete them later. For more information, see #4.3 on this list. As a result, Scratchers are forced to think before posting on the forums. If you make a post that you want to be deleted, you can either edit the post to remove all the text, or you can use the Report button and ask for it to be deleted.
8.4 Off-topic or miscellaneous section on the forums
This forum would have been used for posting about anything that was not necessarily related to Scratch. There actually used to be a forum topic like this, but it was difficult to moderate, and so it was shut down and replaced by the “Things I'm Making and Creating” and the “Things I'm Reading and Playing” forums (which do not completely allow off-topic posts).
8.5 Remove the “Suggestions” forum
This forum is useful for the Scratch Team to see what feedback Scratchers have about the website. Regardless of whether these suggestions will be implemented, the Scratch Team still uses this forum to get an idea of how to improve the website. Furthermore, it promotes discussion of the benefits and downsides of a particular user's suggestion. Despite what it may seem, the Scratch Team does check this forum, and there have been a number of suggestions made in this forum that have since been implemented.
9. Discussion Forum Restrictions
9.1 Remove the 60 Second Rule
The “60 Second Rule” refers to the fact that Scratchers need to wait 60 seconds after posting in the forums before they are able to post again (120 seconds for New Scratchers). While this may seem annoying, it is extremely effective against spam. Moreover, it can require users to carefully think about what they have typed before posting. You generally do not have to wait for very long between forum posts anyway; it is just 60 seconds.
9.2 Show exact post count of other users
Like with similar numbers on the website (such as 100+ projects in studios), there is not really much of a benefit to seeing the exact number. Post count is not a competition; the goal is not to make as many posts as possible, but to make quality posts to help other users. If you are curious, you can still see your exact post count here.
9.3 Remove restricted image hosts or add your own websites
By requiring an image host website (such as cubeupload) to be used when posting images on the forums, this decreases the chances of inappropriate images being posted on the forums, as inappropriate images are not allowed on these image host websites. The Scratch Team does not have the time to whitelist everybody's websites, especially when acceptable websites already exist.
9.4 Moderate mini-mods
There are a lot of users (“mini-mods”) on the forums who like to help out by identifying duplicate posts, explaining rules and forum etiquette (especially in response to blockspamming or necroposting), or quoting this Rejected Suggestions list. Such actions can actually be helpful for the Scratch Team moderators as these mini-mods can effectively answer users' questions or direct a user on where to go. Of course, these mini-mods should be acting helpful; you can report anyone who is trying to moderate someone without being respectful.