We had to do this for a link shortening system (to make sure random base64 didn't contain profanity). It was a pretty fun problem. Not just the implementation, but doing the math to make sure it didn't make our shortened links easily enumerable. The implementation wasn't too bad, but we set up logging initially to spit out any random strings it decided to block. I demo'd this in front of the whole company and live ta…
> to make sure random base64 didn't contain profanity I would have said "why bother" until this happened to us. A customer rang us up in a fury because some demo/ random data that we generated happened to have the word "penis" in it. They were convinced we must have put it there because we thought he was a cock. It was very difficult to defuse the situation.
The naughty username checking system used by Twitch
141–150 of 348 posts
Re: The naughty username checking system used by Twitch
#142Earlier quoted context omitted.
That's amusing, but I think it also highlights the effectiveness of the strategy. WNKR is excusable and defensible. WANK would not be. Edit: But I'll concede that when your outputs are only four characters long and end users will actively interact with them (write them down, type them again later, etc.), additional safeguards might be appropriate. Or simply omit all alphas and use only numerics.
> Or simply omit all alphas and use only numerics. You're still not out of the park with numerics - people with 1313 or 6660 or 4444 or something will complain a lot. The possibility of a 666 in some new biometric government IDs in my country rose a massive stink from church...
Also, have a feelin you meant to do 1312. What’s the issue with 4444, though?
Re: The naughty username checking system used by Twitch
#143Earlier quoted context omitted.
> Or simply omit all alphas and use only numerics. You're still not out of the park with numerics - people with 1313 or 6660 or 4444 or something will complain a lot. The possibility of a 666 in some new biometric government IDs in my country rose a massive stink from church...
I was in the UK recently and - if you can believe it - there was a car on the block I stayed whose plates contained 666. Also, have a feelin you meant to do 1312. What’s the issue with 4444, though?
Re: The naughty username checking system used by Twitch
#144We had to do this for a link shortening system (to make sure random base64 didn't contain profanity). It was a pretty fun problem. Not just the implementation, but doing the math to make sure it didn't make our shortened links easily enumerable. The implementation wasn't too bad, but we set up logging initially to spit out any random strings it decided to block. I demo'd this in front of the whole company and live ta…
When it comes to censoring randomly generated strings, I like simply to omit vowels from the alphabet. Usually I'll omit some of the more obvious lookalikes too, e.g. [1 0 v]. It's a simple solution. Sure, it is still possible for something to slip through that looks similar to something bad. But the potential to strongly offend is greatly reduced.
Re: The naughty username checking system used by Twitch
#145Earlier quoted context omitted.
> to make sure random base64 didn't contain profanity I would have said "why bother" until this happened to us. A customer rang us up in a fury because some demo/ random data that we generated happened to have the word "penis" in it. They were convinced we must have put it there because we thought he was a cock. It was very difficult to defuse the situation.
I have a bus ticket from Stockholm with the serial of F4CK. Totally made my day back then to be honest.
Re: The naughty username checking system used by Twitch
#146Earlier quoted context omitted.
I feel bad for the Amazon employee who came into work one day with this project sitting on their desk.
My understanding from talking to {current,former} {Amazon,Twitch} employees is that Twitch has retained a decent amount of engineering independence. For better or worse, it's unlikely that some rando at Amazon ended up with this particular PHP file on their desk.
So yes, Amazon employees have ended up with this particular file on their desk.
Re: The naughty username checking system used by Twitch
#147Re: The naughty username checking system used by Twitch
#148Earlier quoted context omitted.
That's amusing, but I think it also highlights the effectiveness of the strategy. WNKR is excusable and defensible. WANK would not be. Edit: But I'll concede that when your outputs are only four characters long and end users will actively interact with them (write them down, type them again later, etc.), additional safeguards might be appropriate. Or simply omit all alphas and use only numerics.
> Or simply omit all alphas and use only numerics. You're still not out of the park with numerics - people with 1313 or 6660 or 4444 or something will complain a lot. The possibility of a 666 in some new biometric government IDs in my country rose a massive stink from church...
Yeah. An important, long-lived ID that will stick with an individual for their entire life, and that they may want to commit to memory. That seems like a good time to take a hypersensitive approach and adopt some kind of filter.
Re: The naughty username checking system used by Twitch
#149Earlier quoted context omitted.
Yeah there was an article I read a while back about a company looking to prevent the use of 'naughty' words in randomly-generated strings used as event IDs. Apparently someone with some pull had seen a message with an offensive word. Some management committee spent a long time trying to figure out how to solve the problem including proposing keeping a list of bad words, and then worrying about what should be in it an…
> didn't mention the use of v or l33t-speak What is 'v' in this context? Edit: thanks for the answers. It makes sense now.