Линус Торвальдс дает мастер-класс по системному дизайну

Линус Торвальдс, создатель Linux и Git и известный своей прямотой, продолжает нести добро и любовь в массы.

Свежая перепалка в linux.kernel:

WE DO NOT BREAK USERSPACE!

Seriously. How hard is this rule to understand? We particularly don’t
break user space with TOTAL CRAP.

Примерно то же Линус пытался обьяснить и мейнтейнерам glibc/Fedora:

Quite frankly, I find your attitude to be annoying and downright stupid.
How hard can it be to understand the following simple sentence:

THE USER DOESN’T CARE.

Несколько лет назад Линус похожим образом объяснил, почему Git написан на C вместо C++:


*YOU* are full of bullshit.

C++ is a horrible language. It’s made more horrible by the fact that a lot
of substandard programmers use it, to the point where it’s much much
easier to generate total and utter crap with it. Quite frankly, even if
the choice of C were to do *nothing* but keep the C++ programmers out,
that in itself would be a huge reason to use C.

Больше цитат можно найти на wikiquote и в свежем AMA на Слешдоте.

На фото: Линус передает привет компании NVidia.

👍НравитсяПонравилось0
В избранноеВ избранном0
Подписаться на автора
LinkedIn



Підписуйтесь: Soundcloud | Google Podcast | YouTube


15 комментариев

Подписаться на комментарииОтписаться от комментариев Комментарии могут оставлять только пользователи с подтвержденными аккаунтами.

Линус — зайка, пупсик, няшка! :)
И даже при том, что я использую Цэ-плюс-плюс уже почти два десятка лет, меня совершенно не обижает его наезд на плюсы, даже наоборот — я видел примеры того, как дибилы наколбасили неимоверной ахинеи на плюсах, и потому я с Линусом полностью согласен: C++ в руках идиота — генератор г-на массового поражения.

WE DO NOT BREAK USERSPACE!
Поменять строчку в ядре, чтобы потом нужно было фиксить три кучи опенсорсных библиотек? Синхронно апдейтить стопицот пекеджей? Или даже дописывать специальное расширение для пекедж-системы, чтобы трекать совместимость именно по этой отдельно взятой божественной доработке?
Нет уж, тут лучше поступить так, как сделали Intel с багом в 86-м проце: Оставить всё как есть, и во всех следующих поколениях. Для совместимости.
Линус передает привет компании NVidia.
Линус — очень мягкий и добрый человек. Я бы поливал их дерьмом минут питнацодь, брызгая слюной. Какими надо быть м-ками, чтобы не выложить в опен сорс говнокод говнодрайвера вашего говноакселератора, великие секреты там сокрыты? Да все давно знают все ваши секреты, включая главный: Вы — мудаки. И даже несчастная АМД вас вставляет своим Радеоном по самые помидоры. И даже АРМ вставил своим пет-проджектом вашу Тегру. И поделом вам, история х-ни не прощает. :\
(И персонально я вас неистово ежедневно ненавижу — за тошнотворную рекламу в начале Crysis 2.)

Обнять и плакать, чем дальше, тем всё яснее, что судьба линукса как раз в руках гигантов типа HP, RedHat, Google, а Линус, как климаксная истеричка (очень напоминает скрэта из Ice Age), носящаяся со своим жаренным жёлудем писанной торбойядрышком и пытается одновременно подлизать задницу всем разработчикам юзерспейс говнософта.

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

ну PulseAudio вже ніби як стейбл і доволі крута штука. Так що репліка щодо Поттерінга в цьому випадку не дуже доречна.

>приподнял газетку, которой была прикрыта огромная куча дерьма.

"По поводу изменения кода возврата Линус указал на то, что ошибка в коде ядра налицо, так как код ENOENT неприменим в ioctl для управления уже открытыми файлами, он ассоциируется только с манипуляцией с путями и всегда означал отсутствие искомого файла или директории."(ц) Опеннет

Чим погано при кожній версії ядра зберігати сумісність з компонентами найпопулярнішим ДЕ/десктопом?

Чим погано при кожній версії ядра зберігати сумісність з компонентами найпопулярнішим ДЕ/десктопом?
Без привязки к конкретной ситуации.
Совместимость не должна мешать “правильности”. Разработчики ядра системы исправили, как они считали, ошибку в АПИ. После такого надо уведомить клиентов об изменениях и все. Клиент должен подстраиватсо под сервер, а не наоборот, ибо во втором случае это затормозит развитие всех систем (и сервера, и всех клиентов).

