Мысли
June 25

О процессе разработки

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

В конце есть компиляция моих обиженных ответов на некоторые ситуации, из которых и родился этот креатив.

Чёрная книга разработчика

во это я загнул бля!

Я признаю, что есть полуебучие выродки с сайта ебаное айти (и прочих подобных ресурсов), у которых настолько в заднем проходе зафиксировалась боль от вката/пердолинга/запиливания айтишечки (и я нихуя не шучу, геморрой и прочие жопные веселья сидячих работ это те ещё приключения), что они максимально АГРОХЕЙТЯТ всех мамкиных пердоликов и соевых смузихлёбиков, НО (!!!)
Они познали боль, и преисполнились в ней. И потому прислушаться стоит, включив голову.

На работе у тебя есть чёткие обязанности и зона ответственности. Разные хитрые пидарасы всегда будут пытаться тебя наебать, и не только на работе. Включая перекладывание ответственности, вызывание чувства вины, манипуляции, прогоны "мы команда - мы семья" и так далее.
Говнокод? "Слышь денег/человекочасов давай, это подзалупная хуета, а не код". Не дают денег? Ты знаешь себе цену. Готов? Работай. Не готов - пиздуй нахуй, за лучшей жизнью.
Как появился этот говнокод? А ебет ли тебя, друг мой? Твоя ли это зона ответственности, и готов ли ты на себя взять эту ношу? На ком везут, на том и едут. Впишешься - ты знаешь про инициативу и инициатора. В более-менее адекватных организациях, где начальник осознает, что пустующая ниша внезапно заполнилась самостоятельно вот тем чудиком, и очень даже неплохо; и подкинет ему денег или свободы для предотвращения предполагаемого будущего выгорания aka когнитивного диссонанса от условий труда, их оплаты, отношения к чудику и т.д. - и тем самым закроет для себя некоторую боль по этой пустующей прежде теме. В них инициатива ещё может быть приемлема, особенно если тема качает - тебе и карты в руки. Да и bus factor в своём лице можно апнуть - это со стороны управления bus factor злая ебала, а со стороны исполнителей это необходимая самооборона, да и вообще Job Safety Driven Development епта!
В прочих же людоедских конторах - ты сам себе друг. Спеши медленно.

Обязанности.
Консультант - отвечает на тупые и не очень вопросы юзверов по прикладной теме автоматизации.
Аналитик - собирает потребности в: поддержке текущего / запиливании нового. Онализирует! Пиздит с людьми, мутит ТЗ.
Архитектор - сопровождение целостности системы. Детализирует ТЗ, впиливает его в информационные модели, прикручивает к текущей системе, чтобы ниче не наебнулось года через два.
Разработчик - исправление багов, реализация ТЗ от аналитика с архитектором. Мелкие приколдесы могут и без архитектора обойтись.
Тестировщик - тестирует по ТЗ и своему чутью вероятных последующих пиздюлин результат работы разработчика.
Девопс (опционально) - наладка автоматизации для ускорения процесса автоматизации (окак!). Чтобы ТЗ само запульнулось, архитектор лениво потыркал квадратики, разраб написюкнул пару строк, тестировщик потыкал, и всё это с минимальными прожатиями ебучих кнопочек и клавиш. Хуяк, хуяк, и готово.
Продакт-менеджер - пиздливое хуйло, пидарас, гандон. Не понимаю, нахуя они нужны. Если тыкать кого-то из участников выше, так для этого у них свои начальники есть, которые вопросы своих буратин решают, и это входит в их ПРЯМЫЕ должностные обязанности.

У всех выше чудесных "ДА ЧТОЖ ВЫ ТВОРИТЕ-ТО ПИДАРАСЫ" участников процесса есть, повторюсь, их начальники. В обычном режиме они не особо нужны, если налажен процесс, когда пользователи пишут свои писульки в какой-нибудь сервис-деск, оттуда их поедают консультанты и аналитики, далее при необходимости работают архитекторы, разрабы и тестировщики. При каких-то уникальных / экстренных случаях можно собрать дримтим с нужными людьми и куратором, который временно получает полномочия пенетрировать сверх нормы своих свежеиспечённых буратин (нет, идите нахуй, это не продакт менеджер, и это ВРЕМЕННАЯ залипуха). Конфликты / отказы / бздит вонюче в офисе - настучать начальству, и пусть большие дядьки яйками стукаются, это их заботы.

