LINUX.ORG.RU
ФорумTalks

Стендап про смерть UNIX-систем какими мы их знали

 ,


4

3

Прекрасная стендап-трагедиякомедия Григория Курячего (ALT Linux) на тему «Кризис UNIX way и фундаментальное IT образование» с январской конференции Альта:

https://www.youtube.com/watch?v=MAKZh-86qQ8

Избранные цитаты:

Ещё в 2008 году я учил, как это круто, что у нас есть много потоков событий, и из них мы фильтруем только те, которые нас интересуют, потом их агрегируем и складываем в человекочитаемого вида журнал, который может прочитать любой системный администратор. Это очень круто, только так щас никто не делает. Даже наш syslog складывает всё и не делает вот этой агрегации и фильтрации. Он просто складывает от такого-то процесса туда, от такого-то — сюда, грепайте — и вам будет счастье. Понятное дело, что это ещё один шаг к тому, чтобы складывать вообще все события в бинарный журнал и искать по нему специальным инструментом.

Когда вы в последний раз писали программу, используя X-протокол — рисовали квадрат через Х-протокол? Лично я — в 99-м году. Всё, что мы здесь привыкли считать нерушимыми основами — уже не основы. Всё, мир обрушился, пойду переквалифицируюсь в переводчики.

Ещё один такой тренд — «не пишите на шелле — он медленный». Вот вы смеётесь, а это правда. Запустите полтораста тысяч шелл-скриптов — и они будут чудесным образом в полтораста тысяч раз медленнее работать.

Следующий пункт который разрушает наши представления о системе - профессионализация разработчиков. Задачи стали такие сложные, что выучив немного язык Си и воодушевившись знаниями о том, что существует Linux, невозможно принести пользу сообществу. Сообщество пользователей, соответственно, депроффесионализируется. Хороший пример — это пользователи Убунту.

Базовое понятие — пакет — подвергается наезду. Некоторые даже говорят: а давайте собирать вот такой бандл большой; зачем вам пакет? главное, чтобы бандл работал — с набором пользовательского софта сразу.

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

★★★★★

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

Базовое понятие — пакет — подвергается наезду. Некоторые даже говорят: а давайте собирать вот такой бандл большой; зачем вам пакет? главное, чтобы бандл работал — с набором пользовательского софта сразу.

Насчет бандла vs пакет кстати: пакеты и репы это по сути способ дистрибуции системы, а бандл - отдельных оторванных от системы аппликух.

Грубо говоря когда нотепад^Wопенофис это «текстовый редактор микрософт линупс» - его надо в пакет. А когда опенофис это редактор работающий под операционками X,Y,Z - значит нужно пихать в бандл.

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

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

А, так у тебя просто будапешт по башу, так бы сразу и сказал. Расскажи нам, там уже решили проблему с отсутствием нормальных типов данных, из-за чего приходится постоянно в гамаке вприсядку танцевать? Уже решили 100500 дыр с экранированием или всё также надо записывать 10 листов того что можно использовать, а что на самом деле передаст тебе -rf в параметры? Уж читабельность с [ командами это разве что какому-нибудь Лебедеву пришлась бы по душе. Жрать такое себя не уважать, когда кругом нормальные инструменты, хочешь компилируемые, хочешь динамические. Нет, надо страдать и использовать легаси времён Ленина.

EDIT: алсо, любимый аргумент башевода, судя по ЛОРу, это «да это неправильное имя файла, не мои проблемы» :}

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

не устаю проигрывать, когда вижу, как ради мониторинга 1-2 дескрипторов заряжают целый FD_SET

а как иначе?

Harald ★★★★★
()

Ещё один такой тренд — «не пишите на шелле — он медленный». Вот вы смеётесь, а это правда. Запустите полтораста тысяч шелл-скриптов — и они будут чудесным образом в полтораста тысяч раз медленнее работать.

Шелл это язык-клей.

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

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

То есть бутинг по сути был разновидностью деплоя. Кстати к этому мы вернулись на андроиде - ребут это нештатная хрень.

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

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

потому что загрузка сама по себе была шаманской процедурой.

