LINUX.ORG.RU
ФорумTalks

Откуда это «user don't care»?


0

4

Что то в последние годы все чаще стало это проскакивать в качестве аргументации. адоб не прочитал доки и использовал memcpy неправильно - выбегает Линус и говорит «users don't care», и требует вернуть все как было, nvidia использовала какой-то deprecated интерфейс, так что на новых ядрах не заводится, опять куча людей орут «users don't care». Покажите мне этого юзера, не входящего в множество быдла, который бы перекладывал с больной головы на здоровую?

★★★★★

перекладывал с больной головы на здоровую

users don't care.

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

Но вот только если он при этом сваливает вину не на того, кто накосячил, а на того, кто сделал все нормально, и при этом вылезли косяки накосячевшего, то он является эталонным быдлом

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

Юзер сваливает на того, кто вносил изменения последний. Потому что проще откатить последние изменения, а уже разбираться в том, кто виноват, можно после в отдельной ветке.

vurdalak ★★★★★
()
Ответ на: комментарий от cvs-255

Ему не интересно искать виноватых, у него в жизни и без компьютеров полно других проблем. Если линакс работает плохо, а винда — хорошо, то для него оптимальный выход — перейти на винду.

Manhunt ★★★★★
()
Ответ на: комментарий от cvs-255

Но вот только если он при этом сваливает вину не на того, кто накосячил, а на того, кто сделал все нормально

А откуда он узнает, кто накосячил? Из рассылки лкмл?

cipher ★★★★★
()

Юзерам глубоко пофиг на IT и около IT темы, и это не делает их быдлом.

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

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

ну например. Линус вот не только ее читал, он сам туда писал. И это не мешало ему сваливать на разработчиков glibc

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

Линус вот не только ее читал, он сам туда писал

Было бы странно, если разработчик и главный идейный менеджер ядра не читал рассылку ядра.

cipher ★★★★★
()
Ответ на: комментарий от cvs-255

Юзер != разработчик. Даже если я знаю все сорцы ядра наизусть, я не буду разбираться, почему у меня в новой версии драйвер отвалился. Я посмотрю, кто последний обновлялся, и откачу изменения. Потому что это не моя работа.

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

Допустим строители построили дом. А так как до этого строили только на твердых грунтах, сэкономили на арматуре в фундаменте. До этого у них все работало. А тут построили на подвижном грунте. И в первую же зиму дом развалился.

Кто виноват - криворукие жадные строители или цементный завод, не предусмотревший того, что эти строители нарушают нормы при строительстве?

И эта история - реальный случай

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

К тому же косячит на самом деле всегда последний. Если ты что-то меняешь, ты должен проследить, что ничего другого при этом не сломал. Если баг в другом модуле, и твои безобидные изменения его ломают, нужно оповестить разработчика этого модуля, чтобы он внес исправления до того, как ты внесешь свои.

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

библиотеку glibc используют почти все, кто пользуется линуксом. Всех надо оповещать индивидуально?

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

Нет, не так. Строители сказали: «Мы вам отремонтируем дом до новой версии 3.11». Жители сказали: «ОК». Зимой дом развалился. Кто виноват: те, кто ремонтировал дом, или те, кто строил предыдущую версию дома и не предусмотрел, что именно могут сломать при ремонте?

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

Мы вам построим отремонтируем дом до новой версии 3.11

я не распарсил

cvs-255 ★★★★★
() автор топика

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

Gvidon ★★★★
()
Ответ на: комментарий от cvs-255

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

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

Нет, не так. Если продукт один, то тут еще возможно такое толкование. Но тут продуктов 2: glibc и flash player. разработчики glibc сделали все правильно (аналог цементного завода из моего рассказа). но вылезли баги адобовцев строителей (аналог быдло-строителей).

cvs-255 ★★★★★
() автор топика
Ответ на: комментарий от vurdalak

Если твоя библиотека после изменений сломает почти весь использующий ее софт

Отнюдь не весь. А только тот, разработчики которого нарушают стандарт при разработке.

cvs-255 ★★★★★
() автор топика
Ответ на: комментарий от vertexua

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

Прочитал простыню одним словом: gentoo =D

tazhate ★★★★★
()
Ответ на: комментарий от cvs-255

