Changes done to contribution calendar in gitlab-org/gitlab-ce!3944 (v8.9) result in top row displaying contributions made on Sundays, whereas since introduction of this feature in gitlab-org/gitlab-ce!306 it showed Monday's contributions.
For international folks it is awkward to see weeks beginning on Sundays. Sure, it's probably reverse for U.S. people
I'm going to say leave as we currently have. If we change to start with Mondays, people will want to start with Sunday. & I dont see a massive use-case where a user preference should be included to change this.
After this update, the view is simply messed up and that calendar disturbs me every time i check it. I don't understand why you didn't make this configurable.
One is related to muscle visual memory. Many clearly remember how their graph looked like "before the update" and suddenly it's color logic is different. For example, I needed to double check, why some commits appeared on graph on Saturday's line that now, of course, is a place for Friday's contributions.
Label keys don't help much, if at all. Graph displays whole years worth of commits and it's difficult to scan with your eyes from leftmost corner to the rightmost (where new stuff appears) and keep the lines aligned. Previous iteration included week day name in the popup bubble, but now it's also gone, so one cannot quickly check without looking up in calendar what day of the week the contribution was made in. Especially, if now the order has been switched.
Having Sunday as a first day was an intended result of reducing the complexity of the calendar. I understand that you are used to seeing Monday as the first day. However some people are also used to seeing Sunday as the first day. This new feature you are proposing (that it be different based on your location) can be proposed and we can see when we would have time to implement it. We also want to keep page size down so it is important to reduce the size of the code and make things simpler sometimes instead of increasing complexity for the sake of UX.
Adding the day name into the tooltip would be a quick solution to improve the usability. I'll label this frontend for someone to pick up. But feel to create to a merge request if you want to
I would suggest that it takes the system's default for that (from LC_TIME) or that you at least introduce a configuration syntax for setting it up explicitly in gitlab.rb.
I'm currently working on contributions calendar (making beginning of the week configurable) in !6940 (closed).
After carefully reading full Product section of Gitlab Handbook today (thanks to @smcgivern for pointing that out! ) I'm not 100% sure about the change, "Avoid unnecessary configuration" line makes a lot of sense, so here are my points:
Having Sunday as first day is inconvenient for users from countries where Monday is beginning of the week. Though it's not a critical part of the app and doesn't affect productivity/workflow/etc in any way I feel like it's something which should be changed;
Many other services (like Basecamp) provide an option to configure first day of the week and at least from my user's perspective I expected to find this option in GitLab settings;
Nothing changes in default behavior and we don't enforce users to pass through additional step, only ones who need it will go to preferences and change the setting.
I'm open to discussion and suggest to reach some conclusion here, even if the conclusion will be to close the issue without merging !6940 (closed), there will be one less issue in the issue tracker :)
To repeat what I said in the issue: if we do end up implementing this, a user preference is the only sensible way to do it. A system-wide setting wouldn't help me at all, because I mostly use GitLab.com, and that would keep Sunday-first; but if we've done the work to allow this to be configured, then I want to be able to see Monday-first!
For reference: ISO-8601 specifies weeks start on Monday (though I sympethise with American users expecting Sunday-first on an American website - to name one constellation where Monday first feels wrong) and factual week starting days.
my 2cent: agree with what @smcgivern says, user-based setting makes more sense than server-based setting (although both would end up Monday-first for me). On top of that I would imagine that the user's preference can be guessed from the Accept-Language HTTP header field (en-US→Sunday, en-DK→Monday, …).
On top of that I would imagine that the user's preference can be guessed from the Accept-Language HTTP header field (en-US→Sunday, en-DK→Monday, …).
Assuming that users always have this set correctly is a stretch. Even assuming that a regular user knows how to change that in their browser probably is. It might be good as a per-user-default though.
And then there are people like me that have no 1 priority for web language US-English, but still think of Monday as being the start of a week.
Also, this is likely similar to #15670 (moved), and would go within the same user settings page. Also here, I am one of those that prefer English, but also prefer 24h clocks.
Well, I believe most users (i.e. the non-english speaking part of the world) have this set correctly because their browser just takes the localization settings from the operating system. (And I would even speculate about how popular US english is outside the US, as that - in my experience - often breaks paper format printer settings).
But FWIW I guess we agree on that a user defined setting is the only real solution, and the only question is what standard to pick when the user didn't provide a preference / isn't logged in.
Having wrong day as starting day of calendar (aka. any other day than Monday) makes calendar more or less unusable as usability goes. And don't get me even started about using weird am/pm (*) times which are just unreadable :)
That said, supporting user's personal preferences is important (and when on that need to remember that language != formatting preferences). Sniffing correct values can go also irritatingly wrong when one needs to access web site from other location than own desk (aka. not own computer, not own preferred locale, language & al.).
(*) I've noticed those weird ap/mm times at least in some tooltips "time ago" times. So apparent bug in widget or on its' usage.