Pull to refresh

Comments 84

Всё, что описано в статье — это прям на любой должности программиста в большой компании, у которой свой IT отдел. Мне кажется, человеку просто надоело тратить личное время на всё это. Появились дети и приоритеты сместились в сторону семьи, поддержания здоровья и тд…
Да нифига.
Пакеты для других современных дистрибутивов, например, ArchLinux (PKGBUILD), Fedora/CentOS/RedHat (RPM SPEC), можно создать достаточно быстро, все директивы документированы и структурированы, документация подробная и понятная, с примерами. Поддерживать такие пакеты тоже несложно. Инфраструктура у этих дистрибутивов вменяемая: можно сообщить авторам пакетов о проблемах лично, или удобно и быстро создать баг для пакета. Это можно сделать с любого компьютера.

Для сборки пакета в Debian существует несколько утилит, оберток. Найти нормальные инструкции по созданию пакета сложно, полноценной и полной документации нет, всё разбросано по разным местам, написано в разное время.
Инфраструктура в Debian практически не меняется. Значительное изменение, произошедшее в последние годы — переход к salsa.debian.org (GitLab, конец 2017). Добавить сообщение в багтрекер можно только через почту, а сообщить о спаме в багтрекере можно только через веб-интерфейс.
Чтобы сообщить об ошибке в пакете, нужно (по-хорошему) создавать сообщение об ошибке с того компьютера, с которого эта ошибка наблюдается, через специальную программу, которая сформирует email-сообщение. Тот ещё квест, если у вас Debian установлен в виртуальную машину, без сети.

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

А почему так получается? Если люди признают, что неудобно — почему не становится удобно? Слишком большое комьюнити? Большая кодовая база и организаторы не хотят резких изменений? Инерция возраста большинства этого комьюнити? В чём причина, с вашей точки зрения?
вот мой любимый постер на тему оптимизации процессов =) мне кажется он все объясняет =)

Причина в отсутствии воли к изменениям у кого-то, кто всем командует.
Недавно объяснял коллеге что нужно для качественного рефакторинга — время, полномочия, видение результата и воля.
Если чего-то не хватает, то лучше не начинать.

Под волей я понимаю решимость довести дело до конца, добиться результата, несмотря на необходимость чем-то пожертвовать.
Причина в отсутствии воли к изменениям у кого-то, кто всем командует.
Всё гораздо хуже, чем вам кажется: там никто не командует. Почти все важные решения, по конституции, должны приниматься консенсусом, что приводит к затрате дикого количества времени и сил.
Да нифига.
Пакеты для других современных дистрибутивов, например, ArchLinux (PKGBUILD), Fedora/CentOS/RedHat (RPM SPEC), можно создать достаточно быстро, все директивы документированы и структурированы, документация подробная и понятная, с примерами. Поддерживать такие пакеты тоже несложно.

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

Вообще, мне лично понравилась идея NixOS. Кажется, что это как раз логичный следующий шаг как для deb-based, так и для rpm-based дистрибутивов. А snap и подобные решения — например, как распространяется GitLab, в виде огромного пакета «всё в одном» — скорее выглядят костылями.

Пакеты для других современных дистрибутивов [...] можно создать достаточно быстро, все директивы документированы и структурированы, документация подробная и понятная, с примерами. Поддерживать такие пакеты тоже несложно. Инфраструктура у этих дистрибутивов вменяемая: можно сообщить авторам пакетов о проблемах лично, или удобно и быстро создать баг для пакета. Это можно сделать с любого компьютера.
Зашел написать примерно то же самое, но про порты/пакеты FreeBSD. :-) Портировать и пакетировать софт под неё имхо приятнее всего, на втором месте редхатовский rpm, позади (с довольно большим отрывом) — dpkg.

