Programming the LW Study Hall

We’ve had considerable interest and uptake on the Less Wrong Study Hall, especially with informal timed Pomodoro sessions for everyone to synchronize on. Working together with a number of other visible faces, and your own face visible to them, does seem effective. Keeping the social chat to the 5 off minutes prevents this from turning into just another chatroom.

We’ve been using this Tinychat room, and implementing everything Pomodoro-related with manual typing. Is there anyone out there who’s interested in taking this to the next level with some custom code, possibly via the Google Hangouts API (Javascript), so we can have the following nice features?

  • Synchronized, software-implemented Pomodoros for everyone.

    • Maybe one chat room with 205 and one with 455.

    • Actual enforcement of the “no chatting unless the Pomodoro is on” and/​or muted microphones.

  • Chat rooms with an N-person limit (several people report being more productive in smaller groups, so we’re not sure if N should be 5 or 10) and new chat rooms being spawned as earlier ones get full.

  • Moderatability (we’ve already had one troll). One person suggested the ability to +1/​-1 one person per day, with a kick at −5. (Eliezer remarks that he expects this to be completely ineffective and that you need actual mods, maybe a group of trusted users.)

    • We only wish and dream that we could integrate with LW logins, but this would require LW development resources that apparently don’t exist. Maybe with enough grotesque hackery we could have a page somewhere that you comment to confirm you’re a Study Hall user, and the system could look up your karma from there to decide if you can cast +1/​-1 user votes.

  • A custom page layout (which you don’t get if you use Tinychat!) which has the watching participants lined up vertically on the left, so we can work on something while still easily seeing our friends.

    • A small line underneath everyone’s image saying what they’re currently working on.

  • Maybe a common room where people can initially talk about what they intend to work on. (Eliezer says: This needs either strong group norms or built-in limits on talk time to avoid becoming a social chat timesink.)

  • The ability to branch off small sub-chat rooms (maybe with limit 2 or 3) in case somebody wants to talk (about work!)

  • A welcome page (mockup) where people see the group norms the first time they visit the Study Hall that serves as a portal.

This doesn’t “seem” very complicated from a programming perspective (yes, we all know about things that don’t seem complicated). The Google Hangouts API (possibly OpenMeetings) seems like it should provide almost all of the basics already. But unless some particular programmer steps up to do it, it won’t get done. If interested, comment below or email, and please mention your relevant Javascript experience.