Вороны на помойке
Mar. 31st, 2011 01:07 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Представьте себе - живут в некоторой стране люди, производят всякие сельскохозяйственные продукты. Один яблоки выращивает, другой пшеницу, третий - овец разводит на мясо.
Естественно, они обмениваются между собой результатами своего труда.
Ну и мнениями на тему того, что корочку на хлебе лучше бы поподжаристее делать, а свинью - не перекармливать, чтобы свинина не из одного сала состояла.
Недоеденные объедки еды выкидывают на помойку. Где этими объедками кормятся вороны.
Все бы ничего, да вот завелись в этой стране жрецы-авгуры, и стали предсказывать по поведению вороньих стай на помойке судьбу.
Ну и соответственно, стали рекомендовать людям готовить еду так, чтобы на помойку попадало побольше, чтобы воронам жилось получше.
А что людям невкусно - так это ж мелочи. Главное - вороны, они определяют судьбу.
К чему я это все? А именно так выглядит сегодня мир OpenSource. От разработчиков, которые что-то полезное делают и обмениваются этой пользой друг с другом постоянно требуют прогнуться под интересы "обычного пользователя". Волю которого толкуют специальные жрецы-авгуры.
Живьем того пользователя никто не видел, и почему именно его интересы должны быть приоритетны - непонятно. Он не приносит сообществу никакой пользы. Не пишет кода, не шлет багрепортов. Только подбирает то, что сделано другими. Благо операция копирования бесплатна.
Но талантливые демагоги-авгуры уже добились того, что для людей, то есть для существ наделенных речью, и способных выразить свои мысли (на языке, понятном компьютеру) open source среды стали крайне неудобны.
Естественно, они обмениваются между собой результатами своего труда.
Ну и мнениями на тему того, что корочку на хлебе лучше бы поподжаристее делать, а свинью - не перекармливать, чтобы свинина не из одного сала состояла.
Недоеденные объедки еды выкидывают на помойку. Где этими объедками кормятся вороны.
Все бы ничего, да вот завелись в этой стране жрецы-авгуры, и стали предсказывать по поведению вороньих стай на помойке судьбу.
Ну и соответственно, стали рекомендовать людям готовить еду так, чтобы на помойку попадало побольше, чтобы воронам жилось получше.
А что людям невкусно - так это ж мелочи. Главное - вороны, они определяют судьбу.
К чему я это все? А именно так выглядит сегодня мир OpenSource. От разработчиков, которые что-то полезное делают и обмениваются этой пользой друг с другом постоянно требуют прогнуться под интересы "обычного пользователя". Волю которого толкуют специальные жрецы-авгуры.
Живьем того пользователя никто не видел, и почему именно его интересы должны быть приоритетны - непонятно. Он не приносит сообществу никакой пользы. Не пишет кода, не шлет багрепортов. Только подбирает то, что сделано другими. Благо операция копирования бесплатна.
Но талантливые демагоги-авгуры уже добились того, что для людей, то есть для существ наделенных речью, и способных выразить свои мысли (на языке, понятном компьютеру) open source среды стали крайне неудобны.
no subject
Date: 2011-03-31 11:39 am (UTC)no subject
Date: 2011-03-31 11:49 am (UTC)Вот это вот:
"шансы нормально развиваться с двумя пользователями есть, но они заметно меньше, чем при большем числе пользователей"
В общем случае неверно просто потому, что вместо воплощения нормального, самосогласованного набора фич придется угождать ...дцати несовместимым точкам зрения. Просто потому, что двоих пользователей можно столкнуть лбами и объяснить им, что и как, попросив договориться, либо просто сделать два независимых набора фич, но вот с тремя десятками пользователей это уже не так просто.
Поэтому проект может успешно (в смысле, без мозгоразрушающих последствий для хозяина) развиваться, если у него один или немного ключевых пользователей и таки они не могут внезапно исчесзнуть, то есть пользователи являются организациями. Альтернативой являются конструкторы 'сделай сам' по типу юниксов, и то с купюрами. Все прочее приводит к монструозным офисам и иным аналогам майрософт-продукции - плохосогласованным, глюкавым монстрам.
no subject
Date: 2011-03-31 12:16 pm (UTC)давайте теперь я тоже объясню на уровне «для тупых» ту мысль, которую пытаюсь донести с первого комментария.
в мире сейчас тонны open-source проектов, которые вроде бы и выложены в открытый доступ, но интересны только своим авторам (один человек на один проект). Когда авторам они перестанут быть интересны по любой причине, начиная с автобуса и заканчивая новым увлечением, случится смерть этих проектов. Часто бывает и так, что два-три друга вместе написали проект, выложили его в open-source, и он тоже никому, кроме них не нужен. Они повозятся с ним, по очереди сменят интересы, и он тоже умрёт.
а когда проект действительно интересный, и его пишут сто (например) человек, то на каждого уходящего в другой проект или сбитого автобусом программиста приходит новый, которого заинтересовала тема.
чем проект интереснее и больше, тем больше вероятность, что естественный отток программистов будет компенсироваться новыми программистами, приходящими в проект — потому что большие проекты заметнее, а интересные — привлекательнее.
крайние случаи возможны, я их не отрицаю, но я говорю про шансы, про статистику, про вероятности, поэтому единичные примеры ничего не доказывают
и да, этим закономерностям совершенно неважен тот смысл успешности, который вы сейчас вкладываете в это слово «успешно (в смысле, без мозгоразрушающих последствий для хозяина) развиваться». Им важно, что проект не тухнет на хостинге, в буквальном смысле никому не нужный при всей своей самосогласованности.
так что, пожалуйста, когда я говорю про успешность в одном смысле, не возражайте мне про успешность в другом смысле
no subject
Date: 2011-03-31 12:24 pm (UTC)Мой пойнт заключается в том, что проргаммист - всегда тоже пользователь. И не имеет смысла участвововать в разработке open source проектов, которыми сам не пользуешься.
А если пользуешься сам, надо исходить из собственных ощущений удобства или не удобства, и любые внешние советы пропускать через собственный опыт.
no subject
Date: 2011-03-31 12:37 pm (UTC)я на неё возражаю мыслью, что слишком строгое следование собственным убеждениям об удобстве может чрезмерно затруднить сотрудничество с другими программистами. Многие же интересные задачи в одиночку решать очень сложно, а для сотрудничества приходится иногда идти на жертвы. И чем больше задача, тем больше ей требуется труда программистов, и тем на большие жертвы приходится идти каждому из них, чтобы она вообще была реализована
сейчас компании пытаются угадать мнение пользователей об удобстве, передают это мнение программистам, и дают средства реализовать мысли программистов с учётом таких потребностей. Средства разные — от пожертвований и зарплаты до дополнительной рабочей силы
no subject
Date: 2011-03-31 12:44 pm (UTC)А это может быть только если неправильно выбрана архитектура системы.
Система с правильной архитектурой должна легко адаптироваться под представления об удобстве любого человека, который правильно понимает предметную опбласть данной системы.
no subject
Date: 2011-03-31 12:53 pm (UTC)no subject
Date: 2011-03-31 01:01 pm (UTC)О понимании задач может идти речь только в том контексте, что пользователю должно быть достаточно легко понять, какую терминологию для предметной области использует данная программа, и как с помощью этой терминологии сформулировать его, пользовательские, задачи.
И я не знаю для этой цели более мощного средства, чем хорошая архитектура (терминология которой совпадает с наработанной веками в данной предметной области). Как правило, хорошая архитектура позволяет четко ограничить кусок, которого данной программе не хватает для решения данной задачи, и легко его дописать таким образом, что остальные пользователи данной программы не возмутятся тем, как это туда вкручено, и включать этот кусок в общий репозиторий кода.
А вот задачу расположения кнопок в GUI правильная архитектура должна решать. Поскольку должна позволять легко перелопатить GUI с трудозатратами на несколько порядков меньшими, чем написание основной фукнциональнсти.
no subject
Date: 2011-03-31 01:28 pm (UTC)no subject
Date: 2011-04-01 06:43 am (UTC)тогда ряд приложений просто никогда не обретёт опенсорсную инкарнацию.
пример из моей профессиональной сферы: спуск полос. у простых приложений (например, плагин для Adobe Acrobat QI Plus, весит около полмегабайта) ценник стартует примерно с тысячи евро. более развесистые приложения (например, PrePS) в зависимости от могут стоить как автомобиль представительского класса. и это при том, что собственно алгоритм спуска полос весьма несложен по сравнению, скажем, с алгоритмом веб-сервера.
однако Apache есть, а вот опенсорсного аналога даже не препса, а хотя бы квайт импозинга нет..
no subject
Date: 2011-04-01 06:48 am (UTC)Это может быть либо верстальщик, которые выучился программированию в порядке хобби, либо программист, которому зачем-то понадобилось верстать газету.
Написал же Кнут ТеХ. Ровно для того чтобы самому верстать в нем свои математические работы.
Хотя в данном случае, может быть и никогда. Просто бумажная публикация отомрет раньше. Ну и хрен бы с ней.
no subject
Date: 2011-04-01 07:00 am (UTC)no subject
Date: 2011-04-01 07:57 pm (UTC)пока задерживают только сотни страниц текстов, написанных во всяких опенофисах за последние лет 7 :(
no subject
Date: 2011-04-01 08:31 pm (UTC)1) убогая модель верстки (коробки - это, конечно хорошо, но мало и неудобно. А более сложных фигур не завезли)
2) подлежащий язык императивный (латех эту проблему частично решает, но все же одна команда может сказаться аж в другом включенном файле)
3) верстка восходящая (сверстали абзац... страницу... А надо перебирать варианты и выбирать первый, укладывающийся в некую метрику)
А замены адекватной нет и не предвидится. Не считаться же таковой xsl:fo
no subject
Date: 2011-03-31 12:35 pm (UTC)> Им важно, что проект не тухнет на хостинге, в буквальном смысле никому не нужный при всей своей самосогласованности.
Если вы вкладываете в понятие 'успешно развиваться' смысл 'иметь много коммитов и иметь перспективу иметь много коммитов', то это метрика к метрикам успешности, и, особенно, качества проекта ортогональная. И, к слову, эти коммиты отнюдь не обязательно будут вести изменение функционала в сторону, удобную конечному пользователю. Что несколько противоречит моему пониманию 'успешного развития'.
no subject
Date: 2011-03-31 12:46 pm (UTC)более того, весь тред я пытаюсь показать, что не умереть в развивающемся и меняющемся мире — это уже хорошо, немногие проекты способны хотя бы на такое развитие. Правильность и удобство тут вообще ни при чём.
no subject
Date: 2011-03-31 01:07 pm (UTC)Вовремя умереть способно ещё меньшее количество проектов. БОльшая часть либо откровенно не нужна, либо пережили свое время и должны умереть - но живут по иннерции.
А правильность и удобство как раз очень даже причем, потому что приветствовать развитие вообще, а не развитие в сторону увеличения удобства могут разве что садисты.
no subject
Date: 2011-03-31 03:17 pm (UTC)no subject
Date: 2011-04-01 07:04 am (UTC)Т.е. живому проекту развиваться не обязательно. Необходимо обновление конфиг-файлов и иногда портирование на новые архитектуры/релизы библиотек, что в грамотно сделанном проекте занимает ничтожное время и может быть сделано любым мало-мальски заинтересованным человеком.
no subject
Date: 2011-04-01 09:10 am (UTC)не знаю, меняются библиотеки, меняются даже стандартные библиотеки языков, какие-то библиотеки забрасываются — риск всё-таки заметный. Впрочем, это моя субъективная оценка, на которую повлияло то, что я пользуюсь как минимум одним заброшенным проектом — Revelation. Форкать его форкают, но разбираться, который из форков нужен, дело долгое. Думаю, заменять пакеты в дистрибах на форки — дело ещё более долгое.
no subject
Date: 2011-04-01 08:32 pm (UTC)no subject
Date: 2011-04-02 06:05 am (UTC)no subject
Date: 2011-03-31 05:07 pm (UTC)оно говорит нам что UNIX-way умрёт скоро скоро.
если программы будут настолько просты что не требуют сто говнокодеров, то эти программы умрут.
простые программы вымрут.
и возразить нечего.