Байки из legacy
1 пост
1 пост
Подумалось тут про искусственный интеллект. Точнее, не про сам ИИ, а про пункт на многих контент-платформах о запрете генерации текстов с помощью LLM.
Это очень похоже на психологические тесты - они ведь тоже построены по усредненным моделям. Ну, знаете, серия утверждений в духе того, что среднестатистический человек имеет эмоциональную эмпатию в строго определенных пределах. А что делать тем, кто выбивается из этой «средней температуры по больнице»?
Давайте сравним. Как пишет обычный человек в интернете? Слова-паразиты, синтаксические ошибки, скачущая длина фраз. Мысль, как правило, не структурирована и излишне эмоциональна.
А как пишет ИИ? Слов-паразитов нет, запятые строго на своих местах. Вместо дефисов - правильные длинные тире (привет правилам русского языка), фразы ритмичные и выдержанные. Мысли четко структурированы, а углы сглажены, дабы не дай бог кого-то задеть.
И вот тут начинается самое забавное. Люди с развитым структурным мышлением - аналитики, программисты с большим стажем или, к примеру, люди с синдромом Аспергера - думают именно так. И мысли свои на письме выражают точно так же, как нейросеть. Ровно, логично, без лишней «воды».
Недавно ради эксперимента прогнал свой профиль через батарею тестов Гилфорда с визуальной корректировкой. Получилась забавная, но грустная картина. На одном полюсе - логика, аргументация и автономия на максимуме (выше 9.5 из 10), а на другом - эмоциональная эмпатия (0.5) и толерантность к пустой коммуникации (1.0) на абсолютном нуле. При этом дефицит эмоций мозг компенсирует чистым алгоритмом - высокой рациональной эмпатией (9.0). То есть правила вежливости и логика текста вычисляются головой, а не чувствуются «кожей». Тесты не дают точных значений - всем понятно. Но они дают понимание в каких пределах находится то или иное качество.
Итак. По сути, это сухой портрет высокофункционального аутичного профиля. И именно такой склад ума становится главной мишенью для современных систем модерации. Мозг просто физически очищает речь от хаотичного эмоционального шума, выстраивая безупречные причинно-следственные связи.
Знаете, сколько моих личных текстов на сторонних ресурсах из-за этого было удалено с пометкой «Модератор выразил мнение, что, вероятно, была использована генеративная модель»? Восемнадцать. 18 текстов, написанных полностью из головы, без единого промпта.
Получается негласный парадокс: хочешь писать и не улетать в бан - коси под «среднестатистического» человека. Делай ошибки, ломай структуру, искусственно добавляй хаос.
Но в этой погоне за чистотой контента есть и обратная, очень ироничная сторона.
Хейтеры могут не нервничать: я не открою никакой новости сейчас - фактически будет абзац от лица капитана "Очевидность" или адмирала "Ясен-пень".
Если попросить ИИ написать обычную статью, алгоритмы-детекторы ее раскусят. Но если попросить его написать текст с учетом жестко заданных человеческих характеристик (добавить легкую асимметрию, индивидуальные маркеры речи, ошибки), то после пары перегенераций детекторы уверенно скажут: «Это написал человек».
Вот и получается: живой человек с системным мышлением пишет как робот, а робот учится искусно имитировать человека, чтобы обходить запреты алгоритмов.
Ну слушайте. Лёха сидит, кофе пьет. Уже шестой наверное. На столе кружка с надписью "Мне нужен кофе и чтобы никто не трогал". А за спиной сервер гудит, как холодильник у бабушки в деревне.
И вот приходит к нему начальник. Довольный. Улыбается аж светится. "Лёха, - говорит, - я тебе помощника нашел! Full stack разработчик! Супер-программист! Курсы закончил, сертификаты есть". Лёха смотрит на него, а в голове уже песня играет. Ну та, про "бедный Луи, он ничего не понял".
Открывает начальник hh.ru. Вакансия Full Stack. Требования: 3 года, PHP, JavaScript, базы данных, архитектура. Через день — 1000 откликов. Тысяча! Это ж как будто весь стадион "Лужники" решил стать программистами.
Начальник думает — о, выбор богатый, щас найду Лёхе замену, а то он там со своим кофе сидит, смотрит на меня как-то странно. Заплатил за просмотр резюме. Потом еще заплатил. И еще. Как в казино, только выигрыша нет.
И вот приходит первый кандидат. Лёха кстати даже не знал, что начальник кого-то ищет. Сидел себе, писал код, радовался жизни. А тут такое.
Приходит этот "супер-программист". На вид — ну как все. Ноутбук с собой, глаза горят. Начальник говорит: "Лёха, вот, знакомься, это Петя, он тебе помогать будет". Лёха руку протягивает. "Привет, Петя. Рассказывай, что умеешь".
А Петя и говорит. С гордостью. "Я Laravel знаю. Могу модель создать консольно. Вот так — php artisan make:model". И делает рукой жест, как будто магию показывает. Лёха смотрит на это и думает — ну ок, модель создать это хорошо. А если модель сломается? А если данных нет? А если запрос упал?
И Лёха дает ему задачу. Простую. Ну для профи. "Петя, — говорит, — у нас тут форма обратной связи. Надо чтобы данные сохранялись в базу и письмо уходило менеджеру". Петя смотрит на задачу. Потом на Лёху. И говорит: "А... это не из курса. Там такого не было".
Стоят. Молчат. Только сервер за спиной гудит. И чайник у Лёхи закипает. Ну не на плите, а в душе.
А был у Лёхи случай. Давно. Пришел к нему заказчик, такой весь из себя бизнесмен. "Лёха, — говорит, — я сам команду набрал. Семь человек! Экономлю. По 50 тысяч плачу. Почти даром!". Лёха смотрит на него, думает — ну-ну.
Приводят этих семерых. Одна дизайнер, остальные — "full stack разработчики". Сидят в ряд, ноутбуки открыли, серьезные такие. Задача — рефакторинг кодовой базы. ТЗ есть. Расписанное, пошаговое. Для детей.
Лёха объясняет: "Вот тут у нас этот модуль. Надо переписать, чтобы быстрее работал". Семеро смотрят на него. Как кролики на удава. Один даже руку поднял. "А в учебнике этого не было", — говорит.
Через три месяца — всех уволили. Начальник тот приходит к Лёхе, глаза влажные. "Лех, — говорит, — а почему они не работают? У них же сертификаты!". А Лёха молчит, просто на кофе кивает.
Потому что семь человек по 50 тысяч — это не команда. Это семь человек, которым нужна инструкция, как дышать. А ТЗ — оно для людей, которые понимают. А если понимания нет — никакое ТЗ не поможет. Оно как Библия для атеиста. Буквы есть, смысла нет.
Лёха как-то сформулировал. У него вообще привычка — все раскладывать по полочкам. Потому что в голове если не разложить — каша будет.
Есть джуниор. Пишет код. Сказали "сделай" — сделал. Как робот. Ему нужна инструкция. Пошаговая. Как в IKEA, только без лишних винтиков.
Есть мидл. Пишет и контролирует. Может сам задачу разбить, другим раздать, проверить. Уже человек. Можно разговаривать.
Есть сеньор. Видит всю систему. Как будто в вертолете сидит. Знает, что через полгода сломается, и чинит заранее. Таких мало. Они как белые вороны. Только вороны черные, а эти — седые от стресса.
А курсы создают... ну не знаю как назвать. Называют "full stack". А по факту — "я слышал, что такое есть".
И вот начальник сидит, смотрит на 1000 откликов и не понимает. "Лёха, — говорит, — где они? Их же 1000!". А Лёха в ответ кружку поднимает, как тост. И молчит.
Потому что нормальные специалисты — они на hh.ru не сидят. Они в телеграм-каналах. Или в закрытых чатах. Им звонят. Или через знакомых. У них нет резюме. У них есть репутация. Люди знают, что они делают. И за ними очередь.
А на hh.ru — 1000 человек, которые прошли курсы. И все хотят 200 тысяч. Потому что им накурсобещали.
Лёха иногда цитирует классиков. Наверное, от безысходности.
"И опыт, сын ошибок трудных". Это Пушкин. И он прав. Потому что опыт берется не из книжек. Он из шишек. Когда ты накосячил, потом исправлял, потом не спал, потом снова исправлял. И запомнил. На всю жизнь.
А курсы учат правильно. Там нет ошибок. Только правильные ответы. Как в школе. А потом жизнь приходит и говорит — а вот так не работает. И человек в ступоре.
Линкольн говорил: "Не бойтесь совершать ошибки. Ошибается только тот, кто ничего не делает". Лёха с этим согласен. Настоящий профи — не тот, кто не ошибался. А тот, кто ошибался, понял, исправил и больше так не делает.
И сидит Лёха, вспоминает эти цитаты. И думает — Пушкин был бы хорошим программистом. А Линкольн — тот вообще бы сеньором стал.
Первое — не паниковать. Он тоже человек. Просто неопытный. Как щенок. Хочет помочь, но не знает как.
Второе — давать маленькие задачи. Конкретные. "Сделай вот эту функцию". Без архитектуры. Без проектирования.
Третье — проверять. Каждый чих. Каждую строчку. Потому что если не проверить, он напишет код, который сломает все.
Четвертое — если есть бюджет, нанять нормального. А не экономить. Семь джуниоров за 50 тысяч — это 350 тысяч в месяц, которые уходят в никуда. Лучше один сеньор за эти деньги.
Лёха вздыхает. Наливает еще.
Рынок переполнен "супер-программистами". Но нормального найти нельзя. Потому что нормальных мало. А "нормальных" — много.
Курсы делают свое дело. Создают иллюзию. Что можно за 3 месяца стать специалистом. Что можно зарабатывать 200 тысяч.
А потом Лёха сидит, правит их код. И думает — ну почему? Почему они не могут понять, что программирование — это не про кнопки. Это про мышление. Про то, как все работает внутри. Про то, что делать, когда все сломалось в два часа ночи.
И Пушкин был прав. И Линкольн был прав. Ошибки — это нормально. Страшно, когда ты не учишься на них.
А Лёха сидит. Пьет кофе. И думает — ну когда же это закончится. И еще думает — чайник бы не забыть выключить. А то уже который раз забывает.
Ну слушайте. Мужик взрослый. Дела есть дела. С документами там, с деньгами, с людьми всякими. Компьютер - ну инструмент как инструмент. Главное чтоб работало и не тупило. А то сидишь ждешь пока загрузится а оно крутится крутится и думаешь ну вот щас, щас... И так полдня может пройти. Но это так к слову.
И вот приходится общаться с этими... программистами. И заметил он одну вещь. Вроде говорят по-русски. А они как будто с другой планеты прилетели. Ты им одно, а они делают другое. И обижаются еще. Сидят там в своих углах, кофе пьют и тихо ненавидят. Кофе у них там какой-то специальный, в зернах, они его мелют сами. Ну ладно это не важно.
За эти годы вывел он пять фраз. Если вы их говорите - считайте что программист вас уже мысленно придушил. И знаете что? Мы сами виноваты. Потому что говорим ерунду а потом удивляемся. Как в анекдоте про охотника. Ну не суть.
Мужики, сколько можно? Он сам так Лехе говорит. Приходит к нему, такой: «Лех, сделай сайт. Чтоб красиво было. Понимаешь? Чтоб ну прям закачаешься». А Леха сидит, глазами хлопает, молчит. У Лехи там на столе еще стоит кружка с надписью "Мне нужен кофе и тишина". Он думает - не понял. А он понял. Просто не знает что ответить.
Потому что для Лехи «красиво» - это когда страница загружается за полсекунды. А для него это ну... чтобы как у людей. И вот начинается этот танец. Леха делает, он говорит «не то», Леха переделывает, он говорит «не то», Леха еще переделывает. И так пока он не устанет или Леха не взорвется. А Леха может и взорваться, у него там в углу стоит какой-то сервер гудит - может и правда взорвется.
Был у него случай. Заказал Лехе сайт для элитного алкоголя. Говорит: «Сделай хороший сайт». А Леха его пытает: цвета какие, настроение, стиль. А он ему: «Лех, ну хороший же, я сказал». Ну реально, думал он сам догадается. Стоит себе Леха такой умный, думает, щас все сделает.
Через неделю Леха звонит: «Сань, присылай фотки». Он говорит: «Щас, у меня человек есть который понимает, он подберет». Присылает. И там на главном баннере в разделе «Обязательно попробуйте» лежит девушка. На барной стойке. В платье которое платьем назвать сложно. Разрез такой... ну вы поняли. Сайт про коньяк и виски а там ночной клуб какой-то. И еще у нее в руке бокал, но налито туда явно не коньяк, а сок какой-то. Ну это я так, детали.
Леха звонит, голос такой спокойный-спокойный: «Сань, ты это... уверен?». А он ему: «Ну красиво же!». Леха молчит. Чувствует он что тот там ладонью лицо закрыл. А может просто кофе пьет. Хотя нет, чувствует.
Переделывали они это три раза. ТРИ! Потому что у него в голове одна картинка а у Лехи другая. А слова «красиво» - это вообще пустой звук. Это как сказать повару «сделай вкусно». А он не знает, любите вы пересоленое или нет. Или может вы вообще солить не любите. Ну в общем.
Теперь он Лехе так говорит: «Лех, давай конкретно. Шрифт вот такой, цвет такой-то, логотип слева, кнопки круглые». И все. Леха делает. И он доволен. И Леха не дергается. Хотя у Лехи все равно глаз дергается иногда но это уже привычка наверное.
О господи. Это он постоянно говорит. Ну правда, ему же кажется что он понятно объясняет. А Леха смотрит на него как на инопланетянина. Или как на того чувака который пришел в магазин и говорит «дайте мне чего-нибудь вкусненького».
И вот почему. Они с Лехой по-разному видят мир. Он видит бизнес. Клиенты. Деньги. Счета. Вот выставили счет, контрагент заплатил, все хорошо, можно идти пить чай. А Леха видит совсем другое.
Для Лехи «контрагент» - это строчка в таблице. С цифрами и индексами. «Оплата» - это поле которое называется payment_date или что-то там. Леха не думает про клиентов. Он думает чтоб база данных не сломалась. Чтоб связи не упали. Он вообще не знает что такое эти связи но Леха говорит это страшное слово. И еще там какой-то foreign key есть. Он спросил у Лехи что это, Леха сказал - ну типа ключ. И ушел. Ну и ладно.
И когда он говорит «ну ты понимаешь» - Леха начинает додумывать. А додумывает он не то что он имел в виду. Потому что Леха в другом мире живет. В цифровом. Там свои законы. И когда Леха сделает как понял - он злится. А Леха злится что он злится. Потому что Леха искренне старался. У Лехи вообще лицо такое, будто он всегда старается, но у него не получается.
Теперь он Лехе говорит по-другому. Раскладывает как для первоклассника. «Лех, вот здесь кнопка. Когда на нее нажимают - здесь должно появиться слово "Оплачено". Если не появилось - здесь красным цветом ошибка. Понял?». Леха кивает. И делает правильно. Потому что Леха увидел конкретные действия а не «ну ты понял». И все довольны. Ну кроме тех кто платить не хочет но это уже не к Лехе.
Ой, это его любимая песня. Он сколько раз Лехе так говорил. «Лех, ну чего ты там сидишь? Кнопку добавить - это ж на час». А Леха начинает дергаться. Глаза бегают. Бормочет что-то про базу данных про запросы про интеграцию с 1С. Он думает - отмазывается. А Леха не отмазывается, Леха реально переживает. У Лехи даже лоб вспотел.
А потом ему объяснили. Оказывается сайт - это как айсберг. Что вы видите сверху? Шапку, кнопки, картинки. А под водой - 50 файлов, база данных, логи, тесты, запросы. И все это друг с другом связано. Как провода в старой проводке. Трогаешь одно - все остальное сыпется.
Добавить кнопку - это не кнопку добавить. Это:
Базу данных поменять (потому что кнопка что-то сохраняет)
Запросы переписать
Формы обновить
Отчеты исправить
Проверить что 50 файлов не слетели
А если там 1С подключена... ну вы вообще не представляете что там начинается. Это как если бы вы попросили в хрущевке стену сдвинуть не трогая соседей. А соседи у вас там сверху шумят, снизу тоже, а вы со стеной...
И когда он говорит «на час» - Леха уже внутри себя все сказал. Леха понимает что это невозможно. Но объяснить ему это за минуту Леха не может. Потому что надо показать весь этот айсберг. А на это нет времени. Времени нет потому что надо кнопку делать. Ирония.
И знаете что происходит? Леха делает быстро. Спешно. Кое-как. И получается кнопка которая работает. Но через три месяца она ломает весь проект. Потому что ее делали как «быструю правку» а не как часть системы. И сидит он потом, смотрит на сломанный проект и думает - ну и зачем я торопил.
Теперь он говорит иначе. «Лех, - говорит, - нам нужно чтоб пользователь мог сделать вот это. Давай подумаем как это сделать чтоб через полгода все не развалилось». Леха выдыхает. И делает за два дня. Зато качественно. И все работает. И он доволен. И Леха доволен. И даже 1С не ругается.
Ну скажите мне зачем вы это говорите? Он сам грешил. Приходит к Лехе: «Лех, смотри, у Петрова на сайте кнопка красная круглая и мигает. Сделай такую же». Леха делает. Через месяц выясняется что у Петрова эта кнопка работает через один сервис а у нас через другой. И все ломается. Или еще хуже - у Петрова внутри такой бардак что его программисты сами плачут по ночам. А они этот бардак копируют. Зачем копировать чужой бардак? У нас свой есть.
Что вообще можно скопировать? Только то что видишь. Верхушку айсберга. А как там внутри устроено - никто не знает. Может там костыль на костыле. Который на честном слове держится. И на скотче. И на молитвах.
Он однажды так вляпался. Был бизнес, люди платили за участие, выбирали победителя, победитель получал приз. Он думал - ну все просто. А оказалось что там сто нюансов. И когда он Лехе говорит «сделай как у них» - Леха не знает что именно делать. Потому что Леха видит только кнопки и картинки а логику бизнеса ему никто не объяснил. А логика там была такая что даже он сам не всегда понимал.
Теперь он Лехе говорит: «Не смотрим на конкурентов. Смотрим на себя. Мне нужно чтоб кнопка открывала корзину. И чтоб работала быстро. Все». И они делают свое. А не чужое. И работает лучше чем у Петрова. Потому что Петров вообще не знает что у него там внутри. А он знает.
Мужики. Ну сколько можно. Он сам так говорил. Лехе: «Лех, делай, потом документы напишем». А Леха молчал, делал. А потом через полгода что-то сломалось. Леха уже уволился к тому времени. У Лехи теперь другой офис, там кофе машина и вид из окна. А тут пришел новый программист. Смотрит в код. А там комментарий: «Костыль в этой строке не трогать, иначе сломается костыль в строке 10547».
Он спрашивает нового: «Ну что там?». А тот пожимает плечами. «Сань, - говорит, - я не знаю что здесь происходит. И судя по комментариям - никто не знает. Там костыли на костылях». И начинается ад. Переписывать все заново. Дорого. Долго. Нервно. Новый программист уже смотрит на него с укоризной. И кофе пьет без сахара. Потому что стресс.
Почему так вышло? Потому что не было времени на документацию. Заказчик требовал результат. А «потом» не наступило никогда. Потому что завтра была новая задача. А послезавтра еще одна. И еще. И еще. Как белка в колесе. Белка правда не знает что она в колесе, а он знал но ничего не делал.
И знаете что самое смешное? Самые ответственные программисты все равно пытаются оставить следы. Комментарии в коде. Он как-то видел шедевр. Там было написано: «Костыль в этой строке не трогать иначе сломается костыль в строке 10547». Представляете? Все знают про костыли. И ставят их так чтоб не сломать другие костыли. Никто не помнит кто когда и зачем. Как в том анекдоте про сапера который пересаживается. Ну не важно.
Теперь он Лехе говорит: «Лех, закладывай время на документацию. Чтобы новый человек мог прийти и прочитать что тут к чему». Леха сначала удивился. Потом привык. Теперь у него на проектах есть описание. И если Леха уходит - новый не плачет. Ну почти не плачет.
Программисты не враги. Они просто другие. Они не ненавидят нас лично. Они ненавидят когда мы говорим «красиво», «ну ты понял», «на час», «как у конкурентов» и «документация не нужна».
Дайте им четкое задание. Скажите что должно работать. Как должно работать. И когда. Они сделают. Они вообще любят когда все по полочкам. Потому что тогда они могут спокойно работать а не гадать что у вас в голове. У них своих забот хватает, у них там сервера гудят, базы данных падают, кофе заканчивается.
Если нет - они будут делать костыли. А вы через полгода будете переделывать. И платить в два раза больше. И сидеть и вспоминать - а кто это придумал кнопку за час сделать? И тихо ненавидеть самих себя.
Ну выбор за вами. Все сказано. Пойду чайник поставлю.
