LINUX.ORG.RU
ФорумTalks

Unixway vs bloatware

 , , ,


0

2

Если представить пространство unixway, то программы (библиотеки, даже отдельные функции) располагаются в нём равномерно на одном расстоянии друг от друга, как атомы углерода в кристаллической решётке алмаза. В пространстве unixway царит свободная любовь - программы не отдают друг другу предпочтений (им не правится код в пользу друг друга).

В пространстве bloatware в почёте традиционные ценности: программы живут семьями. Будучи «подпиленными» друг под друга, они стягиваются в скопления и целые галактики ценой отдаления от остальных программ. Тут всё понятно. Вопрос вот в чём: откуда уверенность, что использование пространства unixway априори эффективнее?

В природе мало где наблюдается такая однородность, на всех уровнях материя, как правило, неоднородно распределена в пространстве-времени (которое и само неоднородно). Учитывая, что низкоуровневые процессы в природе протекают по принципу наименьшего сопротивления, можно сделать вывод, что кластеры программ пространства bloatware лучше для процессов в ограниченной области. Алмаз со своей решёткой, конечно, крут, зато расколоть его неосторожным движением ничего не стоит. Линукс, выросший под влиянием unixway, тоже легко бьётся. Получается универсальность в стиле «всё делается одинаково плохо».

В принципе, Линукс юзабелен благодаря уходу из unixway в bloatware: systemd, btrfs, само ядро Linux, все эти DE. По-моему, чтобы иметь какое-то будущее, Линуксу нужно деформировать пространство ПО и постягивать программы в bloatware-кластеры в самых используемых областях. Недостаточно делать отдельные дистрибутивы под какую-то область задач, нужно вонзать скальпель глубже.

Deleted

В принципе, Линукс юзабелен благодаря уходу из unixway в bloatware: systemd, btrfs, само ядро Linux, все эти DE. По-моему, чтобы иметь какое-то будущее, Линуксу нужно деформировать пространство ПО и постягивать программы в bloatware-кластеры в самых используемых областях. Недостаточно делать отдельные дистрибутивы под какую-то область задач, нужно вонзать скальпель глубже.

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

kirk_johnson ★☆ ()

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

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

жырнософт очень требователен к ресурсам

Необязательно.

жырнософт обычно заточен под какую-то определённую последовательность действий

Про это я сказал.

Нельзя вот так взять и переписать одно узкое место не ломая кхренам всю совместимость

Такая стратегия обычно приводит не к идеально работающему универсальному софту, а к горе костылей почему-то.

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

Ну, возможно вы просто привыкли смазывать взаимодействие программ в unixway-решётке своим потом и кровью))

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

Ну, возможно вы просто привыкли смазывать взаимодействие программ в unixway-решётке своим потом и кровью))

Нет, я просто запускаю vim/emacs/firefox/libreoffice/whatever/qpfview и работаю. А потом закрываю.

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

Как мне, например, использовать firefox в цепочке команд для вытягивания содержимого страницы? А модули emacs можно использовать как плазмоиды?

Deleted ()

угу, в манямирке красноглазых идеалистов второй половины 90х годов так и было.

потом наткнулось на глухую реальность и взрыв сверхновой вселенной прикладных программ.

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

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

«Философия UNIX гласит:
Пишите программы, которые делают что-то одно и делают это хорошо.
Пишите программы, которые бы работали вместе.
Пишите программы, которые бы поддерживали текстовые потоки, поскольку это универсальный интерфейс».
Обычно эти высказывания сводятся к одному «Делайте что-то одно, но делайте это хорошо».

Красиво — небольшое.
Пусть каждая программа делает что-то одно, но хорошо.
Стройте прототип программы как можно раньше.
Предпочитайте переносимость эффективности.
Храните данные в простых текстовых файлах.
Извлекайте пользу из уже существующих программных решений.
Используйте скриптовые языки для уменьшения трудозатрат и улучшения переносимости.
Избегайте пользовательских интерфейсов, ограничивающих возможности пользователя по взаимодействию с системой.
Делайте каждую программу «фильтром».

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

Deleted ()

И ээтцсамоэ, не забываем, что всякие там конвейеры команд и саму эту идеологию Отцы-Напейсатели Юникса прибумали очень давно, на текстовых терминалах, как раз тогда, когда копро-рации обновляли свои ДЦ с прошлых поколений.

А потом случился «блотварь» всех бытовых и микро-программ.
Т.е. надо принимать как особенность эволюции тот факт, что именно блоатварь разрослась на микро-ЭВМ 80х.

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

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

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

Не, чувак в целом прав. Когда можно писать мелкие программы — чо бы и не писать. Но я плохо понимаю, как можно сделать qpdfview фильтром.

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