... и делалась вручную главным шаманом вычислительного центра? :)

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

У меня бутапешт по дебилам шариковым из школы которые заполонили ЛОР за последние 10 лет. :D

Зачем в баше типы данных? Потому что очередная мода в программировании из попытки припряч к кодингу дебилов привели к массовой пропаганде тезисов «типизацыя эта крута потому что с ней обезьяны вкуснее»?

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

А, кодерок-кодерочек. Иди кодь, кодерок, кагда надо - позовем.

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

cgroups, systemd, kdbus в Linux крепко и надолго

Я бы на это не рассчитывал, вот так, сразу.

Это индустриальный подход. То есть когда выдумывают мега-апи, потом тонны обезьян его пишут.... а потом все мегатонны кода выкидывают нафиг потому что придумали ygroups, E-system и наследник-XML-bus.

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

студент изучает в универе, то он и будет применять в своей работе

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

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

... и делалась вручную главным шаманом вычислительного центра? :)

Только если соотвествующая фаза луны. В обычной ситуации - падаванами шамана :D

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

Ну такие провалы мне конечно припоминаются, но не много. Bonobo, GConf ну и сугубо десктоные приложени+протокол вместо веб-приложений

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

Чем poll лучше select для небольшого числа дескрипторов?

Тем, что корректно работает, когда номера файловых дескрипторов больше, чем FD_SETSIZE. Ну а еще он несколько быстрее.

К тому же poll непортабелен, на винде его нет

А еще close непортабелен, потому что в винде closesocket надо. И что? Кого волнуют проблемы оффтопика?

poll() conforms to POSIX.1-2001.

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

Тем, что корректно работает, когда номера файловых дескрипторов больше, чем FD_SETSIZE.

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

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

почему его мнение должно быть кому-то интересно?

Потомушта, как минимум, ты обратил на это внимание.

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

А еще close непортабелен, потому что в винде closesocket надо. И что?

#define close closesocket написать дело пяти секунд, а разницу poll/select чуть сложнее обрабатывать

кстати сейчас нагуглил, что poll() таки в винде появился со времён висты, пожалуй можно и заюзать в будущем :)

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

Давай примеры обратного, разообразный ты наш.

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

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

На примере реализации своего сислога. Без совместимости с системным, разумеется.

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

Ну такие провалы мне конечно припоминаются, но не много. Bonobo, GConf ну и сугубо десктоные приложени+протокол вместо веб-приложений

Это просто ты молодой. gconf стал dconf(или как он там) - а вот bonobo - отличный пример. Смысл в том что наличие толпы индустриальных обезьян, бабла и потребностей приводит к доминированию брутфорс-решений.

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

Так что тот же срач systemd vs sysv напоминает срач между bsd vs sysv init :D При чем в initab тот же перезапуск демонов и примитивные поля-конфиги есть - но его никто не использует. А используют скрипты.

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

И решить ее брутфорсом естественно.

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

сугубо десктоные приложени+протокол вместо веб-приложений

А это вообще целая эпоха. Взяла и умерла. А юнипс - жив, и линупс пророк его :D

Просто если раньше хтонические процессы рождения -смерти протекали вне линупса. А сейчас - внутри него.

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

Так что тогда фундаментально?

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

Вот только не надо сейчас, умерла. То что есть у тебя на десктопе - это не то, что использует 90% пользователей. Так вот они сидят в браузере, в телефоне/планшете и часть из них в игровой консоли. В телефоне, планшете и консоли могут скорее всего тоже HTTP-based протоколы

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

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

Вообще то именно на примере сислога.

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

Грубо говоря если для вас логи это то что делает системд - вам вообще не место в ВУЗе. Это то самое ПТУ и есть.

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

когда это она успела умереть?

Это вопрос терминологии. Кобол мертв? PDP-11 А итиж ты иногда всплывают факты.

Так и с клиентсерверным десктопом. Раньше это был стандарт де-факто для прикладухи.

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

А сам браузер - не десктопное приложение с сетевым протоколом? Если он умрёт, то и веб-приложения тоже вместе с ним :)

