<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, May 24, 2019 at 1:48 PM Ezio Melotti <<a href="mailto:ezio.melotti@gmail.com">ezio.melotti@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto"><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, May 24, 2019, 20:23 Gregory P. Smith <<a href="mailto:greg@krypto.org" target="_blank">greg@krypto.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>-cc: committers to avoid crossposting.</div><div></div></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">+1 (I wanted to include committers, since the announcement about PEP 581 was posted there too, but it's better to keep the discussion here)</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><br></div><div>I have feedback for roundup as experienced on BPO that should be represented within PEP 595 if we are going to have a summary of "improving roundup for BPO" captured in a PEP (presumably already rejected given 581? But good to have documented regardless so _thank you_ for doing this writeup even though I realize our plan of record may be demoralizing for you).</div><div></div></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">We would like people to re-evaluate the decision, but if that doesn't happen I think the PEP is still useful, since it provides a fair view of Roundup capabilities and discusses things that we will have to take into account if we proceed with the migration -- that's why we decided to go ahead and write the PEP.</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><br></div><div>> **Flexible UI.**  While Roundup UI might look dated, it is convenient and flexible.</div><div><br></div><div>I wholly disagree with this statement.</div></div></blockquote></div></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><br></div><div>The BPO roundup UI drives me nuts. every. single. time. I have to use it.  It is not optimized for common workflows users actually need to accomplish when using a bug tracker.  Two example usability issues (of many): Users can't read the latest update to a bug of length because it is hidden within the *middle* of the scrolling region, they must hunt for it. </div></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">This came up in the past, and two solutions have been proposed already:</div><div dir="auto">1) keyboard shortcuts have been added in the issue page to quickly jump to the first/previous/next/last message and to the response box [0].  They support both mnemonic (f/p/n/l/r) and vim-style (h/k/j/l/i) combinations.  You can find a summary table in the left sidebar of the issue page, under help -> keyboard shortcuts.</div><div dir="auto">2) a patch to collapse the history by default (so that the last message was at the end of the page) was proposed and merged [1], but it was reverted after a few days because some devs wanted direct access to the history without having to do an extra click every time to expand it.</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div> After reading, the text box to add to the discussion is oddly located near the *top* of the scrolling region so that a user cannot see context of a bug discussion they are responding to as they type.</div></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">This has also been discussed and different people had different opinion.  Some suggested to reverse the order of the messages so that the last message is at the top near the reply box (like Twitter does), but other said it's unnatural to read.  Some suggested to put the reply box at the bottom; however if the other fields are left at the top you would have to go back up to set them, and if they are moved down you won't easily see them at the top when you open an existing issue.  Another solution is duplicating the fields and response box at the top and bottom.</div></div></blockquote><div><br></div><div>The two other modern bugtracker UIs I use on a regular basis do this by having all such non-conversation metainfo in a persistent top and side bar boxes such that it is always present.  Keeping the conversation and metainfo changes listed in order (latest message at the bottom, metainfo deltas interspersed in between messages all ordered/grouped by timestamp, and reply text entry box below that.  These two are typically big-screen engineering UIs (github being one of them), if mobile is desired i expect these would effectively wind up as a multi-pane UI.  There's a third ticket that I use for non-engineering stuff which does things in reverse order with the text entry up top and messages in reverse chronological order below that.  This reversal always annoys me; probably because I spend most of my time in the others so it forces me to do headstands. I don't know if there is a <i>right</i> answer between the two approaches, I just know what I prefer. But the common theme is keeping new the update UI elements right next to the most recent entries which is what BPO lacks today.</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto"><div dir="auto"><span style="font-family:sans-serif">What I mean with *flexible* when I wrote the PEP, is that, unlike GitHub (where they decide), we can customize bpo however we want (as long as we agree on what we want -- we could even have per-user settings if we really want to :)</span></div></div></blockquote><div><br></div><div>Definitely true in that sense.  Custom things, no matter where, are custom code.  diverge from an upstream project in our own fork and maintenance and updates become harder.  Author a pile of bots to automate tasks within a standard API or UI (as is working great for our Github PR workflow) and the equivalent maintenance burden falls on keeping the bots working.</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto"><div dir="auto">I think I last heard discussion on the position of the response box in 2011 (when shortcuts and history collapsing were discussed).  Maybe people didn't care enough about it so they didn't bother bringing it up or they didn't know it could be changed.  If people do speak up, we can change bpo/Roundup.</div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>  I file things like this under "User experience design is needed for the common workflows of all classes of users".</div><div><br></div><div>Roundup needs a modern responsive web interface, not GET/POST request based interface seen on BPO.  As a result of that, roundup <i>feels</i> like is belongs in the Pre-2004 era interface wise by being web form and full page reload server for everything. A responsive modern "async javascript requests happen in the background of the UI" system that we all expect of any web UI is needed. Not just tweaking the existing thing to have a mobile friendly version of the web form. This includes persistent connections so that updates to an issue show up live as they happen instead of getting an error message "someone/something else has updated this issue since you started typing, the action you wanted to take such as submitting that comment or editing that field is now invalid and cannot be completed without a lot of manual work figuring out what happened, cut and pasting, and fixing things up on the you the users part".</div></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">This is a good point and I think it can be done now that Roundup has a REST API.</div></div></blockquote><div><br></div><div>Agreed, that seemed likely to be a pre-requisite.  I don't know how many other non-bpo roundup users are out there, but even as CPython moves away from roundup, the other users would presumably appreciate such a UI.  It'd also be a good educational project for anyone wanting to learn how to construct such things on top of an existing system.</div><div><br></div><div>-gps</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto"><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
</blockquote></div></div></div>
</blockquote></div></div>