On Tue, Apr 10, 2012 at 10:27, Gyp the Cat <g...@gypthecat.com> wrote:
I built these sites: http://imascientist.org.uk/
which between them have more than 20,000 users.
The majority of which are school students aged 11-18.
There were some key things the client wanted/needed regarding the online
safety of the students. Although the students have profiles, only
registered members (students/teachers/scientists/engineers) can see them.
And even then the students real names are only visible to themselves, their
own teachers, and admins.
Also, the avatars are only selectable from a fixed set. No Gravatar/sign up
with Facebook/Twitter here, so there is never the opportunity for a real
photo of any of the students to appear.
The students were encouraged to use aliases, explicitly told not to user
their own names for login names (though that isn't actually policed), and
the signup process is done as part of (science) lessons.
The sign up process requires a unique sign up id that is printed on
instruction cards and sent round to schools. No ID - no way to register.
Both teachers and students needed those and the IDs are predefined to
determine role (teacher/student) and zone (sub-site). Scientists/engineers
are imported up by hand by the client's staff (though they too have a
unique ID that determines role and zone).
Finally, all student and teacher generated content -- questions (posts),
comments, and live chats are pre-moderated!
Your project sounds like a much smaller scale so I don't think you need to
go as far as printed sign up cards. Still, no real names, no Gravatars, and
pre-moderate all content will go a long way to keeping things safe.
Get the teachers to sign up the kids manually, and it will save you having
to write a lot of custom code (but not all).
If they have trouble with coming up with login names, create a spreadsheet
with a list of unique names they can use to record real names against - use
something like random colour + random animal to generate your names.
Note also that in our experience, lot's of school kids don't have emails
addresses (or they can't access them at school) or they have a shared email
address for the class (especially the younger classes and smaller schools).
WordPress does not like either situation. You will have to write some
custom filters around that.