After giving this a bit more thought, I realized that this scheme could be made even more decentralized by simply de-anonymizing votes and providing an API to HN that would allow fetching of the voter lists for each comment (and article).
Then each user would be free to use software running on their own machines to implement the comment recommendation scheme as described above.
In fact, HN wouldn't even need to de-anonymize the votes for this to work. All the HN servers would need to do is make available a list of unique user id's of the upvoters and downvoters. How those user id's map on to usernames wouldn't need to be revealed. But the user id's should remain consistent from comment to comment and article to article, so that the affinity number described in the original proposal could be consistently updated.
So, in this new proposal, each HN user would be assigned a unique id, and when they vote their id would be made available via the HN API along with the comment(s) they voted on when a given story's comments are downloaded for viewing.
Software running on a given user's local machine would then use the user id's and information on how those user id's voted to create a measure of affinity as described in the original proposal, and then sort, rate, or recommend comments accordingly.
Then each user would be free to use software running on their own machines to implement the comment recommendation scheme as described above.
In fact, HN wouldn't even need to de-anonymize the votes for this to work. All the HN servers would need to do is make available a list of unique user id's of the upvoters and downvoters. How those user id's map on to usernames wouldn't need to be revealed. But the user id's should remain consistent from comment to comment and article to article, so that the affinity number described in the original proposal could be consistently updated.
So, in this new proposal, each HN user would be assigned a unique id, and when they vote their id would be made available via the HN API along with the comment(s) they voted on when a given story's comments are downloaded for viewing.
Software running on a given user's local machine would then use the user id's and information on how those user id's voted to create a measure of affinity as described in the original proposal, and then sort, rate, or recommend comments accordingly.