В дебрях водопада
Mar. 6th, 2016 11:57 pmНичего нет страшнее чистого листа. Он беспощаден.
Каждый, кто начинал, знает, что вместо прекрасного совершенства замысла, в мучениях будет рождаться уродец, который безжалостно покажет наивность, ограниченность и самообман создателя.
В семь-девять лет большинство детей прекращают рисовать. Потому что начинают понимать своё несовершенство. Только слишком наглые или слишком наивные способны переступить через самоосуждение.
Современные Методики Софторазработки, также как и современная культура репостов и лайков просто попытки спрятаться от этого страха. Куда проще спереть откуда-то образец, а потом усиленно покрывать его заплатками, чем сесть перед чистым листом и начать думать.
Именно с этим связано отрицание прототипов.
Дело не в том, что глупые менеджеры боятся списать время, затраченное на их создание, как затраты на обучение и изучение. И не в том, что глупые заказчики могут что-то понять, только потыкав кнопочки и выяснив, что им не нравится. Просто, после того, как прототип уйдёт в мусорную корзину, тем, кто создаёт, придётся опять начинать с чистого листа.
С жуткого бесчеловечного пустого места, на котором не на что опереться и не за что спрятаться.
Погрузив себя в иллюзию работы, в иллюзию жизни, в иллюзию творчества, люди бегают в колесе мелких улучшений, поверхностных реакций, чужих мыслей. Это исключает удары по самооценке. Но также исключает и возможность создать чего-то стоящее.
Однако, благодаря усилиям консультантов и проповедников, теперь это модно и правильно. А за работу в подобном стиле программистам неплохо платят.
Каждый, кто начинал, знает, что вместо прекрасного совершенства замысла, в мучениях будет рождаться уродец, который безжалостно покажет наивность, ограниченность и самообман создателя.
В семь-девять лет большинство детей прекращают рисовать. Потому что начинают понимать своё несовершенство. Только слишком наглые или слишком наивные способны переступить через самоосуждение.
Современные Методики Софторазработки, также как и современная культура репостов и лайков просто попытки спрятаться от этого страха. Куда проще спереть откуда-то образец, а потом усиленно покрывать его заплатками, чем сесть перед чистым листом и начать думать.
Именно с этим связано отрицание прототипов.
Дело не в том, что глупые менеджеры боятся списать время, затраченное на их создание, как затраты на обучение и изучение. И не в том, что глупые заказчики могут что-то понять, только потыкав кнопочки и выяснив, что им не нравится. Просто, после того, как прототип уйдёт в мусорную корзину, тем, кто создаёт, придётся опять начинать с чистого листа.
С жуткого бесчеловечного пустого места, на котором не на что опереться и не за что спрятаться.
Погрузив себя в иллюзию работы, в иллюзию жизни, в иллюзию творчества, люди бегают в колесе мелких улучшений, поверхностных реакций, чужих мыслей. Это исключает удары по самооценке. Но также исключает и возможность создать чего-то стоящее.
Однако, благодаря усилиям консультантов и проповедников, теперь это модно и правильно. А за работу в подобном стиле программистам неплохо платят.
no subject
Date: 2016-03-07 12:02 am (UTC)Хотя в той же реальности есть любовь к "выкинуть всё нахуй и переписать заново", да и просто NIH.
Хорошо бы и про это написать.
no subject
Date: 2016-03-07 06:12 am (UTC)Причём, новое чистое и светлое в большинстве случаев оказывается не лучше выброшенного.
И это, естественно, не чистый лист, а книжка-раскраска. Потому что старую функциональность повторяют обычно и со старым дизайном. Или, даже, банально переписывают шило на мыло.
no subject
Date: 2016-03-07 12:12 pm (UTC)no subject
Date: 2016-03-07 12:25 pm (UTC)Реальность же у меня много лет одна: выживание одиночного консультанта в чуждой, зачастую враждебной среде.
no subject
Date: 2016-03-07 12:26 pm (UTC)Интересно, что зачастую повторить получается дешевле и быстрей.
Т.е. быстро сделан прототип из говна и палок. Получены ответы на все вопросы по реальному использованию системы и фичреквестам.
После чего ищется команда, которой ставится ТЗ ,что-то вроде: "то же самое, но не на Foxpro с файловыми блокировками многозадачности, а на скуле".
Еще через лет несколько ставится ТЗ "то же самое, но перетащить в уебинтерфейс".
Самолично наблюдал, как крупная сеть заправок с пластиковыми картами и депозитной системой раболи на dbf. переиндексация начислений проводилась ночью, с часу. раз в год текущего сервака переставало хватать успевать делать переиндексацию за ночь и покупали "помощней". В некий момент эта вся штука раскорячилась окончательно и пришлось таки переписывать на нормальную БД. По имеющимся мотивами разрабатывать было гораздо проще.
no subject
Date: 2016-03-07 01:23 pm (UTC)В своё время загнулось очень много попыток "Заменим Смолток на Яву" или даже "Заменим Кобол на Яву". Часто дешевле выучить польских программистов Коболу, чем пытаться повторить систему, развивавшуюся без документации тридцать лет.
no subject
Date: 2016-03-07 02:47 am (UTC)Вовсе не поэтому.
А потому, что им становятся доступны другие, гораздо более интересные и эффективные виды деятельности, чем любительское рисование.
> культура репостов и лайков просто попытки спрятаться от этого страха.
Нет.
Репосты и лайки - это очень быстро и удобно.
И при этом играет важную роль в процессе распространения информации.
> с этим связано отрицание прототипов
Какая связь между прототипами и созданием с чистого листа?
Это же ортогональные явления.
Можно создавать прототип с чистого листа.
Можно создавать прототип на основании другой системы.
> Это исключает удары по самооценке.
Нет, конечно.
Очередная неудачная итерация в развитии продукта вполне может ударить по самооценке.
> Но также исключает и возможность создать чего-то стоящее.
Нет, конечно.
Что-то стоящее на плечах гигантов создать гораздо более вероятно, чем с чистого листа.
no subject
Date: 2016-03-07 07:15 am (UTC)Угу. Водки, бабы, наркотики...
Писать в этом блоге слово "нет" - очень опрометчиво. Потому что не известно, где у автора художественный приём, а за чем стоят глубокие знания и горы изученной литературы.
Репосты и лайки - это очень быстро и удобно.
И при этом играет важную роль в процессе распространения информации.
Угу. Нажатие на рычаг сливного бачка играет важную роль в распространении воды.
Если посмотреть исследования про то, сколько процентов читают текст перед тем, как лайкнуть, и сколько репостят, не дочитав до конца (я уже не говорю про дискуссию под постом), становится понятной приложимость к этому процессу слова "информация".
Можно создавать прототип на основании другой системы.
Прототип - это модель для выяснения каких-то аспектов. Если есть "другая система", то она и является прототипом. Так что, или прототип бесполезен, или он включает в себя что-то существенное, что возникает на чистом листе.
Что-то стоящее на плечах гигантов создать гораздо более вероятно, чем с чистого листа.
"На плечах гигантов" - это не взгромоздившись им на плечи, а поняв пройденный ими путь. Пушкин не смешивал Вергилия и Гомера, добавляя туда пару новых строчек, а писал своё, понимая и чувствуя их ритм и их художественные приёмы.
no subject
Date: 2016-03-07 09:30 am (UTC)Или друзья, компьютерные игры, интернет, ...
> где у автора художественный приём, а за чем стоят глубокие знания и горы изученной литературы.
Так мы и отделим одно от другого по уровню аргументации.
> Нажатие на рычаг сливного бачка играет важную роль в распространении воды.
Конечно.
> не дочитав до конца
Осмысленная и полезная информация извлекается не только из полностью прочитанного текста, но и из частично прочитанного.
> или он включает в себя что-то существенное, что возникает на чистом листе.
... или он включает в себя что-то существенно, что возникает на основании другой системы.
Система + надстройка = Новая система.
> не взгромоздившись им на плечи, а поняв пройденный ими путь
Понять пройденный путь полезно, но далеко не всегда обязательно.
Я вполне могу писать программы не понимая технологии изготовления микропроцессора.
На самом деле, всё ещё круче: я в принципе не могу знать все технологии изготовления компьютера потому, что их очень, очень много.
> Пушкин не смешивал Вергилия и Гомера, добавляя туда пару новых строчек
... а также не изобретал русский, французский и древнегреческий языки, а также не изобретал печатное дело и много чего другого, что он использовал в своей работе.
no subject
Date: 2016-03-07 10:31 am (UTC)Аргументированный разговор возможен только при примерно одинаковом уровне знаний. Опровергать сказки не интересно.
Система + надстройка = Новая система
Система + система
И, если, "надстройка" не спутана с заплаткой.
Я вполне могу писать программы не понимая технологии изготовления микропроцессора.
Не надо пытаться связать факты из разных областей.
Вообще-то, прежде чем спорить, надо понять, о чём написано, а не "Осмысленная и полезная информация извлекается не только из полностью прочитанного текста, но и из частично прочитанного."
no subject
Date: 2016-03-07 04:50 pm (UTC)Ну я же опровергаю.
Хотя да - в больших количествах надоедает.
> И, если, "надстройка" не спутана с заплаткой.
Да даже если это не надстройка, а заплатка - всё равно старая система с заплаткой - это уже новая система с другим поведением.
Пусть и не очень сильно отличающимся.
В чём ваш поинт здесь: что нововведение может быть и не очень существенным? Ну да, может. И что?
> Не надо пытаться связать факты из разных областей.
Почему не надо?
> Вообще-то, прежде чем спорить, надо понять, о чём написано
Если вы понимаете о чём я пишу и видите мои ошибки - укажите уже на специфику моих ошибок и разбейте в пух и прах.
Пока что ваши возражения выглядят как "где-то здесь у тебя неправильно, но почему я так считаю - догадайся сам".
no subject
Date: 2016-03-07 06:43 pm (UTC)no subject
Date: 2016-03-07 06:49 pm (UTC)У книги есть уже давно отработанная структура и интерфейс.
Однако, путём изменения слов получается совсем другая книга.
no subject
Date: 2016-03-07 07:56 pm (UTC)Путём изменения слов получается только плагиат. Книги пишут совершенно по-другому.
no subject
Date: 2016-03-07 08:40 pm (UTC)no subject
Date: 2016-03-07 11:29 am (UTC)Не надо учитывать все многочисленные ограничения API, не надо отслеживать зависимости, проводить тестирования древнего функционала, который неизвестно почему работает... Просто взял и создал!
Увы, стадия чистого листа и когда весь проект умещается в голове довольно быстро проходит.
После чего возникает огромный соблазн, - выкинуть весь этот кривой недокуменнтированный пи---ц и написать с нуля НОРМАЛЬНО!
no subject
Date: 2016-03-07 11:54 am (UTC)А учитывать надо гораздо больше, чем просто при доделке. Причём, учитывать и сравнивать. Потому что иначе родится ещё один уродец, который превратится в монстра, как только "проект перестанет умещаться в голове".
Кстати, когда нет головы, способной обозреть всю систему целиком, проблемы неизбежны.
no subject
Date: 2016-03-08 12:30 pm (UTC)no subject
Date: 2016-03-08 12:39 pm (UTC)no subject
Date: 2016-03-08 02:47 pm (UTC)