{
  localUrl: '../page/2f2.html',
  arbitalUrl: 'https://arbital.com/p/2f2',
  rawJsonUrl: '../raw/2f2.json',
  likeableId: '1349',
  likeableType: 'page',
  myLikeValue: '0',
  likeCount: '2',
  dislikeCount: '0',
  likeScore: '2',
  individualLikes: [
    'NateSoares',
    'EricRogstad'
  ],
  pageId: '2f2',
  edit: '4',
  editSummary: '',
  prevEdit: '3',
  currentEdit: '4',
  wasPublished: 'true',
  type: 'comment',
  title: '"**Feedback system / incenti..."',
  clickbait: '',
  textLength: '3006',
  alias: '2f2',
  externalUrl: '',
  sortChildrenBy: 'recentFirst',
  hasVote: 'false',
  voteType: '',
  votesAnonymous: 'false',
  editCreatorId: 'EricBruylant',
  editCreatedAt: '2016-03-08 00:16:40',
  pageCreatorId: 'EricBruylant',
  pageCreatedAt: '2016-03-08 00:12:53',
  seeDomainId: '0',
  editDomainId: 'PaulChristiano',
  submitToDomainId: '0',
  isAutosave: 'false',
  isSnapshot: 'false',
  isLiveEdit: 'true',
  isMinorEdit: 'false',
  indirectTeacher: 'false',
  todoCount: '0',
  isEditorComment: 'false',
  isApprovedComment: 'true',
  isResolved: 'false',
  snapshotText: '',
  anchorContext: '',
  anchorText: '',
  anchorOffset: '0',
  mergedInto: '',
  isDeleted: 'false',
  viewCount: '329',
  text: '**Feedback system / incentivising valuable criticism and productive response**\n\nPartly inspired by [Brienne's post](https://www.facebook.com/strohl89/posts/10153871066954598) (and Eliezer's reply/the thread following it).\n\n> The trick to preventing flame wars when stating criticisms publicly is to always provide an alternative method for regaining status.\n\n> Or you could just send the message via PM. To first order and with obvious exceptions, you can classify Bad/troll/statusseeker anyone publicly pointing out something in a push-downy way who also publicly claims to only be concerned about you, and classify 'Good' anyone who points out exactly the same thing in a private message.\n\nSome form of negative feedback seems necessary, but most I've seen arguably do significant harm, while not appearing well-optimized for improving users conduct.\n\nMajor classes of negative feedback:\n\n * Public easy/open (LessWrong, Reddit)\n * Public with disincentive/barrier (StackOverflow has both a karma threshold for downvotes and a karma penalty)\n * Public open/free-form feedback (Wikipedia comments on user talk pages)\n * Private feedback to algorithms (Facebook hiding posts)\n * Private to staff (most forums, facebook)\n\nAll fail to offer a good way of regaining status, and the only options which are private require valuable staff-time to evaluate reports.\n\nWe can do better, I think. My first draft proposal is:\n\nAllow feedback on any edit or comment. This is non-public, but viewable by users with sufficiently high karma. Give the user the option to reply (with reply also viewable by high karma users), and *mark the feedback as valuable or not valuable*. Reward users who give feedback judged as valuable with karma (with limits on how much you get per person to avoid trading feedback). Possibly make feedback marked as valuable (optionally?) viewable to more users, more transparency would help good norms be shared, and it needing to be approved/replied to first means there's less feeling of attack/status hit than otherwise.\n\nThis way there's:\n\n - No "drive-by-downvoting", only actionable feedback\n - Little feeling of taking a status hit\n - Direct, obvious, way to regain status from valid criticism (tag the feedback as useful and reply with what you're going to try to do to improve)\n - Incentives for users to both optimize for useful feedback, and to read any feedback in a way they can extract useful info from\n - All feedback is viewable to high-karma users, so serial troublemakers can be identified and harmful patterns of behavior can be confronted\n - Sorting by users with lots of un-replied to (or rejected) feedback gives a quick way of locating possible points of intervention in the community\n - Abuse of the feedback system is not significantly harmful to the target's reputation\n - Algorithms can have access to # negative feedback on a comment/edit/article, and can ignore negative feedback from people who send feedback which is judged unhelpful by too many recipients\n\n\n\n\n\n',
  metaText: '',
  isTextLoaded: 'true',
  isSubscribedToDiscussion: 'false',
  isSubscribedToUser: 'false',
  isSubscribedAsMaintainer: 'false',
  discussionSubscriberCount: '1',
  maintainerCount: '1',
  userSubscriberCount: '0',
  lastVisit: '',
  hasDraft: 'false',
  votes: [],
  voteSummary: 'null',
  muVoteSummary: '0',
  voteScaling: '0',
  currentUserVote: '-2',
  voteCount: '0',
  lockedVoteType: '',
  maxEditEver: '0',
  redLinkCount: '0',
  lockedBy: '',
  lockedUntil: '',
  nextPageId: '',
  prevPageId: '',
  usedAsMastery: 'false',
  proposalEditNum: '0',
  permissions: {
    edit: {
      has: 'false',
      reason: 'You don't have domain permission to edit this page'
    },
    proposeEdit: {
      has: 'true',
      reason: ''
    },
    delete: {
      has: 'false',
      reason: 'You don't have domain permission to delete this page'
    },
    comment: {
      has: 'false',
      reason: 'You can't comment in this domain because you are not a member'
    },
    proposeComment: {
      has: 'true',
      reason: ''
    }
  },
  summaries: {},
  creatorIds: [
    'EricBruylant'
  ],
  childIds: [],
  parentIds: [
    'arbital_community_input'
  ],
  commentIds: [],
  questionIds: [],
  tagIds: [],
  relatedIds: [],
  markIds: [],
  explanations: [],
  learnMore: [],
  requirements: [],
  subjects: [],
  lenses: [],
  lensParentId: '',
  pathPages: [],
  learnMoreTaughtMap: {},
  learnMoreCoveredMap: {},
  learnMoreRequiredMap: {},
  editHistory: {},
  domainSubmissions: {},
  answers: [],
  answerCount: '0',
  commentCount: '0',
  newCommentCount: '0',
  linkedMarkCount: '0',
  changeLogs: [
    {
      likeableId: '0',
      likeableType: 'changeLog',
      myLikeValue: '0',
      likeCount: '0',
      dislikeCount: '0',
      likeScore: '0',
      individualLikes: [],
      id: '8366',
      pageId: '2f2',
      userId: 'EricBruylant',
      edit: '4',
      type: 'newEdit',
      createdAt: '2016-03-08 00:16:40',
      auxPageId: '',
      oldSettingsValue: '',
      newSettingsValue: ''
    },
    {
      likeableId: '0',
      likeableType: 'changeLog',
      myLikeValue: '0',
      likeCount: '0',
      dislikeCount: '0',
      likeScore: '0',
      individualLikes: [],
      id: '8365',
      pageId: '2f2',
      userId: 'EricBruylant',
      edit: '3',
      type: 'newEdit',
      createdAt: '2016-03-08 00:16:11',
      auxPageId: '',
      oldSettingsValue: '',
      newSettingsValue: ''
    },
    {
      likeableId: '0',
      likeableType: 'changeLog',
      myLikeValue: '0',
      likeCount: '0',
      dislikeCount: '0',
      likeScore: '0',
      individualLikes: [],
      id: '8364',
      pageId: '2f2',
      userId: 'EricBruylant',
      edit: '2',
      type: 'newEdit',
      createdAt: '2016-03-08 00:15:58',
      auxPageId: '',
      oldSettingsValue: '',
      newSettingsValue: ''
    },
    {
      likeableId: '0',
      likeableType: 'changeLog',
      myLikeValue: '0',
      likeCount: '0',
      dislikeCount: '0',
      likeScore: '0',
      individualLikes: [],
      id: '8363',
      pageId: '2f2',
      userId: 'EricBruylant',
      edit: '1',
      type: 'newEdit',
      createdAt: '2016-03-08 00:12:53',
      auxPageId: '',
      oldSettingsValue: '',
      newSettingsValue: ''
    },
    {
      likeableId: '0',
      likeableType: 'changeLog',
      myLikeValue: '0',
      likeCount: '0',
      dislikeCount: '0',
      likeScore: '0',
      individualLikes: [],
      id: '8362',
      pageId: '2f2',
      userId: 'EricBruylant',
      edit: '0',
      type: 'newParent',
      createdAt: '2016-03-07 23:16:24',
      auxPageId: 'arbital_community_input',
      oldSettingsValue: '',
      newSettingsValue: ''
    }
  ],
  feedSubmissions: [],
  searchStrings: {},
  hasChildren: 'false',
  hasParents: 'true',
  redAliases: {},
  improvementTagIds: [],
  nonMetaTagIds: [],
  todos: [],
  slowDownMap: 'null',
  speedUpMap: 'null',
  arcPageIds: 'null',
  contentRequests: {}
}