Справедливости ради, в прошлом с пакетами у фри были известные проблемы, но с появлением pkg(8) в 9.1 всё стало значительно лучше (read: примерно как у всех остальных).
Ну так я и не отрицаю. Но если вы из мира IT и не работаете в стартапе или какой-то компании, типа ЕПАМ, где каждый проект для нового заказчика можно стартовать с нуля, то вы столкнетесь с бюрократией, устаревшими технологиями и неудобными архитектурой, инструментами и тп. Я имею ввиду, что всё перечисленное в статье у него было и 5 лет назад. За 5 лет никуда не сдвинулось. Но понять, что оно никуда не двигается и не развивается можно и за 2 года, а разработчик там сидел 10 лет. Также, как и много других разработчиков в крупных компаниях. Поэтому, как мне кажется, причина ухода другая, описанная мной в первом комментарии. А статья — это просто попытка сдвинуть хоть как-то всё это с места, раз уже ушел.
И что хотел подчеркнуть автор написав, в начале заметки, что со встречи он уехал на велосипеде?
По-моему, в английском слово «велосипед» не используется для обозначения самопального решения давно решённой проблемы, но зато в русском переводе появляется дополнительная ирония :)

В английском используется для этого слово "wheel" ("колесо").

«Reinvent the wheel» — да, но я не видел, чтобы использовалось в этом смысле как отдельное слово, в духе «Deploy is done by some ugly wheel written in bash». Так можно?
Не знаю… я не эксперт в английском, просто знал про выражение «to reinvent a wheel».
Мне кажется, вы в данном случае имеете в виду не велосипед, а костыль. Велосипед — не обязательно плохо, это просто применение чего-то самодельного вместо уже придуманного и проверенного.
Зато уже есть такой формат:
Wheel — это современный формат распространения пакетов в Python среде, который пришел на замену eggs.
Возможно, что он ездит на велосипеде?
Или что он побыл один — но это уже, что называется, навеяло.

Я кстати из оригинала статьи не понял — имелся в виду все таки велосипед или мотоцикл, тут надо бы провести исследование расстояния между местом проживания автора и Цюрихом

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

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

Когда это когда-то было? Потому что даже тогда, когда эта последовательность была в самом деле важна, на интернете (в т.ч. в официальной документации) была куча примеров. Теперь же, когда эта последовательность делается автоматически через dh, важно только знать, в какой конфиг что написать. Как правило, для пакетов, у которых апстрим нормальный, debian/rules может выглядеть так:


#!/usr/bin/make -f

%:
    dh $@

Это когда-то было в 2014 году.


Насколько я помню, как минимум для начала надо было сказать dch -i и написать changelog в специальном формате. Ну и rules там были похитрее чем dh $@.

Это статью должны прочитать все производители "отечественных ОС", участвующих в импортозамещении!


КВИНТЭССЕ́НЦИЯ:


Хотя выше я описал ряд конкретных недостатков, последний гвоздь в крышку гроба — это отсутствие позитивного прогноза на будущее.
Наверное, пора кому-то форкнуть Debian. Но не добавлять свистоперделок, а поднять просто хорошую инфраструктуру.
А разве мало поделок на ее основе? Полноценный форк мало кто сможет вывезти, судя по описанным сложностям…
UFO just landed and posted this here
Да это понятно. Но форки обычно кучу всего меняют, добавляют новый UI, стараются как можно быстрее собирать пакеты и так далее. Но нет такого же стабильного, но не через одно место организованного форка :)
UFO just landed and posted this here
Михаэль положительно относится к systemd, но при чём тут systemd? Речь об инфраструктуре проекта, а не о компонентах дистрибутива.

А что там у Ubuntu?
Есть вебинтерфейс для багов
Есть ppa где можно создавать репозитории
Может стоит присмотреться разработчикам Debian?

Ubuntu собирается из Debian Unstable, без него она просто не сможет существовать.
UFO just landed and posted this here
UFO just landed and posted this here
А у вас была необходимость собирать пакеты «правильно и канонично»? (Под этим я имею ввиду когда пишется debian/rules а потом все собирается при помощи dpkg-buildpackage -us -uc)

Просто, если делать это для внутренних нужд, то шаблон control.in, куда подставляются нужны значения версий, posints/postrm скрипты если нужны, директория с деревом файлом + fakeroot dpkg-deb --build и готовый пакет. Вроде совсем небольно. Можно еще fpm использовать, но если нет необходимости собирать пакеты под другие дистрибутивы, то какого-то особого преимущества он имхо не даст.

