19

I've noticed that the reviewer stats in the review queue contain awkward uses of polysyndeton:

user has approved $count edit suggestions and rejected $count edit suggestions and improved $count edit suggestions

This has always irked me but I never bothered to complain about it publicly til now. The wording should be changed to

user has approved $count edit suggestions, rejected $count edit suggestions and improved $count edit suggestions

Or one of the better suggestions from this answer.

The discussion about whether there should be a Serial Comma in the sentence is a separate one entirely, but I think it's unnatural and unreadable to string the ands together like they are.

  • Anything from the all-powerful mods? – OldBunny2800 Mar 22 '16 at 23:37
  • @OldBunny2800 Not yet, unfortunately. :( – cat Mar 22 '16 at 23:37
  • Just a bit of grammar pedantry: the sentence is technically not a run-on, as it is technically valid to not replace the and's in lists with commas. The sentence is just very choppy. – pydsigner Apr 21 '16 at 4:27
  • @pydsigner That's interesting, thank you. Don't really know what I should edit the post to say, but you can edit as you see fit. – cat Apr 21 '16 at 11:50
  • 1
    @cat It took me way too long to look up the exact term polysyndeton, but that's what it is. I do still agree with the request. – pydsigner Apr 21 '16 at 15:14
3

From my meta ELU post, later migrated to MSE, and now closed as dupe of this question:

Instead of seeing:

(username) has approved 297 edit suggestions and rejected 121 edit suggestions and improved 21 edit suggestions

Can that be rephrased to this?

(username) has approved 297, rejected 121, and improved 21 edit suggestions

The duplicated edit suggestions seems wordy and superfluous and redundant. Standard conjunction reduction in English would naturally remove the common bits between elements joined by the coördinating conjunction, so the current wording sounds somewhat un-Englishy.

  • 1
    Acceptance bump :) Also +1 for "coördinating" (please don't edit that out) – cat Aug 28 '16 at 1:56
8

When I read it out loud, it does seem to be quite wordy and a mouthful, especially to say that many "and"s.

Proper grammar should be used to make the sentences easier to read and make SE look more professional (professional sites have professional grammar). To lower the wordiness, let's use commas instead of "and" to make the sentences better:

user000 has approved 0 edit suggestions, rejected 0 edit suggestions, and improved 0 edit suggestions

And if the stats are only about edit suggestions, removing the word "edit" should lower the wordiness a little more:

user000 has approved 0 suggestions, rejected 0 suggestions, and improved 0 suggestions

Now if this confuses user on what type of suggestions we are talking about (new users will probably be confused, replace "suggestions" with "items" and add "in the Suggested Edits queue" in the end:

user000 has approved 0 items, rejected 0 items, and improved 0 items in the Suggested Edits queue

7
+50

Yeah, when I read it I just forget what I just read.

So a better way to put it is to use a chart.

chart example

This is probably the best way.

  • 1
    Bounty goes to you for thinking outside the box (haha) -- I didn't even consider a non-text solution. – cat Mar 26 '16 at 23:38
  • 2
    Well when there are a lot of users, tables can take a lot of space... – Anthony Pham Mar 26 '16 at 23:51
  • 1
    @PythonMaster indeed, I'm not sure the SE team will actually consider this, but I love it. – cat Mar 27 '16 at 0:09
  • @tac yeah they probably won't :( – lolreppeatlol Mar 27 '16 at 0:10
  • 2
    I really liked this idea, so I made a userscript! :D +1 – ᔕᖺᘎᕊ Mar 27 '16 at 20:11
6
+100

I love @lolreppeatlol's idea, so I implemented it with a userscript! :)

enter image description here

Install it from GitHub Gist :) You will probably need a userscript manager such as Greasemonkey or Tampermonkey.

Update: I have now added this feature into v1.0.3 (currently in dev) of SOX: Stack Overflow Extras, a userscript which adds a bunch of optional features to the Stack Exchange sites. Install it for a bunch of other cool features! :)


// ==UserScript==
// @name         Tabular reviewer stats on /review/suggested-edits
// @namespace    http://stackexchange.com/users/4337810/
// @version      1.1
// @description  A userscript that makes the reviewer stats less wordy :)
// @author       ᔕᖺᘎᕊ (http://stackexchange.com/users/4337810/)
// @match        *://*.stackoverflow.com/review/suggested-edits/*
// @match        *://*.stackexchange.com/review/suggested-edits/*
// @match        *://*.superuser.com/review/suggested-edits/*
// @match        *://*.serverfault.com/review/suggested-edits/*
// @match        *://*.askubuntu.com/review/suggested-edits/*
// @match        *://*.stackapps.com/review/suggested-edits/*
// @match        *://*.mathoverflow.net/review/suggested-edits/*
// @grant        none
// ==/UserScript==

//Idea by lolreppeatlol @ https://meta.stackexchange.com/a/277446/260841 :)
setTimeout(function() {
    var info = {};
    $('.review-more-instructions ul:eq(0) li').each(function() { 
        var text = $(this).text(),
            username = $(this).find('a').text(),
            link = $(this).find('a').attr('href'),
            approved = text.match(/approved (.*?)[a-zA-Z]/)[1],
            rejected = text.match(/rejected (.*?)[a-zA-Z]/)[1],
            improved = text.match(/improved (.*?)[a-zA-Z]/)[1];
        info[username] = {
            'link': link,
            'approved': approved,
            'rejected': rejected,
            'improved': improved
        };
    });
    var $editor = $('.review-more-instructions ul:eq(1) li'),
        editorName = $editor.find('a').text(),
        editorLink = $editor.find('a').attr('href'),
        editorApproved = $editor.text().match(/([0-9])/g)[0],
        editorRejected = $editor.text().match(/([0-9])/g)[1];
    info[editorName] = {
            'editorLink': link,
            'approved': editorApproved,
            'rejected': editorRejected
        };
    var table = "<table><tbody><tr><th style='padding: 4px;'>User</th><th style='padding: 4px;'>Approved</th><th style='padding: 4px;'>Rejected</th><th style='padding: 4px;'>Improved</th style='padding: 4px;'></tr>";
    $.each(info, function(user, details) {
       table += "<tr><td style='padding: 4px;'><a href='" + details.link + "'>" + user + "</a></td><td style='padding: 4px;'>" + details.approved + "</td><td style='padding: 4px;'>" + details.rejected + "</td><td style='padding: 4px;'>" + (details.improved ? details.improved : 'N/A') + "</td></tr>";
    });
    table += "</tbody></table>";
    $('.review-more-instructions p, .review-more-instructions ul').remove();
    $('.review-more-instructions').append(table);
}, 2000);
  • 2
    Nice, and thanks! Installing after I install Tampermonkey :) – lolreppeatlol Mar 27 '16 at 20:13
  • 1
    Wow, I really love this, thank you! – cat Mar 27 '16 at 20:15
  • Could you do the same for the editor stats as well to maintain consistency? – Anthony Pham Mar 28 '16 at 22:56
  • @PythonMaster done! :) You can see the change in the screenshot :) – ᔕᖺᘎᕊ Mar 29 '16 at 13:57
  • 1
    Heeey, that's me! :D – ArtOfCode Apr 21 '16 at 15:15

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .