theforumhelpers.github.io icon indicating copy to clipboard operation
theforumhelpers.github.io copied to clipboard

Feature Request: Bulit-in form for applications

Open Chiroyce1 opened this issue 3 years ago • 30 comments

So right now we're only providing instructions to the user to make their own application, but we could have a form built-in to the website that makes an application that they can copy and paste into the studio, here's a mock-up

image

And it would generate a string of text which the user can post, like this

Application for ScratchCat — Active in Advanced Topics, Suggestions and Help With Scripts. Constructive posts: https://scratch.mit.edu/discuss/post/{id}/, https://scratch.mit.edu/discuss/post/{id}/, ... Most recent post: https://scratch.mit.edu/discuss/post/{id}/ Codeword: {codeword}

I could possibly implement a basic version of this if have time..

Chiroyce1 avatar Mar 23 '22 15:03 Chiroyce1

If this was implemented I would be opposed to having a code word section because it causes the user to look back at the page searching for a code word. Maybe the application page could tell the user to include the code word in an “Additional Information” section, because the point of the code word is to see if the user read the full page, not read how to apply and then quickly looked back for a code word.

leahcimto avatar Mar 23 '22 17:03 leahcimto

This sounds like it could solve some issues with applications not being filled out properly, but if leahcimto's idea was added then it wouldn't solve the problem with users not adding codewords. Which can be inconvenient, but probably for the best

gosoccerboy5 avatar Mar 24 '22 02:03 gosoccerboy5

I would be opposed to having a code word section because it causes the user to look back at the page searching for a code word

I agree that the code word shouldn't be included, so the user has to manually post the codeword along with the application.

This sounds like it could solve some issues with applications not being filled out properly,

Yeah, and it can automatically reject users with less than 500 posts (it can use the fetch API to get their post count via ScratchDB) and also not allow users to select unconstructive subforums for their application.

Chiroyce1 avatar Mar 24 '22 08:03 Chiroyce1

Oh and we could also check each and every post to make sure it isn't on an unconstructive subforum, and we could remove the recent post textbox since we can use ScratchDB for that (it would be 100% accurate if their latest post was made at least 5 minutes before they apply)

Chiroyce1 avatar Mar 24 '22 08:03 Chiroyce1

Suggestion Instead of a copy-paste thing it could send it to a GitHub bot which could open a issue in a repo for it. Issues I've found Not everyone has a GitHub account to reply. This would also be hard to add

Mbrick2 avatar Mar 27 '22 00:03 Mbrick2

@Mbrick2 that wouldn't work well - remember that we need some way to know that the user is actually the one posting it. So we could use FluffyScratch to authenticate the user and then implement your idea, but GitHub pages doesn't have a back-end service so that wouldn't work... and the only way to identify the user correctly is by asking themselves to post a comment on the studio, this way we can find out if they read the instructions (by checking if they included the codeword) and also if they're the actual user who is applying (with their username on the comment).

Chiroyce1 avatar Mar 27 '22 04:03 Chiroyce1

@Mbrick2 Also, discussion should take place in the studio, not on Github.

leahcimto avatar Mar 27 '22 13:03 leahcimto

Couldn't we technically just make a bot that comments in SA when somebody applies?

qloakongithub avatar Apr 12 '22 19:04 qloakongithub

Couldn't we technically just make a bot that comments in SA when somebody applies?

That is against ToS

BarelySmooth avatar Apr 12 '22 19:04 BarelySmooth

Couldn't we technically just make a bot that comments in SA when somebody applies?

That is against ToS

Can you please show me that?

qloakongithub avatar Apr 13 '22 11:04 qloakongithub

Can you please show me that?

I just checked again and the ToS does not explicitly disallow bots. But multiple Scratch team members have said that bots are not allowed on the website.

Scratch is a site for human interaction. Bots in general are not welcome as they can (and have) been used to spam, consume resources, and distort site usage statistics. – Paddle2See, source

No. Bots that do social actions such as following may be deleted. –Za-Chary, source

BarelySmooth avatar Apr 13 '22 11:04 BarelySmooth

Can you please show me that?

I just checked again and the ToS does not explicitly disallow bots. But multiple Scratch team members have said that bots are not allowed on the website.

Scratch is a site for human interaction. Bots in general are not welcome as they can (and have) been used to spam, consume resources, and distort site usage statistics. – Paddle2See, source

No. Bots that do social actions such as following may be deleted. –Za-Chary, source

Those state bots that do social actions and spam, and stuff relating to that variety. A bot that comments rarely unless there's a storm of people applying isn't any of those.

qloakongithub avatar Apr 13 '22 11:04 qloakongithub

Hello. I don't know how or why I got added to this thread, but I shouldn't be here. I have tried to unsubscribe but with no luck. Can you please remove me from this thread. Thanks.

scratchcat avatar Apr 13 '22 11:04 scratchcat

Those state bots that do social actions and spam, and stuff relating to that variety. A bot that comments rarely unless there's a storm of people applying isn't any of those.

Still, it has been stated that they would still be banned, even if they don't spam.

Chiroyce1 avatar Apr 13 '22 11:04 Chiroyce1

Hello. I don't know how or why I got added to this thread, but I shouldn't be here. I have tried to unsubscribe but with no luck. Can you please remove me from this thread. Thanks.

Sorry about that. It looks like someone had @'ed you in the original comment when they meant to refer to the Scratch Cat character on the scratch.mit.edu coding site. I've edited their post to remove their @.

