Category: it

Category was added automatically. Read all entries about "it".

Кое-что об этом журнале

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

Немного о себе. Выступаю под псевдонимами Doctor Z (в ЖЖ, псевдоним появился по причине того, что когда-то иностранные коллеги и знакомые действительно именовали меня доктором, благо аналог Ph.D. имеется), и Александр Рубер (писательский, фамилия взята из латыни и по ней можно догадаться о моих политико-экономических пристрастиях). Сменил не одну профессию, сейчас работаю в области разработки программного обеспечения. Пишу фантастику для себя и читателей.

Журнал служит:

Во-первых, для публикации мыслей, пришедших мне в голову его владельцу и которые я счел достаточно важными, чтобы ими поделится, а также для чтения и обсуждения важных мыслей других. Просто хроники (дневника) здесь, скорее, всего, не будет, а крупные эссе и очерки будут дублироваться на "Самиздате".

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

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

Во-вторых, я пишу научную фантастику (под псевдонимом Александр Рубер). Тексты размещаются на сайте "Самиздата" и на моем сайте, здесь публикуются только объявления. Комментировать можно и здесь, и на "Самиздате".

Основные произведения:

"Звезда, которая никогда не заходит". Роман, социальная и в то же время «твердая» научная фантастика - мир будущего, в котором как автору, так и, как я надеюсь, многим другим хотелось бы жить. Финалист конкурса НФ-романов "100%-ная фантастика". Мой первый литературный опыт, вероятно, будет переписан (но когда - не знаю).

"Вокруг света с Красной звездой" (рабочее название). Новый роман - продолжение "Звезды, которая никогда не заходит", пока еще в процессе написания и редактирования. Тот же мир, те же герои (предыстория - в "Звезде, которая никогда не заходит" и рассказе "День на экваторе"). В процессе написания, размещается по главам.

Рассказы, в том числе "День на экваторе" (продолжение "Звезды, которая никогда не заходит") и "Молчание призрака".

ZFS vs. mdadm для NAS

Вопрос сугубо технический, к тем, у кого есть опыт работы с тем, что указано в теме. Через год после замены диска я все-таки собрался купить второй такой же и устроить зеркало, но конфигурация теперь другая. Эти два диска будут работать в отдельном маленьком сервере - фактически NAS, торрентокачалка и другие мелочи. Рабочий компьютер больше 90% времени проводит под Windows, а иногда вообще выключен/спит. Зеркало на 4 терабайта, больше двух дисков я ставить не буду. Железо сервера - ASRock J4105B-ITX с 8 гигабайтами памяти (память можно и добавить, вопреки документации 16 гигабайт прекрасно работают, но она без ECC, разумеется). Операционка - Debian. Нужен доступ по CIFS (ну и SFTP) со всего - Windows, Linux, телефон, планшет и Smart TV на Android. Нагрузка небольшая, внешний клиент, фактически, одновременно будет только один.

С софтовым RAID в Linux я дело имел, с ZFS - нет. Интересует не только защита от полного отказа одного диска (тут-то все просто, один диск выпал, массив поднялся на втором), но и постепенного осыпания (что бывает намного чаще). Правильно ли я понимаю, что ZFS в этом смысле лучше?

План действий таков:

- Поставить новый диск, создать на нем degraded массив (зеркало, но из 1 диска), скопировать данные с имеющегося диска, отключить второй (имеющийся) и заставить поработать новенький массив недельку. Если свежекупленный диск решит помереть сразу - сдам по гарантии, бэкап на втором диске.
- Подключить второй диск и дать массиву синхронизироваться. Вероятность сбоя проработавшего неделю нового диска в процессе, по-моему, минимальна.

С mdadm я такое проделывал неоднократно, включая перенос / без отдельного /boot (не надо это повторять). Можно ли провернуть такое с ZFS (массив не загрузочный, система на отдельном SSD)? Бэкапить куда-то еще 4 терабайта проблематично.

Кому в США жить хорошо

Читаю с утра новости на РБК и вижу заголовок: "Павел Дуров назвал семь причин не переезжать в США". Заинтересовавшись, открываю и вижу аннотацию:

"Основатель Telegram Павел Дуров посмотрел фильм Юрия Дудя о Кремниевой долине и рассказал о причинах не переезжать в США. Среди недостатков он назвал высокие налоги, плохое здравоохранение и жесткое законодательство"

Заметка - краткий пересказ вчерашнего поста Дурова в его блоге: "Семь причин не переезжать в Долину". Оригинал, как оказалось, стоил того, чтобы его прочитать.

Collapse )

Жизнь программиста

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

Итак, представьте себе очень большой, сложный и старый проект. Пусть он будет программно-аппаратным. Первоначальные цели, технические требования, равно как и первые варианты исполнения давно забыты и полностью утрачены. Условия использования и, соответственно, требования постоянно изменяются. В то же время очень многие старые, примитивные версии до сих пор используются и все их нужно поддерживать, поэтому требование обратной совместимости незыблемо. Менять технологии нельзя. Никакого предварительного тестирования, code review и прочих облегчающих жизнь подходов нет - любое изменение сразу попадает в продакшен. Если в боевых условиях изменение работает плохо, оно выбрасывается, берется предыдущая версия (которая, как и множество еще более старых, продолжает использоваться) и снова правится. Соответственно, все изменения, имеющие шанс на практическое применение, должны быть работоспособными. Никакой рефакторинг невозможен. Многие унаследованные компоненты в новых версиях начинают использоваться в совершенно отличных от первоначальных целях путем постепенных переделок и добавления изощреннейших "костылей". Старые и более ненужные части иногда постепенно исчезают из новых версий, а иногда остаются, потому что про них все забыли. Документации никто никогда принципиально не вел и не ведет. В общем, использование всех наихудших практик сразу и полное отсутствие надлежащего управления проектом.

