стожар писал(а):
usun писал(а):
0) Disclaimer: я программист с техническим образованием мехмата+post graduation. с философией знаком только в базовом+ объеме. с социологией, политологией - менее чем базовом объеме. экономикой, историей - в базовом.
Соотв я тут буду рассуждать как дилетант, предполагая, что это не чисто профессиональная дискуссия.
.
Приветствую, usun. Рад видеть старых товарищей тех незапамятных времён, когда ТУТ-Политика была ещё приятным местом.
Приятно видеть структурное изложение, но... давайте рассуждать, как коллеги. Возможны вы меня поймёте лучше.
Я завершил не один десяток реальных ИТ проектов, и присматривал за ещё большим количеством на позициях до технического директора в не самой маленькой компании включительно. И одна весьма важная вещь, которую я прочувствовал на своей шкуре - это
необходимость ясного и чёткого целеполагания и внятного стратегического планирования для успеха проекта, про остальны важные вещи пока промолчу. Тот кошмар, в который превращается проект без этого часто не стоит и больших денег, которые за него платят. А проблемы ищут в "повышении качества кода", то бишь, сваливая ответственность на конечных реализаторов кривых планов - только не там, где нужно. Мне приходилось вытаскивать безнадёжные проекты, от которых всех тошнило, и которые проедали годами бабки с минимальным КПД - именно через вправление мозга стейкхолдерам, которые не хотели брать ответственность за целеполагание, раздачи мотивационных пенделей и пряников работникам, и обустройством проектной инфраструктуры, в которой можно жить, а не умирать. Некоторые граждане, впрочем, когда я им указывал на провалы в руководстве, предпочитали оставить себе имидж безупречного руководителя, вместо обретения жизнеспособного проекта, и всё оставалось по прежнему - их выбор.
Так вот, я сейчас вижу всё тот же юношеский пыл энтузиастов, схватившихся за клаву "давайте что-нибудь классное напишем". Я знаю, чем и когда всё это закончится, и вижу траектории каждого такого мечтателя.
Я спрашиваю: "где спецификация целей национального проекта, кто владелец и стейкхолдеры, каков бюджет, кто принимает решения?" Мне в ответ бредят про "фашизм" и "экономика превыше всего" и прочую лабуду собирают. Только не про то, что нужно.
1) Нда моложе я был и куда наивнее на тут бае, как же я был во многом неправ (как и сейчас) :)
Я по IT аналогию полностью понимаю, знаю в какой все уходит хаос без четкого понятие что мы делаем, зачем, какие промежуточные фазы, и какие ресурсы есть и надо привлечь и какие приоритеты, и что будем после того как все получится и какие запасные планы, как менеджить риски и весь процесс и т.п. - но это все конечно даже не песочница по сравнению с управлением государством, но наверное кое какие аналогии есть. :)
И да сколько блин молодых студентов приходилось унимать с их горячим энтузиазмом "переписать к свиням это гауно" или попытками сделать красиво и лучше. Приходилось объяснять что такое унаследованная (легаси система), почему правильнее не расфигачивать ее и переписывать одним махом и почему это никогда не сработает, что важнее не красота и эффективность какойто реализации, а ее совместимость по стилю с другими частями системы, хоть и поплоше, и что надо унимать полеты высокой фантазии в пользу простоты и ясности максимальной, даже примитивности - чтобы люди после него (вероятно более низкой квалификации) были способные поддерживать то, чего он там наваял и т.п. технические детали или интегрироваться с этим.
2) Еще аналогия с теперешней Беларусью профессиональная:
У меня несколько проектов было по миграции систем живущих на новые платформы и продукты, возникавших из-за того, что любая почти IT система после нескольки лет активной жизни и дописываний кусоков с боков и улучшений для нужд постоянного извеняемого реального бизнеса - просто начинает рассыпаться под собственным весом. Ибо изначальная система всегда была на порядок проще и для решения более простых задачи ичасто делалось очень быстро без особых мыслей и закладок, а что же потом - и это правильно.
И вот приступив к миграции, выделяют генеральные большие фазы и подитерации какие части и какой функционал в каком порядке надо мигрировать, очень приблизительно, по приоритетам с детальным планом только на ближайшие пару фаз. И держа старую систему все еще в жизни, к ней начинают сбоку вращивать новые части для решения новых задач, которые все больше разрастаются и заменяют старые - это занимает годы и разные куски системы живут себе параллельно и функционируют.
И при миграции часто не пишут с нуля красиво многие кирпичики, а просто копируют старое выглядещее ужасно ветхо, но оттестированное и выполняющее свою задачу, тоже самое не самые эффективные подходы и решения проще использовать такие же, если не противоречат принципиально новому продукту и выполняют впринципе бизнес задачи. И дело не в лени и косности а в минимизации рисков, что все это заработает, ибо не надо выдумывать себе на голову лишнюю работу, если это действительно является необходимостью для решения задач текущей итерации. Плюс экономится много времени для решения более приоритетных задач. А неопытный программист просто погрязнет в деталях и вечных улучшениях ерунды и провалит основную задачу, если плохой менеджмент и нет четкого плана и механизмов контроля.
3) Продолжая аналогию.
При миграции IT систем порядок действия такой (опустим сейлсов, это аналог пропаганды и презентации нашего плана властям или революционным массам):
- бизнес анализ, договор с клиентом чего они в итоге получить и в каком порядке (по приоритетам) готовы к этому двигаться ("национальная идея и цели"), кто там там будет принимать решения и контролировать бюджеты, и принимать результаты ("определение элит")
- определение технические систем и продуктов, которые позволят это обеспечить в итоге ("рабочая конечная идеология, экономическая и политическая формация")
- архитектура системы, общий дизайн, примерная раскладка через какие промежуточные продукты возможно временные пройдет миграция ("детали итоговой политической и экономической формации и через какие временные методы к ним глобально пойдут - типа временной диктатуры и т.п.")
- разбивка по фазам и итерациям и установления сроков на каждый ("программа реформ")
- реализация каждой фазы и запуск в жизнь с параллельной поддержкой текущих задач рутинных.
- возврат и уточнее планов и методов по ходу.
- сдача группе поддержки, если зачада выполнена полностью или после каждой фазы