LINUX.ORG.RU
ФорумTalks

Любовь к велосипедостроению

 ,


0

1

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

  • Был OSS, сделали ALSA

  • Был ESD, сделали PulseAudio

  • Были PulseAudio и JACK сделали PipeWire

  • Был X11 сделали Wayland и Mir

  • Была SysV Init сделали SystemD

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



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

Ты чо, эту древнюю байку не читал?

Приходит программист на новую работу. Дают ему сопровождать ПО. Первая реакция: «Какой дурак писал эту программу? Здесь всё надо переделать!» Садится он переделывать. На модных современных технологиях. Менеджер спрашивает его: «Сколько времени понадобится?» «День, ну, может, два», - отвечает программист. Менеджер даёт ему месяц, и через полгода, когда появляются первые результаты, программист охладевает к проекту и увольняется.

Приходит другой программист на его место. «Какой дурак писал эту программу? Здесь всё надо переделать!»

ЗЫ. С другой стороны, боязнь что-то переделывать приводит к тому, что в банках до сих пор ПО работает на КОБОЛе, в программно-аппаратной эмуляции PDP11.

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

Был OSS, сделали ALSA

У OSS была некошерная лицензия.

Был ESD, сделали PulseAudio

ЕМНИП, он был не один и попытались сделать унифицированную замену, но обосрались.

Были PulseAudio и JACK сделали PipeWire

Тут уже попахивает NIH.

Был X11 сделали Wayland и Mir

У иксов куча недостатков, а сетевая прозрачность нужна не всем и реализуетмя плагином. Mir в этом случае действительно проявление NIH, т.к уже был Wayland, пусть и несколько сырой.

Была SysV Init сделали SystemD

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

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

в программно-аппаратной эмуляции PDP11.

Чаще всего System/360.

token_polyak ★★★★
()

Согласен. Нафиг Интернет! Даешь голубиную почту!

BceM_IIpuBeT ★★☆☆☆
()

А шо сразу линух? Ты сайтег напеши. Хомяк, про офигенного себя. Внезапно, в ангулярах-реактах-вуях не всё искаропки, а цмс-без-башки вообще не существует как класс

TooPar
()

Нельзя стабильности? Вот как у нас в стране

2 революции за 100 лет, хорошая аналогия кстати

Ну да, проблема существует, я согласен, только кто тебя заставляет прогнувшийся дистр использовать?

d09
()

Потому что сделать хорошо работающий проект — это трудно.

Если тяп-ляп что-то лепить, то да — проще выкинуть и заново писать.

fornlr ★★★★★
()

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

Почему у красноглазиков

Пфф, как будто микрасофт не переписывает wsl на wsl2 через год и не пересаживает насильно на новые .net, wps и прочее говно, как и любые другие конторы.

slovazap ★★★★★
()

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

Потому что то, что есть, может перестать удовлетворять потребностям. Или вообще перестать работать в будущем.

И да, индусы из MS этим страдают похлеще любого линуксоида (вспомни звуковую подсистему Vista и 7, то ещё scheisse). Про Кука и Ко вообще молчу.

Был OSS, сделали ALSA

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

Был ESD, сделали PulseAudio

Был целый зоопарк звуковых серверов: не только ESD, но ещё и aRTS для "кед". И все они были одинаково неудобными и глючащими. PA, хоть и сам страдал паршивым звуком, был удобнее в плане работы. А там и "чоткие дядьки" из RH подключились, доделав "пуссиаудио" до околоидеального состояния.

Были PulseAudio и JACK сделали PipeWire

Вот ту согласен, NIH как он есть. Хотя идея здравая: сделать один-единственный звуковой сервер, чтобы не морочиться с "джеком". Время покажет, оправдала ли себя попытка, но сейчас PW работает хуже связки PA+JACK2.

Был X11 сделали Wayland и Mir