а в мире микрош всё было намного сложнее.
никто не гарантировал ДОС с его АПИ...

вот и микропограммы и пухли, как на дрожжах с вожжами под хвостом.

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

да никак.
это совсем другая вселенная.

оно и тогда была куча блотвари. Те же билт терминалы с 8-битными процессорами внутри.


Т.е. лично я считаю - GUI всегда был блоатварью, по другому он быть не может.

Это позже МС порешала , вроде как первые в индустрии, со своими DDE-COM

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

не забивай дурным голову.

посмотри на канале СНА первые прототипы TUI и световое перо. там кажется систему заказа авиабилетов показывали.

Deleted ()

откуда уверенность, что использование пространства unixway априори эффективнее

Из опыта. Когда-то, большинство пользователей не знало, какую задачу понадобится считать завтра, и для этих, неизвестных и разнообразных задач не существовало готовой специализированной блоатвари(её бы просто не успевали писать). Т.ч. не существовало более эффективного способа решать задачи, чем собирать пайпы из готовых кирпичей.

Его и сейчас не существует. Но теперь «99%»(условно, точная цифра мне неизвестна) пользователей используют комп только для просмотра видео, печати одноразовых одностраничных документов, общения в соцсетях и ещё 3-4 столь же чётко определённых действий. И для этих действий эффективная блоатварь уже написана.

В результате получается, что в этих условных «99%» случаев упомянутый «опыт» неактуален, unixway эффективен «почти никогда».

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

Предпочитайте переносимость эффективности.
Храните данные в простых текстовых файлах.
...

Это кому такая чушь в голову пришла и что нужно было для этого употреблять?

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

Это кому такая чушь в голову пришла и что нужно было для этого употреблять?

Ты считаешь, что /etc/services лучше было бы хранить в базе данных?

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

Так GIMP и есть результат стягивания кода в кластер.

Он делает одну задачу — позволяет тебе изображения редактировать.

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

Он делает целую кучу задач, а «редактировать изображение» это не задача, а обширный класс задач.

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

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

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

Всё новое — хорошо забытое старое.

Сначала разучились писать в переносимом виде на C, потом стали придумывать всякие Java VM и компанию.

Текстовые файлы тоже ещё в почёте. (json/xml/whatever you name it)

Как ещё иначе сохранить факториал от 20-и, не упёршишь в битность и порядок байт? (Ответ: или pain/text или ASN.1)

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

Лови симпу. GNU is Not Unix в этом свете обретает совсем другой сакральный смысл.

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

А от куда файл знает что он оказался на другой FS, с другим endianness  и что он содержит в себе не int16, а int128?

Вам счастья с мульёном кодировок оказалось не достаточно?

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

Щито. Мы говорим о данных, которые программы сериализуют в файл, чтобы их прочитали другие программы на других хостах. Мы определяем формат, говорим, что всегда пишем байты в таком-то порядке и все. Читающим остается только преобразовать в свой порядок. И да, я только что описал tcp/ip.

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

Так GIMP и есть результат стягивания кода в кластер.

Под bloatware люди обычно понимают другое. Что-то типа записывалки дисков Nero с звуковым редактором, графическим редактором для обложек дисков и прочим.

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

Мы говорим о "Храните данные в простых текстовых файлах." А хранение подразумевает и копирование.

Так вот, «хранение» не должно зависеть от хоста. Иначе это адЪ и израиль.

Наглядный пример: скопируй просто так файлы rrd с 32 бит на 64 битную машину. А я посмеюсь.

beastie ★★★★★ ()

Получается, Unixway подрывает духовные скрепы? Надо запретить эти ваши линуксы!

TheAnonymous ★★★★★ ()

“Энтропия изолированной системы не может уменьшаться” - вот bloatware и есть попытка создания изолированной системы. Классический unixway - это открытая система, которая легко расширяется.

В начале были корпоративные unix-системы, у каждой корпорации свой собственный. Столлман создав GNU - дал нам свободную систему. Очень удачно в эту струю попало ядро Linux от Торвальдса и в результате получилась свободная система GNU/Linux.

Наигравшись с корпоративными юниксами, капиталисты решили изгадить Linux и сейчас стараются прихватизировать его - втащить в свою эко-систему, поставить под корпоративный контроль. В результате система будет строится на волюнтаристких решениях (см. systemd), а не свободном выборе людей. Что как раз приведёт к загниванию также как это случилось с корпоративными юниксами. Чтобы этого не допустить нужно сохранять верность принципам создания GNU.

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

В том то и прикол, что не имеет. int8 универсален. А вот int16, int32, int64 — нет.

Да нет, int16 как раз универсален. Он всегда 16 бит. И он на дисках лежит в little-endian. А вот строку тебе придется парсить, шоп понять, может ли это влезть в примитивные типы или нет.

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