А если совсем «для себя», то можно checkinstall использовать.
UFO just landed and posted this here
Мануалы самого debian были или частично неверными, или частично устаревшими.
А разве это не везде так?
UFO just landed and posted this here
Верю.
Про какую-то другую программу или пакет (не помню, что это было) я в её документации читал, что она развивается так быстро, что свежей и полной документации не будет никогда.

Пожалуйста, не занимайтесь переводами.


Для переводчика, как и для программиста, очень важно понимать, что он пишет. У вас, к сожалению, это понимание отсутствует. Вы переводите механически, не понимая смысла получившейся фразы на русском языке. В итоге переводимое предложение полностью теряет всякий смысл, как например "Я ценю то, что каждый проект отличается". Если у вас не возникает вопросов к этому предложению, то пожалуйста, не занимайтесь переводами.

Мой традиционный вопрос — на какой дистрибутив стоит перебегать, если даже Дебиан сдулся?
Ой не знаю, этот дистрибутив сделан с нуля, и ему всего несколько годиков. Насколько он надёжен по сравнению с Дебианом? Сколько процентов пользователей линукса его используют? Сторонние пропертарные софтины вроде скайпа или тимвьюера под ним тестируются производителями и реально работают? Есть ли отзывчивое комьюнити? Поддержка кодировок реально работает или сделана «на отвали»? И ещё сотня аналогичных вопросов к дистрибутивам-новичкам.
Rhel/centos если не напрягает замороженный на 5 лет код.
opensuse вроде тоже пока живет.
Ubuntu чтото при обновлении ломатся часто стал.

Оттуда не то что мейнтейнер, оттуда недавно основатель ушёл  : )                         /s

UFO just landed and posted this here
Вести рейтинги. А линуксовое комьюнити даже не может собрать реальную статистику популярности по дистрибутивам…
отсутствие телеметрии — чуть-ли не главный плюс линуксоводов ;)
а при ее отсутствии, достаточно сложно собрать статистику, да…
Вот ведь проблема-то. Ну опрос что-ли провели бы. А user-agent смотреть не пробовали, хотя бы на том же Хабре?
Вы серьезно предлагаете на все серваки поставить юай, открыть им доступ в инет, и всем дружно зайти на хабр? )))
И даже не считая серверы (ну, вот, допустим, нас интересуют только физические юзеры), лазящие по инету. Причем юзеры, которые НЕ меняли информацию юзер агента и НЕ скрывали ее.
Смотрим на на предмет что там в том том агенте бывает:
* Linux x86_64
* Windows NT 6.1; Win64
* Macintosh; Intel Mac OS X
* iPhone; CPU iPhone OS 10_3_1 like Mac OS X


Судя по примерам, единственный случай когда вы достаточно четко сможете понять что за система у пользователя — это мобильный сафари (вообще-то, вроде, андроиды тоже пишут довольно подробно, но их миллионы, за всех сказать нельзя). Остальные ограничиваются битностью и семейством.
UFO just landed and posted this here
Хм…
Если посмотреть на тему статьи — нет, я не призываю оставаться исключительно в ее рамках. Разработчик Дебиана — вполне действенный фидбек для повышения собственной самооценки. Я полагаю, в жизни довольно немного фидбеков такого уровня.
UFO just landed and posted this here
я не могу проголосовать рублем или рейтингом за...
Это правда.
Но насколько я понимаю (я не являюсь ни разработчиком опенсурса, ни вообще разработчиком, это вводит определенные коррективы для моего понимания), разработчиками опенсурса становятся по очень разным причинам, и немалую роль в этом списке причин играет то, что здесь можно делать продукт «для себя», а не для унылого менеджера на унылой работе. Эрго, когда кто-то пытается (в глазах разработчика) заместить виртуальную вакансию унылого менеджера и влиять на решения — он может столкнуться с серьезным сопротивлением. Даже если, повторюсь, все это происходит исключительно в глазах разработчика.

Я сталкивался с таким явлением в некоммерческих организациях, и не сказал бы, что это был вдохновляющий опыт.
UFO just landed and posted this here
Любопытная идея, кстати: по крайней мере мне нравится. Такой целевой донат на фичу.

