On 8 March 2015 at 11:30, Mads Kiilerich <[email protected]> wrote: > On 03/07/2015 08:50 PM, Thomas De Schampheleire wrote: >> For example because he is trying to find something around a given >> revision number, and uses the first few entries as a key. Based on >> that he can guess how many pages to advance. > > Mercurial revision numbers are local. Git doesn't really have revision > numbers. Kallithea can be configured to show the server's local revision > numbers but I think these revision numbers are misleading and barely useful. > > Please consider your example in more details: How did the user end up with a > revision number? Was it the right one - and by which definition? Wouldn't it > be better to not show the revision number and thus prevent the user from > being hit by these wrong expectations?
Whenever I've wanted to jump to a particular revision in a repo history on GitHub, BitBucket or one of the standalone git or Mercurial web views, the options I've generally wished for have been: * jump to the initial commit (usually to see how long the project has been around) * jump to a particular commit hash (rather than revision number) * jump to the first or last commit in a particular date range (e.g. a given month) * filter the displayed commits by date range, patch submitter, or patch approver Essentially, I'd like the same kind of capabilities internet banking and accounting services give me for financial records, only the transactions in this case are making changes to a particular version control repository. Using generic list pagination and guessing appropriate page numbers instead has always felt like a rather poor workaround for the lack of those jump and filtering capabilities. >> Or, maybe the user went too far and remembered that on page 3 he had >> seen the entry he was looking for but didn't realize it at that time. >> Then he could click on '3' from the top. > > - but paging is usually/always going backwards from the latest revision. The > pages are thus a moving target. What was on page 3 will soon be on page 4. > And obviously, the page numbers depends on what kind of filtering you are > using (currently either everything or just one branch). Right, this is a large part of why I suspect that the model I envision above (where the commit history is conceptually ordered by time and there are ways to find suitable "jump targets" and filter the displayed activity log) would actually be far more user friendly. However, it would also be substantially more work to implement, and I don't have a good answer for that objection at this point. >>> (I dislike paging - especially when the items on pages don't have >>> "primary >>> keys" that gives a natural paging. I would much rather have automatic >>> loading of an extra chunk when scrolling to the bottom of the page.) >> >> I consider this 'an incremental improvement' while we don't yet have >> infinite scroll. >> >> Note that what I dislike about certain implementations of infinite >> scroll is the following scenario: >> >> - scroll through a list using infinite scroll >> - click an item and go to a different page >> - click 'back' in the browser >> - one expects to see the list at the place where we left it, but often >> one just gets back the initial list and one has to scroll completely >> back, losing track of what you already looked at. Especially for long >> lists this is a problem. >> >> Without a solution to this problem, I prefer paging over infinite >> scroll, but if it is possible to handle this problem then I'm fine >> with infinite scroll. > > > Good point. This is also why, despite my comments above about considering pagination a poor long term answer from a UX perspective, I think "better pagination" is an excellent near term improvement. It's already there, it's relatively easy to make it better, so there's no reason not to do that while folks ponder the possibilities for more substantial improvements. > I guess clever web / frontend developers could implement a solution to that. > Perhaps something with rewriting the URL when loading more entries so going > back to it would make sure the same entries are loaded and shown. One site I use personally that does that is the FutureWise forums: https://forum.futurewise.org.au/t/what-role-should-foss-take-in-government/27 As you scroll down the page, the little "X/Y" counter in the lower right updates indicating how far down the page you are in terms of "comments seen vs comments posted", and then the URL in the address bar also automatically updates to target the anchor for the topmost comment currently fully on the screen. Digging into the technical details, it looks like FutureWise runs Discourse: http://www.discourse.org/ The Discourse source code is at https://github.com/discourse/discourse The license is GPLv2+ (https://github.com/discourse/discourse/blob/master/LICENSE.txt) And what appears to be a good write-up of how it works: http://eviltrout.com/2013/02/16/infinite-scrolling-that-works.html Regards, Nick. -- Nick Coghlan | [email protected] | Brisbane, Australia _______________________________________________ kallithea-general mailing list [email protected] http://lists.sfconservancy.org/mailman/listinfo/kallithea-general
