Смотрел, что недавно в confluence выкатили функции встроенных баз данных - очень прикольная штука, но оказалось, что к ним еще не был готов бекап/рестор, что для более-менее крупной организации, конечно стопор для активного использования. Это заставило задуматься еще раз про в каких местах правильно срезать углы, если надо выкатить продукт пораньше.
Как удачный пример припоминаю решение выкатить продажу SSL сертификатов в магазине без возможности их продления (выписывались на год) со словами "их продление еще год никому не понадобится". И угол срезали и никто вообще ни в чем не ограничен на практике.
Тогда это несколько необычно было, пытались писать полные требования со всеми нужными функциями, а потом по ним реализовывать.
Как удачный пример припоминаю решение выкатить продажу SSL сертификатов в магазине без возможности их продления (выписывались на год) со словами "их продление еще год никому не понадобится". И угол срезали и никто вообще ни в чем не ограничен на практике.
Тогда это несколько необычно было, пытались писать полные требования со всеми нужными функциями, а потом по ним реализовывать.
В деле управления большой командой и отделом вдолгую пришел к выводу, что куда важнее КАК делать в деталях, чем ЧТО крупноблочно делать. Поясню - дело в том, что неправильное масштабное ЧТО приводит к достаточно быстрой деградации и вылетанию с дистанции. И на этом дальнейшая судьба участника нам уже не интересна.
Поэтому оставшиеся в игре уже примерно одинаково в широком диапазоне представляют себе крупноблочное ЧТО следует делать, ЧТО хорошо и ЧТО плохо. Многие знают, ЧТО хорошо, но намного меньшее число справляются с тем, КАК этого реально добиться с ограниченным ресурсом.
В реальных ресурсах совершенно невозможно одинаково хорошо успевать везде, поэтому чтобы успеть где-то, где-то в другом месте надо опоздать. Надо ужать ресурс в одном месте, чтобы успеть больше в другом, потому что там важнее. Но и продолбать совсем нельзя, поэтому "все горит и ты в огне", а в это самое время реальную разницу по капельке создают разные на первый взгляд мелкие приемы, чуть более эффективные практики здесь, срезание каких-то углов там. Все, чтобы собрать нужный ресурс в нужных местах, но и нигде не оголиться и не допустить критический крах. Вот эти вот "мелкие маневры" в итоге и позволяют получить хорошее ЧТО.
Условно, Иванов знает, что нужен рефакторинг, и Петров знает, что нужен рефакторинг. Говорят и думают они про него одинаково. Но Иванов выкрутился и нашел двух человек на задачу, а Петров нет. Иванов сделал рефакторинг, Иванов молодец.
К сожалению, в этих маневрах плохо работают какие-то универсальные простые принципы. Хорошее для одной ситуации, оказывается плохим для другой. Требуется хитрый баланс, правильная расстановка именно под конкретную ситуацию. Вот именно его я здесь называю КАК.
Это примерно как в шахматах нельзя сказать, что вот такой ход правильный или неправильный - он таким становится в конкретной ситуации. Где-то и ферзя сдавать нормально. Есть какие-то понятные критерии, есть понятный набор приемов, но воплотить из них одних выигрыш трудно. Выигрыш складывается из где-то выигранной пешки, где-то выдвижения фигур чуть раньше. Тоже самое и в наших проектах - каждый небольшой выигрыш здесь, это возможность сосредоточить бОльшее усилие там.
Оглядываясь назад на какие-то неудачи, бывает видно, где можно было дожать еще немного и очень вероятно, что избежать. Такие взгляды назад, кстати, это ад для перфекционистов. Не отказываясь от анализа ошибок, стоит как-то приучить себя жить с 70-80% успеха и быть ими довольными, примерно как формулируют задачи в ОКР.
TL:DR; есть довольно много людей, которые стремятся к хорошему ЧТО, но его достижение это вопрос "мелких" КАК
Разумеется, никогда нельзя забывать, ради чего все эти мелкие КАК делаются
Поэтому оставшиеся в игре уже примерно одинаково в широком диапазоне представляют себе крупноблочное ЧТО следует делать, ЧТО хорошо и ЧТО плохо. Многие знают, ЧТО хорошо, но намного меньшее число справляются с тем, КАК этого реально добиться с ограниченным ресурсом.
В реальных ресурсах совершенно невозможно одинаково хорошо успевать везде, поэтому чтобы успеть где-то, где-то в другом месте надо опоздать. Надо ужать ресурс в одном месте, чтобы успеть больше в другом, потому что там важнее. Но и продолбать совсем нельзя, поэтому "все горит и ты в огне", а в это самое время реальную разницу по капельке создают разные на первый взгляд мелкие приемы, чуть более эффективные практики здесь, срезание каких-то углов там. Все, чтобы собрать нужный ресурс в нужных местах, но и нигде не оголиться и не допустить критический крах. Вот эти вот "мелкие маневры" в итоге и позволяют получить хорошее ЧТО.
Условно, Иванов знает, что нужен рефакторинг, и Петров знает, что нужен рефакторинг. Говорят и думают они про него одинаково. Но Иванов выкрутился и нашел двух человек на задачу, а Петров нет. Иванов сделал рефакторинг, Иванов молодец.
К сожалению, в этих маневрах плохо работают какие-то универсальные простые принципы. Хорошее для одной ситуации, оказывается плохим для другой. Требуется хитрый баланс, правильная расстановка именно под конкретную ситуацию. Вот именно его я здесь называю КАК.
Это примерно как в шахматах нельзя сказать, что вот такой ход правильный или неправильный - он таким становится в конкретной ситуации. Где-то и ферзя сдавать нормально. Есть какие-то понятные критерии, есть понятный набор приемов, но воплотить из них одних выигрыш трудно. Выигрыш складывается из где-то выигранной пешки, где-то выдвижения фигур чуть раньше. Тоже самое и в наших проектах - каждый небольшой выигрыш здесь, это возможность сосредоточить бОльшее усилие там.
Оглядываясь назад на какие-то неудачи, бывает видно, где можно было дожать еще немного и очень вероятно, что избежать. Такие взгляды назад, кстати, это ад для перфекционистов. Не отказываясь от анализа ошибок, стоит как-то приучить себя жить с 70-80% успеха и быть ими довольными, примерно как формулируют задачи в ОКР.
TL:DR; есть довольно много людей, которые стремятся к хорошему ЧТО, но его достижение это вопрос "мелких" КАК
Разумеется, никогда нельзя забывать, ради чего все эти мелкие КАК делаются
Неожиданный вывод про человеческие заблуждения из хайкинга.
Я люблю шариться по горам - по долам, и особенно здорово залезть в какие-нибудь совсем нехоженные места. Вот однажды в Турции я забрался в какие-то горы, где размеченных маршрутов нет и есть только козьи тропы и начал искать путь через заросли. Все время я ясно видел тропу, развилку на ней и шел по одной из веток. Не помню на какой из развилок я задумался, почему тропа так часто разветвляется? И почему каждый раз как я оглядываюсь, то я нахожу развилку? Оглянувшись и тщательно осмотревшись, прогулявшись вперед и назад, я понял, что никакой тропы и никаких развилок там никогда не было (см. рисунок).
Ясной тропой из любой точки местности выглядело свободное пространство между растительностью и камнями. Оно же автоматически образовывало "развилки". Даже "перекрестки", если бы у меня хватало ширины обзора.
Я задумался, насколько мы заточены во всем выявлять шаблоны. Даже когда их на самом деле нет. Это может вести к очень ошибочным выводам. Особенно это опасно для казалось бы умных и образованных людей - то есть как раз тех из нас, кого годами в специальных школах и ВУЗах так тщательно натаскивали обнаруживать закономерности в числах, что нам уже сложно даже поверить, когда этой закономерности нет.
Природу в себе не отключить, но я стал больше рефлексировать о том, не рано ли в каждой ситуации делать далеко идущие выводы.
Я люблю шариться по горам - по долам, и особенно здорово залезть в какие-нибудь совсем нехоженные места. Вот однажды в Турции я забрался в какие-то горы, где размеченных маршрутов нет и есть только козьи тропы и начал искать путь через заросли. Все время я ясно видел тропу, развилку на ней и шел по одной из веток. Не помню на какой из развилок я задумался, почему тропа так часто разветвляется? И почему каждый раз как я оглядываюсь, то я нахожу развилку? Оглянувшись и тщательно осмотревшись, прогулявшись вперед и назад, я понял, что никакой тропы и никаких развилок там никогда не было (см. рисунок).
Ясной тропой из любой точки местности выглядело свободное пространство между растительностью и камнями. Оно же автоматически образовывало "развилки". Даже "перекрестки", если бы у меня хватало ширины обзора.
Я задумался, насколько мы заточены во всем выявлять шаблоны. Даже когда их на самом деле нет. Это может вести к очень ошибочным выводам. Особенно это опасно для казалось бы умных и образованных людей - то есть как раз тех из нас, кого годами в специальных школах и ВУЗах так тщательно натаскивали обнаруживать закономерности в числах, что нам уже сложно даже поверить, когда этой закономерности нет.
Природу в себе не отключить, но я стал больше рефлексировать о том, не рано ли в каждой ситуации делать далеко идущие выводы.
Одна ситуация, которая сильно повлияла на мои менеджерские привычки. Я был на курсах управления в Стенфорде, и там было много хорошо продуманных игр, каждая из которых очень наглядно демонстрировала какой-то способ лажануть. А осязаемость и конкретность это важные элемент реального обучения.
Одна из них довольно простая, надо было сделать в группе план по выживанию после крушения самолета в Аляске на морозе. Как главный эксперт по морозам (меня -40 не сильно напрягает), я вызвался порулить нашей группой и в процессе под моим мудрым управлением мы сформулировали прекрасное решение, но ... оказались только вторыми по его уровню.
Первой пришла команда из довольно жарких стран, и что обидно, в моей команде более правильные ответы тоже прозвучали, причем от людей не сильно то опытных в морозных делах, но я с высоты своего мега-опыта убедил всех (честно убедил, а не просто зарулил), что надо иначе. Попади их ответы в финальную версию - мы бы выиграли.
Это было очень наглядной иллюстрацией, что превосходство в знаниях и опыте не гарантирует лучшего результата, и люди с более скромными знаниями могут оказаться правее. Есть какой-то уровень неопределенности, есть интерпретации и контексты, который делают прежний специализированный опыт не самым лучшим подсказчиком.
Как утешение мне, там пара людей с прошлым из каких-то спецвойск сказали, что они более согласны с моим планом, чем с тем, который предписан упражнением. Однако, второй урок, что нет абстрактной правоты, а есть оценка со стороны конкретных сторон - инвесторы, потребители и т.п. Не важно, что дружественные эксперты сочтут мой продукт лучше, если с этим не согласится потребитель.
У меня сейчас дети учатся параллельно по двум программам, и в каждой есть свой контекст, который делает какие-то ответы более правильными, чем другие. Они регулярно на эту разницу попадаются, и я им объясняю, что это как квест, и они должны помнить - что это правильно в бытовом смысле, другое правильно с точки зрения той школы и третье с точки зрения другой. Это несколько расшатывает идеальное мировозрения, но в реальной жизни многое определяется разными контекстами. Умение их управляемо разделять и сочетать сильно пригодится.
Одна из них довольно простая, надо было сделать в группе план по выживанию после крушения самолета в Аляске на морозе. Как главный эксперт по морозам (меня -40 не сильно напрягает), я вызвался порулить нашей группой и в процессе под моим мудрым управлением мы сформулировали прекрасное решение, но ... оказались только вторыми по его уровню.
Первой пришла команда из довольно жарких стран, и что обидно, в моей команде более правильные ответы тоже прозвучали, причем от людей не сильно то опытных в морозных делах, но я с высоты своего мега-опыта убедил всех (честно убедил, а не просто зарулил), что надо иначе. Попади их ответы в финальную версию - мы бы выиграли.
Это было очень наглядной иллюстрацией, что превосходство в знаниях и опыте не гарантирует лучшего результата, и люди с более скромными знаниями могут оказаться правее. Есть какой-то уровень неопределенности, есть интерпретации и контексты, который делают прежний специализированный опыт не самым лучшим подсказчиком.
Как утешение мне, там пара людей с прошлым из каких-то спецвойск сказали, что они более согласны с моим планом, чем с тем, который предписан упражнением. Однако, второй урок, что нет абстрактной правоты, а есть оценка со стороны конкретных сторон - инвесторы, потребители и т.п. Не важно, что дружественные эксперты сочтут мой продукт лучше, если с этим не согласится потребитель.
У меня сейчас дети учатся параллельно по двум программам, и в каждой есть свой контекст, который делает какие-то ответы более правильными, чем другие. Они регулярно на эту разницу попадаются, и я им объясняю, что это как квест, и они должны помнить - что это правильно в бытовом смысле, другое правильно с точки зрения той школы и третье с точки зрения другой. Это несколько расшатывает идеальное мировозрения, но в реальной жизни многое определяется разными контекстами. Умение их управляемо разделять и сочетать сильно пригодится.