Accio1 avatar Apr 13 '22 19:04 Accio1

@Chiroyce1 In the future best to not comment with an at-symbol in front of a word/scratch username because it sends an email to the github user.

leahcimto avatar Apr 13 '22 20:04 leahcimto

I've asked @Chiroyce1 if he wants to work on this. If he doesn't want to work on it I'll mark it as help wanted. This should have an "Additional Information (optional)" section instead of a codeword section to make it less obvious that there is a codeword, and the apply page needs to be updated with wording that explains to put the codeword in the additional information section.

leahcimto avatar Jul 16 '22 22:07 leahcimto

For now, if someone is working on this, feel free to just create an unstyled/minimally styled version as we can work out the styling after the page is actually set up.

Accio1 avatar Jul 16 '22 22:07 Accio1

@Chiroyce1

I think we shouldn't check if they post in an unconstructive forum because to have some posts in unconstructive forums is perfectly fine in my opinion, as long as they have more posts in constructive ones.

penguinmoose avatar Jul 17 '22 01:07 penguinmoose

I feel like this isn't strictly needed, but it would be nice (it makes it more convenient).

penguinmoose avatar Jul 17 '22 01:07 penguinmoose

For now, if someone is working on this, feel free to just create an unstyled/minimally styled version as we can work out the styling after the page is actually set up.

Yeah, I can work on a proof of concept and get it ready by 20th July, sounds good?

I think we shouldn't check if they post in an unconstructive forum because to have some posts in unconstructive forums is perfectly fine in my opinion, as long as they have more posts in constructive ones.

Subforums like Requests, Show and Tell, TiMaC, TiRaP, etc aren't really constructive forums, but I'll leave this for the TFH managers to decide. We can always change this later on too.

Chiroyce1 avatar Jul 17 '22 05:07 Chiroyce1

@Chiroyce1 Yep, sounds good!

leahcimto avatar Jul 17 '22 14:07 leahcimto

When we put it on the website, where should it go? I'm thinking there should be a dropdown at the bottom of the application instructions in which you can show/hide the application generator.

penguinmoose avatar Jul 17 '22 21:07 penguinmoose

Draft is done - https://github.com/Chiroyce1/tfh-form TODO: Add validation of posts via ScratchDB

Preview: https://chiroyce1.github.io/tfh-form/

Chiroyce1 avatar Jul 19 '22 13:07 Chiroyce1

That looks great, @Chiroyce1! I think one thing you could add is something explaining how to get post links, since I often see that is a common issue.

leahcimto avatar Jul 19 '22 16:07 leahcimto

@Chiroyce1 Also, I think there should also be Project Ideas and New Scratchers as an option for active sub-forums, although those are not strictly constructive, but posts there can still be constructive.

penguinmoose avatar Jul 20 '22 21:07 penguinmoose

@Chiroyce1 How's it going? I wouldn't worry too much about what subforums to include. We can always change that later.

Validation of posts via ScratchDB isn't very important in my opinion. By post validation, you mean checking if the posts exist and are not deleted, dustbinned, or otherwise removed from the public forums?

I really don't think it would be good to check whether every post is in a constructive subforum. Someone might have posted stuff in other forums a long time ago. Besides, the people will check it and see if they should join.

penguinmoose avatar Aug 01 '22 20:08 penguinmoose

@penguinmoose I'm sorry I sort of forgot about this 😭

I wouldn't worry too much about what subforums to include. We can always change that later.

Yeah, thats an easily modifiable array, I just need to make sure that the checkboxes also hide/show according to the list.

By post validation, you mean checking if the posts exist and are not deleted, dustbinned, or otherwise removed from the public forums?

Basically just making sure that they were posted by the user they are claiming to be, just in case they grab a wrong link or something. But yeah, I agree that it isn't too necessary.

I really don't think it would be good to check whether every post is in a constructive subforum. Someone might have posted stuff in other forums a long time ago. Besides, the people will check it and see if they should join.

I think this makes the most sense. I think we all need to decide if ScratchDB verification is necessary, and also error handling is required since ScratchDB does go down pretty frequently. @leahcimto, @gosoccerboy5, thoughts?

Chiroyce1 avatar Aug 02 '22 13:08 Chiroyce1

Yeah, thats an easily modifiable array, I just need to make sure that the checkboxes also hide/show according to the list.

quick note: If you're doing ScratchDB verification along with that, I think you need to properly spell and capitalize the names of each subforum. My code had a little bug with case sensitivity and one of the items in the subforums list.

I think ScratchDB verification is a good idea. As long as we make sure these posts are in constructive subforums, are the applier's posts and not someone else's, and are not dustbinned/removed/inappropriate, then we can make sure a lot of applications go well.

As for ScratchDB error handling (ie, ScratchDB is down which happens a lot), I think we just show a note to the user telling them about ScratchDB being down, and asking them to double-check their application.

gosoccerboy5 avatar Aug 02 '22 13:08 gosoccerboy5

@Chiroyce1 Sorry for the delay, but I actually now think ScratchDB verification is not nessasary. If one of the posts is deleted or dustbinned etc (which is actually very unlikely), the studio people can just alert the person - although verification would be a low priority good addition in my opinion. If there’s an error, we can just assume that the post is valid - the chance that someone has an invalid post and ScratchDB is down at that moment is very small.

penguinmoose avatar Sep 11 '22 20:09 penguinmoose