You are reading a single comment by @dst2 and its replies. Click here to read the full conversation.
  • Technically yes, but of course it is never that simple.

    There are a lot of good reasons people edit things, from removing personal information (a phone number or email left in an advert) to removing an insult said in a moment of heat that they now regret. But perhaps the best reason not to is that people may have indulged in defamation, corrected themselves, but if the historical version were still visible and uneditable then they could continue to be held to account for that.

    The only way to protect users from themselves is to visibly treat delete as delete.

    Yet, the only way to protect users from other users is to not actually delete in the majority of circumstances, just to hide.

    What this ultimately means is that the database table called comments doesn't hold the comments themselves just the idea that someone posted a comment at some point in time on some item (conversation, event, etc), and a table called revisions actually contains the comment body itself.

    That revisions table is an append only table, so every edit, every revision of a comment... is stored as a brand new row. And then the latest one is marked as the current one. Whichever one is marked as current is the one shown on the UI. But all of the rest remain along with the IP addresses and user agents used, etc, and if there are disputes about classifieds, or the police get in touch about stolen bike parts being offered, etc... then we have this forensic history of all that was said, by whom, from where, etc.

    But showing that to the world? It's a different can of worms. I tried to balance it by simply storing it and not showing it.

  • The first reply is the one that gets emailed out as a notification.

    If you're going to do the dance of being offensive and spelling badly, the second edit is the place for that ;)

About

Avatar for dst2 @dst2 started