>Без привязки к конкретной ситуации.

Згоден. Проте, в конкретній ситуації схоже виконали зміну і нікого не попередили перед цим.

Проте, в конкретній ситуації схоже виконали зміну і нікого не попередили перед цим.

А кто “главный” ментайнер ядра? (Линус?) От эму и надо люлей выписывать.

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

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

Что вы подразумиваете под официальной стратегией?
1) Изменение результата. Так вы сами сказали что он не разработчик, и тут ментайнеру виднее.

2) Вот это:

If a change results in user programs breaking, it’s a bug in the
kernel. We never EVER blame the user programs. How hard can this be to

understand?

Тогда линуксу писец. Ибо это полнейший бардак: dou.ua/...alds-fu/#276760

Второй вариант правдоподобнее. Вспомните когда он наезжал на glibc.

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

ну PulseAudio вже ніби як стейбл і доволі крута штука. Так що репліка щодо Поттерінга в цьому випадку не дуже доречна.
Крутая штука чтобы что-то пропиликать, но с таким латенси можно только mp3’шки играть, на большее оно неспособно. Вот тут очень хорошо написано про остальное:
lurkmore.to/...инг#mws_sz11Paq
"По поводу изменения кода возврата Линус указал на то, что ошибка в коде ядра налицо, так как код ENOENT неприменим в ioctl для управления уже открытыми файлами, он ассоциируется только с манипуляцией с путями и всегда означал отсутствие искомого файла или директории."(ц) Опеннет
Если честно, то это бред, дело не в самой ошибке, а в том, как они обрабатываются. Кстати, при работе с USB устройствами в ядре, это вполне допустимая ошибка (например, указали неверный endpoint), и чтобы там не вопил Линус она живёт там годами и прекрасно себя чувствует. Хорошо, замени на более подходящее в данном случае ENXIO (контрол отвалился), что от этого поменяется?
Чим погано при кожній версії ядра зберігати сумісність з компонентами найпопулярнішим ДЕ/десктопом?
Чем это закончится, если подстраивать ядро под каждое приложение, которое имеет ошибки в коде?

Та знаю я про Поттерінга. Але давати посилання на Лукмор в якості аргументів — не ок. Важко говорити в ролі експерта (бо я ним не є) щодо Пульсаудіо, але до нього я не чув про альтернативи, що б вміли те саме.

Якщо з кожним релізом зовсім не слідувати за тим, як після оновлення почало працювати ДЕ (і мабуть не тільки КДЕ, так як Пульс в будь-якому ДЕ інтегрований) — то так до повного хаосу можна опуститись, в опенсорсі і без того часто таке. Все таки має бути баланс, і до нього мають прагнути з обох сторін. Ядро будуть писати окремо, засовуючи лише іновації, ДЕ також окремо...а потім всі будуть говорити, що винні не ми, а вони. Це буде куча інструментарію, котрий ніколи не запрацює.

а Линус, как климаксная истеричка

Ну все таки я б так не назвав людину яка змогла випустити ядро, проштовхнути його в маси (я не маю на увазі не лише десктоп) і залучитись на початку підтримкою вендорів. Не кажучи вже про стандарт де-факто Git...Я просто говорю, що ця людина і зараз робить дуже багато істотного, хоч за справу взялись багато корпорацій, за котрими також стоять люди.

Та знаю я про Поттерінга. Але давати посилання на Лукмор в якості аргументів — не ок. Важко говорити в ролі експерта (бо я ним не є) щодо Пульсаудіо, але до нього я не чув про альтернативи, що б вміли те саме.

Что именно умели такого, что используется _каждый день_ и ни у кого больше такой фичи нет? А по поводу люрка — там, как это ни странно, всё правильно написано по этой теме.

Ну все таки я б так не назвав людину яка змогла випустити ядро, проштовхнути його в маси (я не маю на увазі не лише десктоп) і залучитись на початку підтримкою вендорів.

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

Можно вспомнить массу случаев, когда тупое упрямство Линуса вело к уходу серьёзных мейнтейнеров, например с Аланом Коксом в 2009, который сказал тогда замечательную фразу про Линуса, в которой заключена вся суть:

“Instead I got a whole collection of mail from you most of which indicated

you hadn’t even understood the problem.”

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

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

Типа через вот это.

www.opennet.ru/...shtml?num=35719

Имхо, очень годный парень. Говорит жестко, но правильно.

Подписаться на комментарии