И нигде, ну вот НИГДЕ БЛЯТЬ НИГДЕ СУКА НИГДЕ НЕТ В ОБЯЗАННОСТЯХ - ПРИНОСИТЬ ПРИБЫЛЬ ХОЗЯИНУ. Ну вот блять нету такого! Это головная боль самых топов! Хочешь, чтобы твоя башка за них поболела? Не дохуя ли хочешь? Ебало не треснет? У тебя дело маленькое - делать своё грязное дело, и делать его достойно - чтобы налаженный процесс разработки его принял. Если ты сделал говно, и процесс его всосал и отправил дальше, и это продолжается неоднократно - есть ли твоя вина в том? Или это хуево процесс организован? Если кто-то другой стабильно делает говно - виноват ли в этом только он?
Настучал погонщику - твоё дело сделано. Всё остальное - его боль. Не примет меры - можешь сглотнуть и работать дальше. Можешь не работать.

Тебе платят деньгами. Бумажками социального статуса. Их можно обменять на разные приколы.
Чем тебе не платят: здоровьем физическим, психическим; временем, проведённым с собой, семьёй, в своих делах, в созерцании и многим прочим; счастьем; хорошим настроением; уверенностью в будущем; уверенностью в том, что твой код будет работать очень долго; уверенностью в том, что ты делаешь полезную работу; чувством, что тебя кто-то любит и нуждается в тебе; и многим прочим.

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

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

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

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

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

А блять работать свою работу ебучую. Изменять мир в цифровую сторону. Строго в рамках своих интересов обязанностей.

компилейшен моих утютю

https://t.me/reverb_neuron/1499 в некоторой шутливой форме часть позиции описана в этом посте и комментах

https://t.me/kadr_b0lt_Genona/804
Новость: "Сеньоры пишут говнокод, чтобы быть незаменимыми"

- коммент: "так делают пидоры. если в коде человека не может разобраться никто кроме него - этот человек пидор."

--- мой ответ:
Погонщиколахта в треде
Денег не жмоться, и любой код разберут
если в коде человека не может разобраться никто кроме него - этим другим платите мало/даёте им мало времени на разбор кода/етц

- коммент: "любитель наговнякать в треде. А как это потом будет поддерживаться - тебе по барабану. "плотите!""

--- мой ответ:
+2 забастовки этой погонщиколахте

Как это будет поддерживаться не мной, либо не моими текущими коллегами в команде – мне полностью по барабану. Если новый наёмник будет в состоянии разобраться с кодом, его труд будет достойно оплачен, и условия работы для него приемлемы – то в чём проблема?

Если не в состоянии – оплатите курсы текущему наёмнику/улучшите условия/поднимите зарплату. Или нового наймите.

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

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

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

Бабло в правильных размерах и обеспечение необходимых условий труда для работы над ЭТИМ, думаю, могут вполне охладить пыл негодующего.

Писать понятный для ВСЕХ код (а не только для вовлечённых в команду, с кем солидарен и един) – опция ОЧЕНЬ ПЛАТНАЯ, и нихрена не входит в стандартный функционал.

Жмоты внедрили в культуру программирования поведение: что давай пиши понятно дурачок, получишь значок, а ещё тебя выпнем сходу если что, и заменим без оглядки, да ещё и новый буратин возбухать на непонятный код меньше будет.

- коммент: "это потому, что ты пидор."

--- мой ответ:
У Вас какая-то обида на вашего жмота, что недостаточно выдаёт средств на покрытие диссонанса в ходе работы с непонятным кодом?
Или просто жмотская пропаганда въелась?

- коммент: единственное что должен код - зарабатывать/экономить деньги заказчика. если твой код этого не делает - это плохой код. всё остальное вытекает из вышесказанного. понятный код = экономия денег.

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

повидал уже таких чучел. "надо писать код понятный только тебе, чтобы к тебе на поклон ходили". в итоге всё, что чучело писало 2 года выкинули на помойку.

чучелу пофиг, ведь он стал писать код чтобы получать деньги, а не чтобы создавать прекрасное.

по твоим комментам видно, что твой код говно.

--- мой ответ:
Единственное, что должен делать код для меня – это быть настолько рабочим, чтобы мне давали достаточно денег и обслуживали условия труда.

В Вашем комментарии позиция нанимающей структуры (который зачастую в 99.99999% жмотская).

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

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