X11 основан на XFree86, которому сто лет в обед. Компьютеры с тех времён поменялись радикально, причём не только в плане мощности. Плюс для тех же игр лишняя прослойка в виде "иксов" в теории будет только мешать, на практике же бывает ровно с точностью до наоборот и зависит от игры. Wine пока что только под Х11 или XWayland работает, но работы уже подходят к концу.

Была SysV Init сделали SystemD

Здесь немножко иначе. Хоть Пёттеринг и редкостный баклан в плане программирования, идею он внёс здравую – выделить в отдельный слой абстракции управление процессами и сделать так, чтобы ими можно было на ходу управлять. SysV не позволял через скрипты и половины того, что может тот же runit или Systemd.

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

Просто так никто не "прогибается". Ну, кроме Debian-а, но там укурки-бюрократы, там даже один-единственный пакет в репозиторий запихнуть невозможно без головомойки. Но вообще на всё есть причины, и часто такие изменения пользователям идут на пользу.

И значит все свои скриптульки переписывать и привычки менять.

sysv-compat для кого придумали и до сих пор не выкинули? А если уж совсем "ректангулярно инциркулированный", то запускай Systemd поверх того же runit.

Нельзя стабильности? Вот как у нас в стране например

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

Korchevatel ★★★★★
()

Были кони, сделали автомобили, вот велосипедостроители. Вот например разве тачка ест яблоки и радуется твоему появлению?

vertexua ★★★★★
()
Последнее исправление: vertexua (всего исправлений: 2)

По мне так перечисленные системы - не слишком удачный пример. Даже в венде поддержка legacy технологий быстрее удаляётся чем данные системы заменяют собой старые.

Был OSS, сделали ALSA

OSS хоть и действительно морально устарел, но некоторые его всё ещё используют. А альса до сих пор здравствует, как минимум потому что являетя основой для всех этих модномолодежных пульсаудио и пупвайров. И для Jack’а тоже.

Были PulseAudio и JACK сделали PipeWire

А что PipeWire умеет в нормальный риалтайм и настраиваемые и предсказуемые задержки вывода звука как Jack ? А то мне всегда казалось что это просто очередной велосипед но на этот раз оптимизированный под контейнеризацию и изоляцию/сандбоксинг. Jack тоже живёт и здравствует, да и пульса будет поддерживаться ещё очень долго как я понимаю.

Был X11 сделали Wayland и Mir

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

Была SysV Init сделали SystemD

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

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

да и пульса будет поддерживаться ещё очень долго как я понимаю

Ну вот есть такая удобная вещь PulseEffects. Что-то клюнуло в голову разрабам и они побежали переписывать её для PipeWire, а PulseAudio они будут тыкать по остаточному принципу, ну типа патчи безопасности накладывать

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

По поводу кобола и pdp11. Столкнулись мы как-то с кодом sql процедурок и структурой базы для ms sql server, которые были явно конвертированы из чего-то более древнего, где-то конца 80х. Есть догадка, что и тот первоисточник не был первоисточником. Так вот речь о том, что при всей жопности такого подхода, бизнеслогики там килотонны. И если бы остался максимально аутентичный вариант, то багов было бы меньше. А если бы кто-то решился полностью заново сделать - то этот кто-то был бы молокососом, кто с трудом вообще понимает банковские сущности такими, какими их придумали. От работы с такими проектами часто получаешь и боль и повышение квалификации.

ixrws ★★★
()

В PipeWire обещали много вкусного.

Но я сам не сварщик, оценить не могу.

Если будет работать бесшовно, то почему бы и нет.

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

От работы с такими проектами часто получаешь и боль и повышение квалификации.

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

А в плане более практически заметных навыков не всё так радужно.

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

Это да, но местами начинаешь лучше понимать откуда ноги растут всяких sql.

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

Systemd поверх того же runit.

Давно уже нельзя. Системда должна быть c PID 1 и никак иначе.

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

Хоть Пёттеринг и редкостный баклан в плане программирования

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

