LINUX.ORG.RU
ФорумTalks

Релиз новой версии библиотеки glibc 2.29 в США вызвал бурю споров по поводу форматов дат

 , , форматы дат


1

1

Сабж. Американские юзеры локали en_US оказались недовольны новым дефолтом.

Было:

Fri Feb 1 05:53:41 UTC 2019
Стало:
Fri 01 Feb 2019 01:26:44 AM UTC

Для американских юзеров оказался предпочтительнее 24-х часовой формат времени. Кроме этого люди начали активно спорить какой формат дат предпочтительнее.

Американские юзеры говорят, что в США чаще всего применяются такие форматы как

Sep 20, 1990
и
09/20/1990

Некоторые европейские юзеры говорят, что у них как раз используется новый дефолтный формат для en_US:

01 Feb 2019
В свою очередь американские юзеры говорят, что в США такой формат встречается если только у военных, а почти все гражданские сначала указывают месяц, потом день, а потом год.

Год, месяц, а потом день, по ходу, указывают только в некоторых европейских странах (таких как, например, Польша и Швеция).

В общем, Патрику пришлось патчить glibc на прежний формат.

★★★★★

Ну и ладно ::) Ах да, мииллионы скриптов парсеров сломались в один миг хехехехе. «Не буду я приводить формат даты,я просто возьму дефолтный выхлоп и пропарсю по пробелам и сё! Сказал он, скрипт был успешно залит в банкомат в RO секцию» Ждём приколов)))

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)

У китайцев тоже год месяц день указывают

irton ★★★★★
()

Год, месяц, а потом день, по ходу, указывают только…

Используется в Китае, Японии, Иране… А ещё, как ни странно, распространен в Канаде.

И вообще самый удобный формат для простой сортировки по дате.

baka-kun ★★★★★
()
Ответ на: комментарий от baka-kun

Понятно. Значит, попавшаяся мне таблица была неполной.

saahriktu ★★★★★
() автор топика
Ответ на: комментарий от torvn77

Этот формат (YYYY.MM.DD) я, кстати, начал использовать сам по себе ещё до того как у меня появились компьютеры и интернеты.

saahriktu ★★★★★
() автор топика
Ответ на: комментарий от saahriktu

ты меня расстроил. Я думал ты с рождения воспринимаешь время только в юникстайм :)

mrdeath ★★★★★
()

А вообще, это нормально, взять и поломать существующую локаль? ИМХО, это как если бы костанте PI назначить значение 2.718. Локалей же специально дохрена, что бы каждый выбрал для себя удобную и привычную. Ввели бы новую!

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)

Лучи поноса наркоманам, не запилившим в ls отображение года по умолчанию. Заходишь на какой-нибудь сервак, смотришь файлы по ls -l, а какого они года — хрен его знает. Или бывает что заходишь — а там только день, месяц и год, и нужно пердолиться чтобы узнать какой файл свежее. Четыре дополнительные циферки с годом либо с часами и минутами — это же так сложно для пользователя.

h578b1bde ★☆
()
Последнее исправление: h578b1bde (всего исправлений: 2)
Ответ на: комментарий от h578b1bde

Лучи поноса наркоманам, не запилившим в ls отображение года по умолчанию. Заходишь на какой-нибудь сервак, смотришь файлы по ls -l, а какого они года — хрен его знает. Или бывает что заходишь — а там только день, месяц и год, и нужно пердолиться чтобы узнать какой файл свежее. Четыре дополнительные циферки с годом либо с часами и минутами — это же так сложно для пользователя.

alias ls='ls --time-style="+%Y.%m.%d %H:%M"'
Deleted
()

Было:

Fri Feb 1 05:53:41 UTC 2019

Стало:

Fri 01 Feb 2019 01:26:44 AM UTC

Не могу определиться что хуже: 12-часовой формат времени или месяц-день-год?

NeXTSTEP ★★
()
Ответ на: комментарий от Deleted

И да, у меня

alias ls='ls -lahF --group-directories-first --color=tty --time-style=+%a\ %F\ %R\ %:::z'

h578b1bde ★☆
()
Ответ на: комментарий от h578b1bde

Так это ж кругом напердолить надо чтобы пользоваться.

На своих системах это делается централизованно и ровно один раз. Если очень хочется.

А на чужих за такое и руки оторвать могут 8).

Вот почему нельзя было сделать это по дефолту?

А ты сможешь развёрнуто обосновать почему именно твой вариант должен быть дефолтным?

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от Deleted

А ты сможешь развёрнуто обосновать почему именно твой вариант должен быть дефолтным?

А я и не говорю что должен быть конкретно мой, я говорю что искоробки должен быть вменяемый, с годом и часами:минутами.

h578b1bde ★☆
()

> Некоторые европейские юзеры говорят, что у них как раз используется новый дефолтный формат для en_US

en_US = english_UnitedStates. Пусть пользуются en_GB = english_GreatBritain

ZenitharChampion ★★★★★
()
Ответ на: комментарий от NeXTSTEP

Не могу определиться что хуже: 12-часовой формат времени или месяц-день-год?

Эскобар подскажет ответ на этот вопрос.

h578b1bde ★☆
()
Ответ на: комментарий от h578b1bde

А я и не говорю что должен быть конкретно мой, я говорю что искоробки должен быть вменяемый, с годом и часами:минутами.

Тогда давай чёткое определение вменяемости и обоснование необходимости показывать год.

Нет, я ничего не имею против. Просто если ты автор какой-нибудь софтины, и ты хочешь выбрать какие-то настройки по умолчанию, то у тебя всего два варианта:

  • Провести полноценное исследование. Опрос, A/B тестирование, etc. Социология, статистика и прочий сириус бизнес.
  • Просто взять и сделать так, как лично ты считаешь правильным.