Сетевые игры, плееры, шкайпик тот же - не есть примеры десктопного хомячкового софта с протоколом?

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

а откуда возьмутся большие номера файловых дескрипторов

Открываешь 1024 файла, потому что так надо, а дальше select и не работает.

#define close closesocket написать дело пяти секунд

Сколько секунд после этого ты будешь отлавливать «почему файлы не закрываются»?

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

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

А вот в системщине такой подход это днище, а такие решения уничтожают тех кто на них опирается. Собственно эти вот животные набежали в линукс.

И гадют. То есть примеяют свой подход. " кококо устарело, кококо перепишем".

Ну и переписывают. И переписывают. И переписывают.

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

Сколько секунд после этого ты будешь отлавливать «почему файлы не закрываются»?

Нисколько, т.к. если приложение пишется с расчётом на портируемость на винду, то файлики в нем открываются и закрываются через fopen/fclose

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

А сам браузер - не десктопное приложение с сетевым протоколом? Если он умрёт, то и веб-приложения тоже вместе с ним :)

Ну если серьезно, нет, браузер - не десктопное приложение с сетевым протоколом.

Броузер это среда, операционная система (одна из).

Сетевые игры, плееры, шкайпик тот же - не есть примеры десктопного хомячкового софта с протоколом?

Шкайпик унаследован. (Плееры? ты про что?). Сетевые игры.... ну ... в игропроме все решения - архаичны.

Слышал же про релиз анлриал двигла «беплатный»? Они только додумались до концепции платформ, что это круто. Как индустрия до этого доперли.

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

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

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

Сетевые игры.... ну ... в игропроме все решения - архаичны.

Я хотел бы посмотреть, как vertexua многопользовательский шутер-стрелялку будет с HTTP запросами на каждое движение/выстрел писать :)

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

но тренд видно, со скайпа все валят,

статистика говорит об обратном

https://www.telegeography.com/products/commsupdate/articles/2014/01/15/skype-...

http://skypenumerology.blogspot.com/

Игры зашиты в ональную консоль

ональные консоли существуют лет 30, если не больше, как-то до сих пор рынок PC игр не убили

а онлайн плееры иногда глючат и тормозят

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

WebSocket или WebRTC, но не об этом речь. Я говорю о тренде

твой тренд сделает пинг через WebSocket или WebRTC меньше, чем через обмен UDP пакетами?

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

оно мне предлагает какой-то .exe файл скачать, это на веб-приложение как-то не тянет

да и сомневаюсь, что там крузис-стайл графика будет

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

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

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

Ты чего пристал, я тебе мамой божусь всю жизнь все писать на веб-технологиях и стрелять несогласных?

есть такое ощущение, да :)

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

оно мне предлагает какой-то .exe файл скачать
, это на веб-приложение как-то не тянет

Ну гугл толк плагин тоже .rpm . Однако менее вебприложением от этого гугл хенгаут не становится.

да и сомневаюсь, что там крузис-стайл графика будет

Ты же читал мой тезис - игропром это архаичная индустрия. Там сидят люди которые живут в прошлом.

kernel ★★☆
()

он
1) либо не готовился
2) если готовился, то не в состоянии связать свои мысли и нормально донести

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

твой тренд сделает пинг через WebSocket или WebRTC меньше, чем через обмен UDP пакетами?

Панимаешь, вот есть гугл талк плагин. По сути, NIH синдром на тему WebSocket/WebRTC .

И прекрасно работает. В результате хенгаут чистое вебприложение ... ну кроме этого плагина :D

То есть то что у тебя там WebSocket / WebRTC более хреновые чем udp - ну это проблема реализации. Точнее выбора уровня абстракции.

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

Ты же читал мой тезис - игропром это архаичная индустрия. Там сидят люди которые живут в прошлом.

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

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

То есть то что у тебя там WebSocket / WebRTC более хреновые чем udp - ну это проблема реализации. Точнее выбора уровня абстракции.

для голосовой связи задержки не так критичны, как в мультиплеерных FPS. Вон по спутниковым телефонам вполне себе общаются с секундными задержками, а в онлайн играх пинг 200-300мс уже всё, уже играть невозможно

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