Archive #programming-help threads on the website #28
Labels
No Label
admins only
bug
design
duplicate
gimme feedback
good first issue
hmmmm
invalid
reference
wontfix
No Milestone
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: hmn/hmn#28
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Now that #programming-help uses threads, we have the ability to easily archive these threads to the website for later searching. This would expose the infinite wisdom of Martins to the broader internet and generally avoid one of the big downsides of doing programming help in a chat server.
I don't think we want this to be a full forum integration in some way. The cadence of conversation on Discord is
like
pretty different from what you do on a forum
and having all these messages show up as separate forum posts would be pretty disastrous for the rest of the UI
So, I think it is fine for this to be a one-way message archive, and not a live thing.
One question is how to represent users who have not linked a Discord account. We don't want to show their actual username and profile photo, because we want people to retain a level of anonymity. However, I think conversations would not be very readable if we simply said "Anonymous User" for everyone without a linked account. Therefore, I propose that we give each unlinked conversation participant a random profile pic from Anime Girls Holding Programming Books.
As for privacy in general, I feel that it is fine to reproduce the contents of #programming-help on the website because it is both explicitly on-topic and posted on a public Discord server. We should however respect message and thread deletion and reflect that on the site. Also, we could possibly add an explicit opt-out that an admin can manually set for a Discord user (linked or not), in case someone is uncomfortable having their programming questions being exposed to search engines, even in anonymous form.
We will have to modify our Discord code and data structures somewhat to allow us to save message content even for users without a linked account, because we have not done so up until this point. At the moment I think we have a beautiful setup that does nice cascading deletes of message content when you unlink an account. Sadly, that might have to go.
Here are some concrete steps to follow to get this going:
discord scrapechannel
command to support threads. This will involve adding a new table to our database to store thread info, and will require us to extend the discord message table to store thread/channel IDs if it doesn't already.Of course, at the end we'll have to test the hell out of showcase, library, and help stuff again to make sure we didn't mess up any edge cases.
After that is all done, the rest is just building UI.