Vệ sinh bảng điểm cao để xóa các điều khoản / tên người dùng gây khó chịu


43

Tôi đang xây dựng một ứng dụng cho một khách hàng mà họ đã yêu cầu có một bảng điểm cao có thể nhìn thấy công khai. Nó sẽ hiển thị tên người dùng của họ, đây là trường văn bản miễn phí mà người chơi có thể nhập. Số lượng người chơi có thể cực kỳ thấp - tôi mong đợi tối đa 10 hoặc 100 giây / ngày.

Trường tên người dùng sẽ dài hơn 3 ký tự. Các tên sẽ được gắn với tài khoản Firebase Auth, nhưng chúng được tạo thông qua ứng dụng, không được gắn với bất kỳ thứ gì như Google Play hoặc tài khoản Facebook hoặc bất cứ thứ gì tương tự. Tôi nghĩ rằng họ sẽ ổn với việc xóa các tên rõ ràng gây khó chịu, nhưng họ sẽ không có nguồn lực lớn dành cho kiểm duyệt thủ công.

Khi tôi còn là một thanh niên, 100% các bảng điểm cao trong tủ trò chơi địa phương của tôi bao gồm một loạt các từ chửi thề và các thuật ngữ xúc phạm (hoặc các biến thể của các từ đó).

Tôi không thể tưởng tượng internet đã cải thiện vấn đề gì cả.

Làm cách nào tôi có thể vệ sinh tên người dùng để làm cho chúng an toàn để hiển thị?


10
Khách hàng có muốn vệ sinh tên người dùng không? Nếu không thì đó thực sự không phải là vấn đề của bạn ngay bây giờ.
MonkeyZeus

5
Suy nghĩ đầu tiên: - Thông báo cho khách hàng về mối nguy hiểm này, hỏi xem họ có muốn dành tiền cho thời gian của bạn để xử lý nó không. - Yêu cầu khách hàng cung cấp cho bạn một danh sách các điều khoản không được phép để loại bỏ. - Thành thật mà nói, đây là một bãi mìn. Hỏi xem họ có muốn nó được công khai không.
AJFaraday

4

4
Không hoàn toàn giống nhau, nhưng đủ tương tự: Bộ lọc tục tĩu: Ý tưởng tồi, hay Ý tưởng tồi tệ xen kẽ?
Gary

3
Biểu tượng cảm xúc có được phép không? Bảng điểm sẽ được hiển thị như thế nào? Tôi có thể rút tiền khi tôi tìm được cách nhập điểm trong bảng điểm của bạn không? Tôi có thể nhập Url dưới dạng tên ("XYZ.com", "XYZ_Com", "XYZ_Dot_Com") không?
xdtTransform

Câu trả lời:


73

Tôi khuyên bạn chỉ nên để khách hàng làm điều đó bằng tay.

Từ góc độ chi phí, bạn có may mắn về phía bạn lần này:

  • Bạn mong đợi không quá 100 người dùng / ngày, có thể thấp tới 10 / ngày
  • Bạn có một hệ thống xác thực, có nghĩa là lệnh cấm có thể là vĩnh viễn
  • Bạn có một khách hàng vui lòng xóa tên (không thường xuyên)

Thực tế là, sẽ mất 10 phút để ai đó xem qua bảng xếp hạng hàng đầu và cấm bất kỳ tên cực đoan nào - đơn giản là sẽ rẻ hơn và đáng tin cậy hơn so với việc bạn dành thời gian cho một giải pháp kỹ thuật (sẽ có vấn đề).

Với tỷ lệ phát thấp như vậy, không chắc điều này sẽ cần được thực hiện thường xuyên - thậm chí một lần mỗi tuần trong thời gian cao điểm có thể là đủ.


Nhưng tôi đã có nhiều thời gian, tôi có thể làm gì đó phải không?

Sai lầm.

Bạn có thể rất dễ dàng làm điều gì đó sai, điều đó gây tổn hại cho thương hiệu của khách hàng hơn là không làm gì cả.

Bạn muốn sử dụng Regex để bắt tất cả các tên xấu? Hy vọng tốt hơn là bạn hiểu đúng và cũng lọc tất cả các thông tin sai lệch từ nhiều cơ sở dữ liệu của tên người thật quốc tế:

https://en.wikipedia.org/wiki/Scunthorpe_propet

Và ngay cả khi bạn quản lý thành công những điều trên, người chơi không bị câm - họ sẽ rất dễ dàng tìm cách xung quanh hệ thống của bạn để tạo ra một cái tên gây khó chịu không kém mà bạn không nắm bắt được.

Ở mức tối thiểu, bạn vừa thêm nhiều công việc hơn nữa để duy trì các quy tắc này được cập nhật, so với công việc thủ công nhỏ chỉ nhìn vào điểm số cao nhất và cấm.


