For old comments see the Archive.

RE: Suggestions

I do not think we should ban page creation by new accounts. On wikipedia that makes sense, but on appropedia, I am sure that we will have some readers who never sign up until they are ready to create a page based on their project. Unlike an encyclopedia, many of our community will have specific interest and expertise that may not have a corresponding page (even more true since we are still only a few thousand pages big). I think the main next step for spam abatement are:

  1. Install and customize a simple Reverse Turing test.
    • Non-logged in users must solve a simple addition problem to comit an edit.
    • To create a username a user must solve a simple addition problem.
      • We can also set it up so that only when entering a URL is a Reverse Turing test administered.
  2. Consider installing a blacklist extension that prevents edits that contain certain spam URLs, or spam patterns in a URL, as listed in a blacklist.
  3. Much later consider http://meta.wikimedia.org/wiki/Talk:Bad_Behavior_extension
    • This extension seems to have many counterindications

See http://wiki.evernex.com/index.php?title=Blocking_Spam_in_Mediawiki for a much more detailed and clear approach to spam abatement. The plan laid out there is very sound and would work for Appropedia, with the following exceptions:

  1. I think we should avoid implementing Bad_Behavior as it may interfere with submission, especially from more spam-ridden computers (often the case in older internet cafes).
  2. We may consider adapting the ConfirmEdit Reverse Turing test to the specifications I listed above.

--Lonny 09:53, 17 April 2007 (PDT)

Email check for new registrations

I found this suggestion that catches and stops some spam registrations.

Require a valid email address of at least 7 characters long, and block some spam-generating domains:

vi /html/wiki/includes/SpecialUserlogin.php

In function addNewAccountInternal just add the additional "or" statements:

if ( ( strlen(trim($this->mEmail)) < 7 )
or preg_match ("/@mail.ru$/", $this->mEmail)
or preg_match ("/@list.ru$/", $this->mEmail)
or ! preg_match ("/^[a-z0-9._-]+@[a-z0-9.-]+$/i", $this->mEmail)) ) {
$this->mainLoginForm( wfMsg( 'noemail', $this->mEmail ) );
return;
} 
Cookies help us deliver our services. By using our services, you agree to our use of cookies.