Хотя конечно, разработчик, готовый за 200 долларов и разобраться в программе, и код доработать вызывает некоторый трепет в помыслах…
Зря.
Во-первых — все еще есть страны, где 200 долларов это нормально, для фичи которую не надо делать годами )
во-вторых — есть люди, которые могут что-то сделать просто потому что могут. И немного денег на пиво в качестве дополнительной стимуляции что б чуток улучшить прогу который ты сам пользуешься (а собственно, в дебри гитхаба, именно за тем и лезут, что б пофиксить что-то что не нравится, или скопировать себе что нравится) — им будут просто приятны.
А вот в-третьих — эти кадры из пункта 2, очень часто обламываются что-то делать, из-за всех выше по теме перечисленных причин ) А если к этим причинам, еще добавится геморой в виде общения с налоговой на тему дополнительных доходов…
все еще есть страны, где 200 долларов это нормально, для фичи которую не надо делать годами )
Именно.
Как я уже отметил, я не разработчик, но шуточки про индусский код мимо меня не прошли.

Впрочем, с моей стороны это тоже была попытка пошутить. Если неудачная — приношу извинения.
Для того контингента который вы имели ввиду, 200 уе, это месячный доход. Если точнее — то это высокий месячный доход.
Но остановятся они на пункте — как войти в гитхаб, так что все норм )
Вы меня утешили :)
UFO just landed and posted this here

Есть уже такой: BountySource. Как раз то что тут обсуждается:


  • есть список фич
  • за них можно голосовать рублём
  • можно добавить свою фичу
  • кто смог и сделал — получает плюшки

А может и не один (нужно отфильтровать по тегу donation).

UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
Разве проблема версионирования всякого инфрастуктурного софта(БД, веб сервер etc.) не решается Докером?

А вобще, вопрос по прежнему весьма холиварный, и даже никаких причин слезать с Дебиана пока не вижу. Я в поисках самого удобного дистрибутива остановился на Manjaro. Пол года сидел с KDE, уже пару месяцев с XFCE(Так и не решил какой DE выбрать, Cinnamon из Минта кстати тоже классная вещь).
Путь был Debian => Kubuntu => Mint => Manjaro, с параллельной пробой elementaryOS. В принципе проблемы(шрифты, драйвера) возникали только в Debian, у всех остальных дистрибутивов с этим всё сразу было отлично. Manjaro выбрал за Rolling Release(и ещё возможность юзать систему во время установки: ))
UFO just landed and posted this here
А он разве сдулся? Тут как раз пишут, что такое положение у разработчиков уже давно, но существует же проект все эти годы. Думаю, если вы не пакетируете пакеты, то проще всего оставить как есть.

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

Я поставил Manjaro, он на основе Arch, сильно недоволен. Везде какие-то глючки по-мелочи, кодировка кое-где поломана, после апдейта не даёт делать некоторые вещи без перезагрузки, ну совсем как Microsoft. Add/remove software поломался через неделю, pacman работает. Проблемы с регулировкой яркости и громкости.

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

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

Ну тогда вам на вин10 или макос ведь. Проблем нет, выбирайте, я не против. Но меня лично привлекает то, что я описал)

Ну почему? Линукс, но надёжный и работающий из коробки. Если Убунту научатся не увеличивать число багов с каждым релизом, а уменьшать, то будет счастье.
Не получится. Ubuntu, как и все остальные дистрибутивы, создаются из частей, которые делаются без особого плана — потому проблемы на стыках неизбежны и решать их, по большому счёту, некому. Кроме, собственно, пользователя.

То есть если не хочется ни в чём разбираться, а хочется просто пользоваться, то остаются только Android и ChromeOS — а это, как бы, уже совсем-совсем другая история.
Теперь понятно, почему докер взорвал рынок — запаковать в докер большого ума не надо, в отличие от запаковки в deb/rpm. Продолжаем наблюдение за развитием технологий…
Скорее не ума, а геморроя… Если один способ быстрый и удобный, а второй медленный, нкудобный, да ещё и требует, чтобы я как следует потратил время в поисках документации, то что же я выберу?
Вендоринг — решение проблемы до тех пор, пока вендоринг не становится проблемой.
20 лет назад я пытался уйти с маздая на линух.
Поковырял его годик — решил что сыроват, подожду.
Прошло 20 лет — пожалуй все еще сыроват, посижу ка пока еще на Win NT ver X.X
Sign up to leave a comment.