Không nhưng nghiêm túc mà nói, đây là một trò chơi dành cho trẻ em - khách hàng đã nói rõ rằng KHÔNG THỂ NÂNG CẤP cho những cái tên gây khó chịu. Phải có một cái gì đó!

Nếu đây là trường hợp trung thực, và bạn không thể dung thứ cho những cái tên gây khó chịu. Giải pháp thực tế duy nhất là không để người chơi của bạn tạo tên riêng của họ.

Đây là giải pháp bạn sẽ tìm thấy trên hầu hết các trang web chơi game của trẻ em, chẳng hạn như Cartoon Network.

Thay vì đưa ra một đầu vào trống, bạn đưa ra một lựa chọn "phần tên" có sẵn. Ví dụ:

  • Một tính từ, chẳng hạn như "Tuyệt vời", "Tuyệt vời", "Xảo quyệt"

  • Một khoảng giữa, như "Râu", "Mắt laser", "Cướp biển"

  • Một danh từ, chẳng hạn như "Master", "Người chiến thắng", "Người phát hiện"

Mà hạn chế hiển thị tên cho những thứ như "Awesome Pirate Master".

Cũng nên xem xét nhanh những danh sách từ bạn đang sử dụng. Không có điểm nào thực hiện hệ thống này nếu người dùng có thể đánh lừa tên để có được những thứ vẫn nghe có vẻ khó chịu hoặc bẩn thỉu.

Tất nhiên, cũng có khả năng trùng lặp - nhưng bạn có thể viết nó ra (3 danh sách 100 từ, đã cung cấp 1 triệu tên có thể) do bạn có bao nhiêu người chơi hoặc nếu cần - bạn vẫn có thể kiểm tra xem không ai khác có tên trên đăng ký.

Trên thực tế, đây có thể là giải pháp hiệu quả nhất nếu bạn lo lắng nghiêm trọng về tên xấu. Nhưng bạn cần phải thực hiện một phân tích chi phí, và tìm hiểu xem thậm chí làm cho hệ thống này có thực sự đáng giá so với kiểm tra thủ công đơn giản.


25
Tôi thích câu trả lời này, bởi vì "đừng tự động hóa một cái gì đó cho đến khi bạn biết thêm về vấn đề" hầu như luôn luôn là điều đúng đắn trong kinh nghiệm của tôi.
NeilD

5
Nhắc nhở tôi về vũ trụ Lego và phát hiện dương vật.
n0rd

7
Một đứa trẻ 4 tuổi đã có quyền truy cập vào một trong những game console của tôi, nơi bạn có thể tạo nhân vật. Cái khe tiết kiệm đó chứa đầy poo, bum, pee, v.v. Trẻ em làm điều này, và cười, rất nhiều ...
Nelson


4
"Nhưng không, nghiêm túc, đây là một trò chơi trẻ em." Bạn đã nghe nói về Lego Universe? Thậm chí Lego không thể chế tạo máy dò dương vật . Tên các bộ phận: "Cướp biển ngôn ngữ xảo quyệt."
Draco18

7

Một cơ sở người dùng nhỏ có lẽ không đủ để làm giảm sự dễ dàng trong việc thực hiện một danh sách đen. Có nhiều thư viện và / hoặc danh sách từ như những thư viện được tham chiếu ở đây có thể cho phép bạn chỉ cần kiểm tra tên người dùng đối với bất cứ điều gì bạn cho là không phù hợp.

Nếu bạn quyết định thử danh sách của riêng mình, có lẽ bạn muốn sử dụng regexđể lọc tên.

Như Bilkokuya chỉ ra, có thể có vấn đề với những cái tên hợp pháp bị đưa vào danh sách đen. Đó là một quyết định kinh doanh cho khách hàng của bạn để đưa ra , nhưng một quyết định mà bạn có thể / nên làm cho họ biết. Tôi không biết bất kỳ cách nào để khắc phục khía cạnh văn hóa, ngoại trừ rằng nếu bạn đang mong đợi một số lượng lớn người dùng từ các nền văn hóa có thể là một vấn đề, bạn có thể muốn thực hiện lọc theo vùng cụ thể.

Lý do để thực hiện một số hình thức lọc (ngoài kiểm tra thủ công):

  • Dễ thực hiện. Có lẽ sẽ không mất hơn một giờ để có được một cái gì đó đi.

  • Một sự răn đe đối với những kẻ chơi khăm ít tận tâm.

  • Cho phép kiểm tra tại thời điểm đăng ký, giảm khả năng họ thậm chí sẽ đạt được bảng điểm cao.

  • Hoạt động với kiểm tra thủ công.

  • Xem như đó là một vấn đề cũ, nên có nhiều tài nguyên có sẵn.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.