Не сочти за наезд, но ты сам писал что админишь за минималку, неужели в Red Hat все так плохо с аудиторством, что админам из Житомира лучше видные кадровые проблемы корпорации с оборотом в пару миллиардов😉

artzaleks
()

Был OSS, сделали ALSA
Был ESD, сделали PulseAudio
Были PulseAudio и JACK сделали PipeWire

Если ты лично не понимаешь, почему это реально нужно, это не значит, что это ненужные вещи.

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

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

Плюс - велосипеды делать интересно.

pon4ik ★★★★★
()

Был OSS, сделали ALSA

Лицензия.

Был ESD, сделали PulseAudio

А еще была тонна других звуковых серверов, но спасибо пульсе, она похоронила их всех (при этом являлась куском дурнопахнущего Г), и теперь либо алса, либо пульса. Ну еще джек для тех, кому оно надо. Да, USE=«-pulseaudio», есличто

Были PulseAudio и JACK сделали PipeWire

В 2021м когда стриминг является повсеместным, почему бы и нет. Если родят что-то low-latency, то будет неплохо.

Был X11 сделали Wayland и Mir

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

Была SysV Init сделали SystemD

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

leg0las ★★★★★
()

Был X11 сделали Wayland и Mir
Была SysV Init сделали SystemD

А у меня ответная претензия к тебе: X11 и SystemV init устарели — почему ты не сделал им достойной замены? X11 не нужен был уже 30 лет назад, он разрабатывался для каких-то корпоративных систем-мейнфреймов, где в сейфе за бункером с пулеметчиком стоит сервер за миллионы денег, а сотня пользователей подключается к серверу при помощи консолей. X11 не подходил для медленных модемов — для этого разрабатывалась NeWS, которая устарела и сдохла еще быстрее, потому что писать под нее было еще сложнее, чем под X11. При этом NeXTSTEP, которая вообще отказалась от рисования по сети и использовала localhost-only Display PostScript, одно время успешно уделывало все эти системы, потому что писать GUI под NeXTSTEP было очень просто, и именно потому Джон Кармак и ко при разработке первых 3D шутанов предпочли именно систему на базе Display PostScript.

Конечно, не в последнюю очередь еще и потому, что в массовых никсах была традиционно плохо проработанная поддержка сети, которую потихоньку начали исправлять где-то к нулевым — это касается, например, асинхронного ввода-вывода и сетевых файловых систем, вроде NFS, которую Sun выпустило в публику только где-то к 1989 году. Мне на это любят отвечать, мол BIND же ж весь интернет обслуживает, и ничо. Но проблема в том, что BIND почти не выполняет работы, он только получает UDP пакет и сразу отсылает UDP ответ. Классический же никсовый подход для серверной обработки — это форк на каждое соединение, что есть о-о-очень неэффективно даже для довольно скромного числа клиентов.

Причем, примерно по той же причине SystemV init, как fork-ориентированная система, устарела. Потому что fork не только неэффективен при большом числе операций, но еще и ни разу не гибок и не отзывчив, потому что получает параметры и файловые дескрипторы один раз при запуске — а что, если условия со времени запуска изменились?

В то же время, systemd представляет собой противоположную крайность — единый и хрупкий монолит на Си, пусть и модульный. Но вместо того, чтобы сделать systemd «правильно», сообщество старперов занято вонью по поводу «верните нам SystemV init». SystemV init — это неюзабельный кусок дерьма, который в какой-то момент начал вонять настолько сильно, что RedHat уже не смог дальше этого терпеть.

byko3y ★★★★
()

Да сколько можно то?

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

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

А у меня ответная претензия к тебе: X11

В то же время, systemd представляет собой противоположную крайность

systemd - такое же недоразумение, как x11. история повторяется 30 лет спустя.

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

Стабильность всегда превращается в брежневский «застой», вне зависимости от обстоятельств.

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

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