Интерфейсы библиотеки не должны изменять результат своей работы, только внутреннюю логику. Если раньше метод plus(1,1) выдавал 3, а потом это обнаружили, то нужно сделать plusNew(1,1), который выдает 2, а первый объявить устаревшим. Но менять результат первого метода — нельзя.

vurdalak ★★★★★
()

Для кого мы создаём софт? Не для юзера ли? Или по принципу программисты для программистов?

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

Но тут продуктов 2: glibc и flash player. разработчики glibc сделали все правильно (аналог цементного завода из моего рассказа). но вылезли баги адобовцев строителей (аналог быдло-строителей).

Ну вот, кривая аллегория подобна нефритовому слону. Ты когда-нибудь такое видел, чтобы в фундаменте дома, не трогая самого дома, заменяли цемент? А если бы и сделали такое, кого бы жильцы начали винить: строителей дома или заменяльщиков цемента?

Или обновление glibc — это в твоей аллегории зима? Так зиму не производят на цементном заводе. Её производят на специальных фабриках в Клаудсдейле.

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

Если раньше метод plus(1,1) выдавал 3

раньше выдавал UB. Теперь тоже выдает UB, как и заявлено в спецификации.

cvs-255 ★★★★★
() автор топика

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

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

Ты когда-нибудь такое видел, чтобы в фундаменте дома, не трогая самого дома, заменяли цемент?

Но зато под кучей однотипных домов с общим багом бывают разные грунты. А сами дома одинаковы. Так что произошла замена грунта под типовым домом

cvs-255 ★★★★★
() автор топика
Последнее исправление: cvs-255 (всего исправлений: 1)
Ответ на: комментарий от vurdalak

Если раньше метод plus(1,1) выдавал 3, а потом это обнаружили, то нужно сделать plusNew(1,1), который выдает 2, а первый объявить устаревшим. Но менять результат первого метода — нельзя.

И получим виндообразное API - нагромождение костылей. Линус прав.

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

Линус прав.

Точнее Дреппер.

cvs-255 ★★★★★
() автор топика
Ответ на: комментарий от druganddrop-2

я слишком стар для этого дерьма. я еще горбачева застал.

der_looser ★★
()
Ответ на: комментарий от cvs-255

Я описывал ситуацию в вакууме. С работой флешплеера не сталкивался и подробностей не знаю. Если в обоих случаях UB, то да, можно ломать-убивать и использовать антивирус Бабушкина на гусях.

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

Если в обоих случаях UB

Да, и до и после изменения в стандарте языка C для memcpy было написано UB при перекрывающихся регионах.

cvs-255 ★★★★★
() автор топика
Ответ на: комментарий от Suigintou

А иначе получаем, что сначала все пишут хаки на баги, а потом эти хаки с треском взрываются. И все в мыле, но поделать никто ничего не может :}

Deleted
()

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

Это их Голубицкий плохому научил, ага. А так-то юзерам по 5.1 проблемы разрабов. Но обычно эти юзеры чего-то заплатили. (Это из той экономической модели установка.) Про остальных можно сказать, что... DEVELOPERS разрабам по 5.1 на что по 5.1 этим сферическим в вакууме юзерам.

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

То что аналогии не годятся в качестве доказательств, вы конечно же не знаете?

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

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

У нас, в соседней мухосрани, кстати, такое было. Дошли до завода.

Mitre ★★
()
Ответ на: комментарий от cvs-255

В этой ситуации была угроза жизни. А кривой драйвер Nvidia или флеш - это «okay, пойду поем» для любого нормального человека

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

В данной ситуации не было угрозы.

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

разработчики glibc сделали все правильно (аналог цементного завода из моего рассказа). но вылезли баги адобовцев строителей (аналог быдло-строителей).

Есть другое мнение, во избежание бесконечного перевода стрелок, posix не должен содержать непредвиденного поведения.

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

Это не posix, а стандарт языка C. но да, лучше было бы, если бы memcpy при перекрывающихся регионах вызывала exit(1). Тогда бы такие криводелы сразу бы видели свои баги

cvs-255 ★★★★★
() автор топика
Последнее исправление: cvs-255 (всего исправлений: 1)

Линус прав. Нет ни одной технической причины сохранить это UB, ни единой.

адоб не прочитал доки и использовал memcpy неправильно

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

Меньше илитизма.

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