Сначала может показаться, что тут есть ещё один вариант: всё продумать и выбрать дефолтные значение исключительно рациональным способом. Но на деле это эквивалентно второму варианту.

А ещё очень часто срабатывает «раньше так было сделано, никто не помнит почему, давайте на всякий случай не будем трогать».

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от Deleted

Тогда давай чёткое определение вменяемости и обоснование необходимости показывать год.

Очень просто: год необходим чтобы различать файлы, созданные в разное время, точно для того же нужны и часы с минутами. Хотя тем, кто делает rm -rf раз в год он может и не нужен, не спорю, но у нас тут ОС общего назначения.

h578b1bde ★☆
()

Месяц/день/год - редкостное дегенератство. Из-за этого в интернете на датах типа 10/6/2019 постоянно голову ломаешь, что бы это значило.

Deleted
()
Ответ на: комментарий от h578b1bde

Очень просто: год необходим чтобы различать файлы, созданные в разное время, точно для того же нужны и часы с минутами. Хотя тем, кто делает rm -rf раз в год он может и не нужен, не спорю, но у нас тут ОС общего назначения.

ls по умолчанию показывает год, если он не равен текущему году. Этого достаточно для различения файлов.

Deleted
()
Ответ на: комментарий от Deleted

ls по умолчанию показывает год, если он не равен текущему году. Этого достаточно для различения файлов.

Угу, и не показывает часы с минутами, что особенно весело при работе с системой, где выставлен другой часовой пояс либо время вообще сбито. Плюс парсить эту кашу глазами паршиво если у тебя в каталоге файлы с разных годов. Вот нахрена такое дегенератство нужно было городить, почему не остановиться на фиксированном формате?

h578b1bde ★☆
()
Ответ на: комментарий от Deleted

ls по умолчанию показывает год, если он не равен текущему году.

Нет, у меня и для некоторых файлов из 2018 не показывает год. Логика, думаю, есть, но не очень очевидная.

NeXTSTEP ★★
()
Ответ на: комментарий от h578b1bde

Вот нахрена такое дегенератство нужно было городить, почему не остановиться на фиксированном формате?

Возможно, чтобы место экономить. Твой вариант в 80 колонок не вмещается.

NeXTSTEP ★★
()
Ответ на: комментарий от NeXTSTEP

Нет, у меня и для некоторых файлов из 2018 не показывает год. Логика, думаю, есть, но не очень очевидная.

Возможно оно не показывает год для файлов младше года. Ключевое слово — возможно, в точных вещах вроде даты пользователь не должен догадываться что там курили реализовавшие это авторы.

h578b1bde ★☆
()
Ответ на: комментарий от NeXTSTEP

Возможно, чтобы место экономить. Твой вариант в 80 колонок не вмещается.

Это конечно ужасно, но в 2019 не слишком актуально.

h578b1bde ★☆
()
Ответ на: комментарий от NeXTSTEP

А невменяемость в том, что к примеру для локали uk-UA зачем-то выбран формат „месяц день [год|время]”, что делает визуальный парсинг даты в списке файлов невозможным.

h578b1bde ★☆
()
Ответ на: комментарий от h578b1bde

Ну не скажи. На большом мониторе можно несколько терминалов шириной 80 открыть. Или с телефона зайти, там ещё меньше колонок может быть.

NeXTSTEP ★★
()
Ответ на: комментарий от NeXTSTEP

Ну не скажи. На большом мониторе можно несколько терминалов шириной 80 открыть.

Или больше.

Или с телефона зайти, там ещё меньше колонок может быть.

Там и так придётся страдать вне зависимости от ширины списка.

h578b1bde ★☆
()

Для американских юзеров оказался предпочтительнее 24-х часовой формат времени

Он в принципе предпочтительнее

peregrine ★★★★★
()
Ответ на: комментарий от Deleted

Ах да, мииллионы скриптов парсеров сломались в один миг хехехехе. «Не буду я приводить формат даты,я просто возьму дефолтный выхлоп и пропарсю по пробелам и сё! Сказал он, скрипт был успешно залит в банкомат в RO секцию»

Как бы нормально, если для строго заданной локали делалось.

А если разработчики glibc себе позволяют внезапно поменять давно устоявшийся формат локали, то и с приведением дат (кстати, какими функциями в каком языке? Во всех есть из коробки?) в следующий раз какой-нибудь бред сделают.

praseodim ★★★★★
()

Лучше бы делом занялись, например, вычистили сегфолты из своей GNU Libc.

EXL ★★★★★
()
Ответ на: комментарий от Deleted

Говноеды не указывающие формат принудительно должны СТРАДАТЬ.

steemandlinux ★★★★★
()

Есть только два нормальных формата: дд.мм.гггг для документов и гггг.мм.дд для сортировки. Остальное ненужно.

IPR ★★★★★
()
Ответ на: комментарий от Deleted

Это же GNU, там ломать нормально.
По теме: всегда думал, что локаль - на века.

Shadow ★★★★★
()
Ответ на: комментарий от buddhist

24-часовой формат даты — это костыль, для неумеющих сразу жить по юникстайму.

Юникстайм — это непортабельный костыль, ломающийся в зависимости от архитектуры.

h578b1bde ★☆
()
Ответ на: комментарий от h578b1bde

месяц день [год|время]

Самый лучший формат. Компактный, с одной стороны не перегружает лишней инфой, с другой на месте вся нужная информация :)

goingUp ★★★★★
()

а почти все гражданские сначала указывают месяц, потом день, а потом год.

**Прыгаю на стуле от злости**

**Прыгаю на стуле от злости**

**Прыгаю на стуле от злости**

**Прыгаю на стуле от злости**

**Прыгаю на стуле от злости**

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.