Если код чучела выкинули на помойку, значит это говно было, а не код. Насчёт ходить на поклон – те, с кем не солидарен, почему бы и нет? Пусть и ходят на поклон. Жмоты с наемника прибыль имеют, и нихеровую, и значит наёмник ещё обязан в жопу дуть погонщикам? Оставляя ещё понимаемый различными солидарными с жмотами (или просто ссыкливыми) уебенами код?

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

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

В Ваших терминах, где "ты пидор", будет вот так. Если ты не понимаешь мой код, то ты пидор. Я понимаю. Мои коллеги понимают. Кто не понимает – тот пидор.

- коммент: ты прикольный персонаж. скорее всего топишь за коммунистов. я угадал?

--- мой ответ:
Топлю за некоторые достижения условных коммунистов, в которых жмотов и сочувствующим им прокидывают через различные фаллосы.

С автоэлектрика прибыли не получаю. И вполне допускаю, что если автоэлектрик посчитает меня жмотом, и не будет считать себя солидарным со мной, то вполне может и начудить что-то подобное. Тем не менее, если его труд будет достойно вознаграждён, и чертежи, и прочее будет оговорено – то в чём проблема?

- коммент: да ты же прол.

--- мой ответ:
Пролетариа́т (нем. Proletariat, от лат. proletarius — «производящий потомство»[1]; «простонародный»[2]) — социальный класс, для которого работа по найму (продажа собственной рабочей силы) является по существу единственным источником средств к существованию[2]; общественный класс, который добывает средства к жизни продавая свою способность к труду, а не живёт за счёт прибыли с какого-либо капитала[3].

https://t.me/kadr_b0lt_Genona/1032
Новость: "Некоторые разработчики Amazon говорят, что их работа стала напоминать работу на складе"

[tl dr как бедненьких смузихлебов притесняют]
--- мой ответ:
Какой гадкий амазон, уволиться даже не даёт, если что-то не устраивает. Тираны!

https://t.me/kadr_b0lt_Genona/1098 Новость: Как разработчики убивают бизнес

--- мой ответ:
Перекладывание проблем с больной головы на здоровую. В ответственность разраба не входит подтирать попу его окружению. Если говнокод попал в прод – это не проблема разраба, это проблема процесса разработки вокруг него.
Рыба гниёт с головы.
Если начальник не справляется со своими обязанностями по управлению персоналом, то у него и разраб в единственном виде может нужную ему архитектуру протолкнуть, и говнокода накалякать, и тестировщиком за полставки побыть, и что угодно сделать в своих интересах. Задача начальника – это выстроить необходимую систему, которая защитит общую систему бизнеса, по получению прибыли, от таких негативных воздействий на неё, или минимизирует последствия.

Ну и не забываем, что начальник тоже человек со своими интересами, в том числе и по защите своей хатаскрайности, включая клепания подобных статей РАЗРАБИ_УИНОАТЫ!!!

- коммент: почему-то разработчики с таким мировоззрением очень обижаются, когда код не проходит fitness functions или они теряют возможность деплоить из-за нарушеного SLA 🙂

--- мой ответ:
чето не нравится в работе – можешь уволиться
не прошёл код – допиши, в чем проблема? денежки не за обидки платят, а за написание кода
у кодера функция написать код согласно ТЗ – в с ё!
помимо кодера есть консультанты, эксперты, аналитики, архитекторы, тестировщики, ну ещё девопсы иногда
и у всех их есть погонщики
зачастую разные роли могут совмещаться
есть задачи, где нужен любой код, лишь бы БЫСТРО, например разные инициализационные загрузки или тестирование идеи
есть задачи, где надо отлизать и вылизать со всех сторон код и всё вокруг него, иногда включая железо
"пусть кодер думает, у него башка большая" (и ответственность на себя возьмёт) - подход вот таких начальников хатаскрайщиков

- коммент: у меня в команде был долбоёб который заявлял "ну вы же окнули ПР".

ты тоже долбоёб, который не виноват, виноваты те кто проглядел? зарплату твою может тоже им платить вместо тебя?

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

--- мой ответ:
ну пусть заменяют кодеров, я-то тут причём)
Когда заменят – то всё так же на нейрокодера будут ответственность перекладывать? 😂
Типа НЕЙРОСЕТИ РУШАТ ВАШ БИЗНЕС!!!

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

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

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

--- мой ответ:
не можешь изменить — прими, можешь изменить — действуй

результат команды тебе психическое здоровье поправит? старость обеспечит? в кровать потащит? денег в карман насыплет? счастья навалит в штаны? по голове погладит? грамоту выпишет? по плечу похлопает?

твой погонщик мастер своего дела, так замотивировать