И так почти четыре миллиарда лет.

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

"Выгорание" и отчуждение

Открываю с утра ленту Geektimes и вижу статью про то, как человек выгорал, ненавидел свою работу (или был равнодушен), но потом научился какой-то хитрой магии и все у него стало хорошо (при этом, что характерно, он не раз бывал начальником). Работал он программистом, профессиональное выгорание которых становится темой все большего и большего числа статей. Но до сути они пока не докапываются.

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

Collapse )

Canon LBP-1120 в Debian

Просто на тот случай, если вновь потребуется мне или кому-то еще: действительно работающая инструкция по установке принтеров Canon LBP2900 и других в Debian.

Применима для принтеров LBP-810, LBP-1120, LBP-1210, LBP2900, LBP3000, LBP3010, LBP3018, LBP3050, LBP3100, LBP3108, LBP3150, LBP3200, LBP3210, LBP3250, LBP3300, LBP3310, LBP3500, LBP5000, LBP5050, LBP5100, LBP5300, LBP6000, LBP6018, LBP6020, LBP6200, LBP6300, LBP6300n, LBP6310, LBP7010C, LBP7018C, LBP7200C, LBP7210C, LBP9100C, LBP9200C. Написана, судя по всему, для Debian 9. Мной проверена в Debian 10 64-bit с принтером Canon LBP-1120 (раритет, но используется нечасто и совершенно исправен).

В инструкции сказано:

"Независимо от используемой архитектуры необходимо устанавливать драйвер для архитектуры x86, потому что драйвер для архитектуры x86-64 не работает - задания становятся в очередь, но не отправляются на принтер. Были испробованы все доступные способы."

Я не стал проверять и добавил архитектуру x86, как рекомендуется. Принтер работает совершенно нормально (при установке по всем другим виденным мной советам или глюки, или вообще ничего не работает). Зависаний не было.

Про ИТ

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

Традиционное, "материальное" (точнее, вещественное) производство при капитализме становится (в среднем) все менее и менее прибыльным. Рост органического строения капитала и уменьшение нормы прибыли с течением времени неизбежны и, даже если отдельные капиталисты не имеют представления об этих законах, они ощущают их на собственной шкуре. И здесь появляется производство "информационного продукта", "интеллектуальной собственности" и тому подобное. Важно не название, важно то, товар (капитализм делает товаром все) создается в первую очередь умственными усилиями наемного работника. Сырья нет, стоимость средств производства очень невелика, особенно если сравнивать ее с другим хай-теком, вроде производства микропроцессоров. Да, рабочая сила этих специальностей недешева, но органическое строение очень низкое и это с лихвой искупает высокие зарплаты программистов и прочих. (Да, разумеется, наемные работники этой сферы в подавляющем большинстве своем являются самыми что ни на есть настоящими пролетариями. Доказывать этот тезис я не буду, про него достаточно сказано до меня.) Неудивительно, что в конце прошлого века капитал ринулся в эту сферу так, что надул пресловутый "пузырь доткомов". Пузырь лопнул, но отрасль осталась, и выяснилось (на самом деле знающим людям это было известно раньше), что в ней далеко не все так радужно - и для капитала, и для пролетариев. Закон соответствия производственных отношений характеру и уровню развития производительных сил неумолим, устаревшие отношения нельзя приспособить к переросшим их производительным силам. Противоречие проявляется снова и снова.

Collapse )

Страсть к изменениям

Проклятое поветрие "опенспейсов" добралось и до нас, но в этом посте я в основном будут писать не о нем. С "опенспейсами" все ясно, в первую очередь это желание запихать как можно больше наемных работников в как можно меньшее и как можно более дешевое в организации пространство. Ничего нового, продолжение традиции устройства фабричных цехов еще во времена Маркса и Энгельса. Интересно другое.

Collapse )

Добрались

Долгое время я привык к тому, что проприетарные программы следует обновлять, только когда это совершенно необходимо, поскольку ради прибыли (опосредованно, усилиями маркетологов, дизайнеров и прочих) ломается все, что только можно и особенно то, что нельзя. Поскольку я уже много лет использую Linux в качестве основной системы, для меня это не так актуально. Но в последнее время "оптимизаторы" и "улучшатели" добираются и до open source.

Вышедшая недавно новая версия Firefox 57 - это натуральная катастрофа. Если раньше у меня стояла последняя версия Firefox с официального сайта (а не из дистрибутива Debian) и было настроено автообновление браузера и расширений, то теперь пришлось все менять. Из-за того, что старый API для расширений отключен, работают только те, для которых есть новые версии. Для двух очень важных для меня расширений, No Squint Plus и friGate, новые версии как бы есть, но они не работают. В результате пришлось откатится на ESR-версию 52.5, откатить расширения и явно запретить обновления, потому что расширения упорно хотят обновиться при первом удобном случае.

В общем, браузер, которым я начал пользоваться, когда он еще не был переименован в Firefox (а был Firebird, то ли 0.6, то ли 0.7), окончательно убит. Пока буду пользоваться ESR-версией, а потом, видимо, переберусь на Pale Moon или еще куда-нибудь.

Про конкуренцию, информацию, стандартизацию и так далее

Мысли на тему конкуренции в сфере создания информационных продуктов (в самом широком смысле), стандартизации, децентрализации и прочего появились у меня давно, а повод их записать нашелся, когда я делал перевод для нового номера "Буйного бродяги" (он уже готовится!) и обнаружил похожие идеи в переводимом тексте. Такое согласие (а не совпадение, оно не случайно) ожидаемо, поскольку логика рассуждений неизбежно ведет в оном направлении.

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

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

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

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

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