Проблемы современной разработки. Часть 2: Скорость
Хотел же потратить майские праздники на что-то более осмысленное, но нет. Поэтому продолжаю рассказ про говн.. современную разработку. В этот раз рассказываю про скорость — «шоб быстра б#еать!»
Первая часть тут. Продолжение тут.
Жажда скорости
Да-да, мы живем во все более ускоряющемся мире, информационные потоки бла-бла-бла становятся все быстрее и стремительней, нужно максимально быстро выбросить продукт на рынок, а потом допиливать — «Live Fast & Die Young» и все такое.
Вы все слышали эту х#йню, но почему-то не все понимают что это именно х#йня, говно на лопате. Не верьте вообщем такому, вам п#здят врут.
Причем речь сейчас не про детей из Мурино, косящих под ниггеров 90х из гарлемского гетто, а про вполне взрослых (вроде как) и состоятельных людей — тех самых ЛПР (лицо принимающее решение), которые и выписывают чеки на миллионы.
Вообщем, каким-то невероятным образом в ИТ-отрасли сложилось мнение, что быстро поднятый продукт не считается упавшим обязательно выстрелит — станет популярным и востребованным.
Причем мнение крайне стойкое и достаточно массовое.
И конечно же как и у любой массовой шизы — у этого явления тоже есть свои корни.
Проверка гипотез
Есть такой интересный товарищ — Питер Тиль, сооснователь PayPal и первый инвестор Facebook. Есть еще один, не менее интересный — Поль Грэм, основатель Y Combinator, это самый знаменитый на свете стартап-инкубатор, если кто вдруг не в курсе.
Обои два — венчурные капиталисты, заработавшие свои капиталы на инвестициях в стартапы, оба (естественно) — легенды, образцы для подражания и все такое прочее.
И вот эти товарищи запустили в широкие массы идею о быстрой проверке гипотез:
не надо тратить время и ресурсы чтобы сделать продукт — сделайте вид что продукт у вас уже есть.
Много предзаказов — поздравляем: гипотеза подтвердилась, начинайте #бошить в полную силу.
Нету предзаказов или интерес низкий — ну печалька, возвращаете их копейки потенциальным пользователям, оформившим предзаказ и ищете более другую идею.
Вместо миллиона баксов на разработку вы слили лишь условные пару тысяч — фактически карманные деньги, в условиях Силиконовой Долины.
Но конечно любые идеи имеют свой срок годности, место и границы применимости.
Интернет-бум или "х#як-х#як и в продакшн"
Вообщем-то оно действительно работало, в условиях интернет-бума 90х и 2000х, вливания каких-то диких масс денег в венчур и общего высокого интереса общества к стартапам.
Стартапы были модной темой, даже если толком ничего не работало.
Еще пользователи тогда платили за абсолютно бесполезную дичь — букинг на стрижку для собак, банкинг через чат-ботов, онлайн-соковыжималки и так далее.
Только гляньте на эту или эту подборочку дичи.
Компании заключали сделки (даже крупные) под голые обещания «доработать/исправить/реализовать», пользователи терпеливо ждали чуда и мирились с багами — молодая и революционная компания х#ле, выступает против старых и бесчеловечных корпоратов, ага.
При этом, сами «революционеры» ни капли не стесняясь завышали и подделывали абсолютно все: пресс-релизы, финансовые показатели и отчеты, партнерские договора и конечно размеры пользовательской базы.
А вы думали Theranos был такой один?
Увы, но нет, на одного такого пойманного и распиаренного п#дораса — сотня неизвестных, которых просто тихо закрыли, списав убытки.
Но у кого-то получалось и переписав под ноль всю кодовую базу под капотом (пару раз) — стартап действительно начинал развиваться.
На быстрорастущем рынке, в условиях взрывного спроса и массового интереса, да.
Нынешнее время
Сытые и жирные годы прошли, на дворе совершенно другая (но исторически - куда более типичная) ситуация: пандемия, война, рецессия и спад всего и везде.
Все со всеми передрались, все друг друга люто ненавидят, режут и вешают — абсолютно нормальный ход вещей, с позиции истории человеческой цивилизации.
Ни хиппи с их любовью ни всесильные компьютерные задроты с линуксом и C++, поднявшие миллиарды на своих гуглах и фейсбуках — не смогли изменить природу человека обыкновенного.
Народ опять оголодал, мало уже кому интересно рисковать сильно опустевшими кошельками вкладываясь в непонятный венчур, когда на двойной бигмак с колой не хватает.
Самая свежая волна айтишного хайпа — искусственный интеллект, если вы вдруг не в курсе — требует настолько чудовищных вычислительных мощностей и узкоспециализированных сверхдорогих специалистов, что позволить себе таким заниматься могут только и исключительно те самые злобные крупные корпорации, которые когда-то противопоставлялись стартап-культуре.
Вообщем все что связано с AI это с самого начала не «гаражная история», скорее история про R&D подразделение большой корпорации — как когда-то и было с первой электроникой.
А две волны хайпа до AI — крипта и NFT: фактически финансовые пирамиды, создаваемые и управляемые откровенными жуликами.
Похмельный синдром
Постепенно в отрасли приходит осознание что скорость разработки — далеко не самое главное при создании продукта.
Что переделать MVP в работающий продукт возможно не всегда, вернее можно банально не успеть вернуть расположение пользователей, утомленных постоянными проблемами и разочаровавшимися.
Но к сожалению, на фоне общего спада и сокращений — пока тяжело отличить признаки смены парадигмы от банальной депрессии и суицидальных настроений.
Да кстати, вы же не думаете, дорогой читатель что только вы одни такие умные и догадались до продажи воздуха и обещаний под видом «работающего, но сложного в настройке функционала»?
Нам бы только просунуть ногу, а там дальше допилим в процессе — никуда пользователи от нас не денутся.
Наверняка слышали эту нетленку от вашего босса или интернет-бизнесменов из 90х. И да, в те золотые времена все было именно так.
Но к сожалению времена больше не золотые, а скорее коричневые и ныне сам термин «стартап» несет скорее негативный оттенок для пользователя.
Вообщем теперь чтобы у вас купили яблоко — нужно опять пройти весь процесс целиком, как диды: посадить, вырастить, собрать урожай и только затем продавать.
Продавать воображаемое яблоко или обещание это яблоко вырастить (даже с гарантиями уважаемых людей) — стало сильно тяжело.
Не то чтобы совсем невозможно, но это снова нишевое явление, в одной тусовке с откровенными жуликами и уголовниками.
Риски и последствия
Конечно же вы не послушали старого айтишного деда, задав все тот же сакральный вопрос — "а кто ты бл#ть такой?" и пошли пинать ногами бедных разработчиков, требуя от них немедленных результатов.
Давайте вкратце расскажу чем вы рискуете и что получите в итоге.
представим что вы, дорогой читатель — глава ОПГ, наркокартеля и до кучи какой-то спецслужбы, под рукой у вас сотня-другая злых обдолбанных отмороженных амбалов с мачете и пулеметами, готовая пытать и вешать по вашему приказу кого и как угодно. Еще у вас бесконечные запасы денег, КАМАЗами и самолетами возите.
Эдакая «голубая мечта» любого руководителя ИТ-проектов:
возможность лично вырвать руки программистам, если что-то пойдет не так
Катая при этом дороги белого порошка прямо в переговорке.
И что же вы думаете — сработает?
Да х#я с два.
Обожаю разочаровывать, это моя слабость.
Вообщем нет, не сработает и не поможет — нельзя ускорить творческую деятельность физическим воздействием.
Иначе каждый бомж бы поэмы писал, с первого пинка ногой и за доширак.
Ни деньги, ни обстановка, ни какое-либо физическое или медикаментозное воздействие — не помогут.
Не бывает такого, что аренда офиса класса А сразу увеличит производительность команды разработки в два раза. И поднятие зарплаты в два раза — также не увеличит производительность в те же два раза.
Даже экстремальный вариант вроде угрозы жизни — тот самый «ствол к башке» ничего существенно не изменит.
Вернемся к вопросу последствий.
Допустим, что вы ничего из описанного выше не зная и не понимая, не имея дела с представителями творческих профессий, начинаете прессовать ваших несчастных айтишников:
Допустим они у вас молодые и неопытные, либо закредитованные и не могут сразу свалить в закат — будут пытаться что-то сделать.
Начинается неконтролируемый прием энергетиков, посиделки в офисе в круглосуточном режиме — вообщем то что называется кранч.
Первое что произойдет — падение качества кода. Проще говоря в вашем проекте появится говнокод.
Вторым по важности номером придет смешение смыслов и уничтожение читаемости — когда у людей нет времени, они не смогут давать адекватные читаемые имена переменным, методам и классам:
Вместо UserEntity, RoleEntity, isUserExists() будет дичь вроде SampleObject1, Class2 и testM22() , естественно без комментариев.
Дальше будет дублирование функционала, неполный цикл сборки — когда проект целиком даже не собирается, подкладывание файлов на продакшн и еще много таких замечательных вещей.
Прекрасно понимаю что для большого дяди, который плотит деньги — все это не более чем какие-то непонятные и неинтересные «детали».
Поэтому именно для вас таких я и вставлял все эти иллюстрации с битыми суперкарами, чтобы было понятно как выглядит «тапок в пол» и потеря управления на физическом объекте.
Идеальная метафора для проваленного проекта из-за требования «ускориться».
Послесловие
Все-таки я некудышный консультант, видимо поэтому до сих пор не катаю бл#дей на белом роллс-ройсе где-нибудь в Монако:
Правильный консультант также как и коуч и тренер — должны выдавать позитив, один только позитив. Это закон консалта № 1. За негатив не платят.
Зато у вас есть возможность услышать внятное изложение мыслей опытного человека, не желающего вас на#бать и не находящегося перманентно под действиями всевозможных веществ — большая редкость для современного мира.