systemd - такое же недоразумение, как x11. история повторяется 30 лет спустя

В каком месте оно «такое же»? Я не вижу аналогии. Аналог X11 на баш-скриптах вроде никто не спешит реализовывать.

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

В каком месте оно «такое же»?

«единый и хрупкий монолит на Си, пусть и модульный.»

Аналог X11 на баш-скриптах вроде никто не спешит реализовывать.

аналог systemd - тоже.

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

И как получается, что у линукса с 20 разными де 1% десктопа, у маков с 1 де 10%, а у винды с 1 де 80% ?

Так один рейх же. Пользователю работать, а не в кубики линукса играть. По мне так линукс должен оставаться той говниной какой он есть, без вендор-лока, без унификации. Хочу играть в кубики. Пусть будет вечный 0.1%

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

«единый и хрупкий монолит на Си, пусть и модульный.»

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

Ну и во-вторых стоит вопрос — почему Си? Даже не C++. Например, GCC пишется на смешанном C/C++. Systemd — это ведь по большей части логика, а не работа с железом. Парсить конфиги абсолютно точно проще на любом языке, чем на Си.

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

И как получается, что у линукса с 20 разными де 1% десктопа, у маков с 1 де 10%, а у винды с 1 де 80% ?

Андроид в линуксы не включаем? Хотя, если так идти, то самая популярная в мире OS — это MINIX 3.

byko3y ★★★★
()

Был ifconfig сделали ip2...
Потом одумались и вернули.
На самом деле, на примере ALSA и ip2, запиливание новых нужных фич ставится в приоритет перед сохранением порядка, другими словами, не осилили сделать правильно. В случае альсы уже ничего исправить было нельзя (не портировать же из FreeBSD их pcm драйвер, полностью oss совместимый, скрывающий от юзера секс с хард/софт микшером и с минимальным конфигом для не pnp аудио)

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

хорошая аналогия

Граждане Пятой Республики смотрят на революциофобов с непониманием.

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

На винде де можно своё запилить, ващета. И порт afterstep есть

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

Назови мне альтернатриву X11/XFree, которая обладала хотя бы приблизительно такой же фунциональностью

у Systemd есть вполне себе работающие аналоги. sysvinit, upstart, openrc.

leg0las ★★★★★
()

Была же аська, ирка и джаббер нахрена все эти матриксы, ватсапы, телеграмы? Лучше бы пилили аську и джаббер

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

у Systemd есть вполне себе работающие аналоги. sysvinit, upstart, openrc.

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

Назови мне альтернатриву X11/XFree, которая обладала хотя бы приблизительно такой же фунциональностью

это к чему? оно кстати, называлось не XFree, а XFree86.

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

Ну и во-вторых стоит вопрос — почему Си? Даже не C++. Например, GCC пишется на смешанном C/C++. Systemd — это ведь по большей части логика, а не работа с железом. Парсить конфиги абсолютно точно проще на любом языке, чем на Си.

традиционно используется для системного софта. наверное, логично было бы писать этот инит-фреймворк сразу на языке с защитой от переполнения. но тогда бы его точно никуда бы не пропихнули. а так можно было прикинуться овечкой: я всего лишь маленькая системная утилита, бе-бе-бе, возьмите меня в дебиан!=)

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

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

Какой к черту овечкой? Даже мелкие утилиты пишут на C++. Я вот пишу свой пет на сихе, и я проклял уже всё на свете, потому что большая часть всех проблем у меня происходит тупо из-за того, что использовал не тот идентификатор, не там, не с тем знаком, не с тем множителем, не с тем типом, и так далее — потому что система типов в Си очень слабая. У меня есть оправдание — я пишу многопоточную системщину, которую Rust/C++ не помогут сделать безопасной (и я просто необучаемая тридвахара). А вот у авторов systemd этого оправдания нет.

byko3y ★★★★
()
Последнее исправление: byko3y (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.