Говорят, что молодые специалисты сейчас мало читают, но много смотрят видео.
Скажу честно, я видео не смотрю почти никогда, за редким исключением.
Причин несколько.
1. Низкая скорость усвоения информации. Чтение банально быстрее примерно на порядок.
2. Низкое качество информации. Степень продуманности, дистилляции и структуризации письменной информации все-таки выше. Меньше воды. Именно по этой причине мало кто любит "голосовухи в телеге".
3. Мне не нужно слушать все подряд. Мне нужно выделить только релевантную информацию и проскочить нерелевантную. Чтение облегчает это.
4. Хронологическая информация мало полезна. Существует даже т.н. "синдром коллекционера", когда информация накапливается, а навигация в этом бесструктурном массиве информации утрачивается. Письменная информация, в отличии от видео, структурирована. По тексту отлично работает полнотекстовый поиск. Я легко могу находить даже то, что никогда не читал.
5. Письменную информацию легче конспектировать в электронном блокноте или делать пометки в читалке.
6. https://dckms.github.io/system-architecture/emacsway/soft-skills/learning.html
7. https://dckms.github.io/system-architecture/README.html#id11
Кто-то красиво сказал, что люди делятся на две категории: на тех, кто читает, и на тех, кто слушает тех, кто читает.
Но аудиокниги я позволяю себе послушать в дороге, преимущественно на нетехнические темы. Это лучше, чем ничего не делать, т.к. читать в дороге дискомфортно. По качеству информации они не отличаются от печатного оригинала и имеют синхронизацию с текстовой версией.
Скажу честно, я видео не смотрю почти никогда, за редким исключением.
Причин несколько.
1. Низкая скорость усвоения информации. Чтение банально быстрее примерно на порядок.
2. Низкое качество информации. Степень продуманности, дистилляции и структуризации письменной информации все-таки выше. Меньше воды. Именно по этой причине мало кто любит "голосовухи в телеге".
3. Мне не нужно слушать все подряд. Мне нужно выделить только релевантную информацию и проскочить нерелевантную. Чтение облегчает это.
4. Хронологическая информация мало полезна. Существует даже т.н. "синдром коллекционера", когда информация накапливается, а навигация в этом бесструктурном массиве информации утрачивается. Письменная информация, в отличии от видео, структурирована. По тексту отлично работает полнотекстовый поиск. Я легко могу находить даже то, что никогда не читал.
5. Письменную информацию легче конспектировать в электронном блокноте или делать пометки в читалке.
6. https://dckms.github.io/system-architecture/emacsway/soft-skills/learning.html
7. https://dckms.github.io/system-architecture/README.html#id11
Кто-то красиво сказал, что люди делятся на две категории: на тех, кто читает, и на тех, кто слушает тех, кто читает.
Но аудиокниги я позволяю себе послушать в дороге, преимущественно на нетехнические темы. Это лучше, чем ничего не делать, т.к. читать в дороге дискомфортно. По качеству информации они не отличаются от печатного оригинала и имеют синхронизацию с текстовой версией.
👍35🔥6🤩1
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
💬 "The first edition of Extreme Programming Explained had a more abstract estimation model, in which stories cost one, two, or three "points". Larger stories had to be broken down before they could be planned. Once you started implementing stories, you quickly…
Перевод оригинальной статьи Ron Jeffries о Story Point:
- "Обдумывая стори поинты"
Ценнейшая информация. Напомню, что он считается их изобретателем.
- "Обдумывая стори поинты"
Ценнейшая информация. Напомню, что он считается их изобретателем.
❤🔥2🔥2🤩1🤣1
О приоритезации грамотным языком. Картинка в статье бесценна.
- "Определите свои классы обслуживания с помощью Триаж Таблиц"
- "Определите свои классы обслуживания с помощью Триаж Таблиц"
🔥1🤩1
Пообщался со @schetinnikov . Выяснилось, что он имеет преподавательский опыт и неплохие спикерские навыки. Глубоко знает проблематику DDD и умеет интересно вести дискуссию. Дискуссия настолько получилась увлекательной, что я предложил проводить подобные дискуссии на регулярной основе более широким кругом.
Кто за - пишите в комментариях (ибо лайки анонимны) 🙂
Кто за - пишите в комментариях (ибо лайки анонимны) 🙂
🔥64👍16🤩1
Так вот откуда эта повальная тяга к говнокоду, когда каждый спринт производится по системному инкременту экскременту. Спасибо друзьям, разъяснили:
https://dzen.ru/a/X4QlsEKmlnP3zjoN
Даже самые выдающиеся авторы обсуждают эту тему на конференциях мирового масштаба:
https://news.1rj.ru/str/ru_arc_chat/14208
[UPDATE]: Рекорд цены за 30 грамм отходов жизнедеятельности Пьеро Мандзони был поставлен в мае 2008 года на аукциона Sotheby's – банка №83 была продана с молотка за 97250 фунтов стерлингов. Получается, что сегодня дерьмо художника почти в 100 раз дороже золота.
https://dzen.ru/a/X4QlsEKmlnP3zjoN
Даже самые выдающиеся авторы обсуждают эту тему на конференциях мирового масштаба:
https://news.1rj.ru/str/ru_arc_chat/14208
[UPDATE]: Рекорд цены за 30 грамм отходов жизнедеятельности Пьеро Мандзони был поставлен в мае 2008 года на аукциона Sotheby's – банка №83 была продана с молотка за 97250 фунтов стерлингов. Получается, что сегодня дерьмо художника почти в 100 раз дороже золота.
Дзен | Статьи
Как итальянский художник продал на аукционе собственные фекалии на вес золота?
Статья автора «Италия для меня» в Дзене ✍: Каждая баночка буквально была продана на вес золота, то есть по цене 30-ти грамм драгоценного металла.
🤣4😁2🤯1😐1
Часто спрашивают, как сделать так, чтоб изменение вступило в силу в нужный момент времени. По разным причинам. Например, нужно обработать много данных, но чтоб результат стал видим единовременно.
Новая статья Kent Beck как раз об этом:
🔷 "Eventual Business Consistency"
См. также:
🔷 https://martinfowler.com/eaaDev/timeNarrative.html
🔷 https://martinfowler.com/eaaDev/TemporalObject.html
🔷 https://martinfowler.com/eaaDev/TemporalProperty.html
🔷 https://martinfowler.com/eaaDev/Effectivity.html
🔷 https://martinfowler.com/eaaDev/Snapshot.html
Новая статья Kent Beck как раз об этом:
🔷 "Eventual Business Consistency"
См. также:
🔷 https://martinfowler.com/eaaDev/timeNarrative.html
🔷 https://martinfowler.com/eaaDev/TemporalObject.html
🔷 https://martinfowler.com/eaaDev/TemporalProperty.html
🔷 https://martinfowler.com/eaaDev/Effectivity.html
🔷 https://martinfowler.com/eaaDev/Snapshot.html
Substack
Eventual Business Consistency
Executive Summary of Bi-temporality
🔥6👍1
Есть идея. Допустим, вы являетесь успешным специалистом, и хотите освоить новый аспект знаний, например, EventStorming.
Как говорится, лучший способ что-то понять - это попытаться объяснить это другому человеку.
Лучший способ кристаллизировать знания - это работать с информацией письменно, чтоб она была отчуждаема.
Допустим, на этом еще и зарабатывать - оформить свои заметки в виде учебного курса и получать регулярный роялти. При этом заручиться менторством и рецензированием от меня или других известных ребят.
И этот курс будет создавать вам имя и укреплять карьерные перспективы.
Кому было бы интересно, поставьте 👍, пожалуйста. Интересно оценить осуществимость идеи.
Как говорится, лучший способ что-то понять - это попытаться объяснить это другому человеку.
Лучший способ кристаллизировать знания - это работать с информацией письменно, чтоб она была отчуждаема.
Допустим, на этом еще и зарабатывать - оформить свои заметки в виде учебного курса и получать регулярный роялти. При этом заручиться менторством и рецензированием от меня или других известных ребят.
И этот курс будет создавать вам имя и укреплять карьерные перспективы.
Кому было бы интересно, поставьте 👍, пожалуйста. Интересно оценить осуществимость идеи.
👍75🤔4
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Есть идея. Допустим, вы являетесь успешным специалистом, и хотите освоить новый аспект знаний, например, EventStorming. Как говорится, лучший способ что-то понять - это попытаться объяснить это другому человеку. Лучший способ кристаллизировать знания - это…
Еще одна идея. Вернее, две, но обо всем по порядку.
Я в последний месяц смог позволить себе появиться в тг-групах. Вопросы задают все те же, и ответы на них те же. Я дал несколько ответов, которые мне самому показались интересными. Из-за дефицита времени иногда приходилось отвечать устно, например, https://news.1rj.ru/str/iDDDqd/21557 .
К сожалению, личные обстоятельства не позволяют мне оформить мою же информацию и опубликовать в электронном блокноте.
Вы знаете, что у меня есть блокнот, состоящий из приватной, корпоративной и публичной частей. Публичная часть доступна здесь:
https://dckms.github.io/system-architecture/
Алфавитный указатель:
https://dckms.github.io/system-architecture/genindex.html
Этот блокнот имеет несколько особенностей:
1. Как вы знаете, в Zettelkasten используется тегирование вместо рубрикации потому, что узел древовидного дерева рубрикатора не может принадлежать нескольким родителям. В моем блокноте на sphinx-doc это возможно, что позволяет организовать многопользовательскую среду, в которой у каждого из авторов есть свое собственное дерево навигации, в которое он может вставлять статьи и поддеревья из деревьев навигации других авторов. Также можно создавать общее, главное дерево навигации. В общем, перекрестные деревья - невероятно мощный механизм, который незаслуженно недооценнен.
Иными словами, этот инструмент позволяет гибко переплетать собственный блокнот с чужими блокнотами. А поскольку весь персональный контент одного пользователя лежит в его отдельной директории, то становится возможным персонализировать лицензионную политику.
2. Кроме того, что один экземпляр блокнота позволяет гибко организовать многопользовательскую среду, так он еще и предоставляет отличные возможности интеграции совершенно независимых блокнотов.
Подробнее о других возможностях см. здесь:
https://dckms.github.io/system-architecture/README.html#id13
Полное описание:
https://dckms.github.io/system-architecture/README.html
Возникший дефицит времени вынуждает меня искать новые формы решений. Возникает идея.
Любой может задать мне вопрос в канале этого чата:
https://news.1rj.ru/str/emacsway_chat
Мой ответ может быть полным или неполным, например, "посмотрите в книге такой-то по словам таким-то". Может быть устным, а может быть письменным.
Автор вопроса прорабатывает ответ и оформляет полученный инкремент знаний в отчуждаемом виде в коллективно-распределенном электронном блокноте
https://github.com/dckms/system-architecture/
под моим наставничеством и рецензированием.
Попытка объяснить полученное знание другому человеку в отчуждаемом виде является невероятно мощным инструментом кристаллизации собственных знаний. Лучший способ что-то понять - это попытаться объяснить это другому человеку.
А оформление знаний в структурированном виде в электронном блокноте является невероятно мощным способом информационной навигации. Вы знаете, что главный бич нашей индустрии - это синдром "коллекционера знаний", когда информация накапливается в бесполезную свалку, лишенную возможности навигации в ней.
Таким образом, польза будет обоюдная. И это позволит консолидировать усилия сообщества на формирование справочного руководства, позволяя каждому сохранить свое авторство и лицензионную политику.
Наиболее хороший материал будет включаться в главное навигационное дерево блокнота.
Что думаете по этому поводу? Кто готов принять участие, поставьте, пожалуйста, 👍, чтоб я смог оценить жизнеспособность идеи.
В идеале хотелось бы сформировать стабильный коллектив.
Также нужны помощники по переносу материалов этого канала в блокнот, например,
- https://news.1rj.ru/str/emacsway_log/1113
- https://news.1rj.ru/str/emacsway_log/1074
и др. Если кто-то готов подключиться к процессу, пишите мне в приват @emacsway или в чат канала @emacsway_chat .
Вторую идею напишу позже.
Да, кстати, эта идея ни в коем случае не заменяет предыдущую.
Я в последний месяц смог позволить себе появиться в тг-групах. Вопросы задают все те же, и ответы на них те же. Я дал несколько ответов, которые мне самому показались интересными. Из-за дефицита времени иногда приходилось отвечать устно, например, https://news.1rj.ru/str/iDDDqd/21557 .
К сожалению, личные обстоятельства не позволяют мне оформить мою же информацию и опубликовать в электронном блокноте.
Вы знаете, что у меня есть блокнот, состоящий из приватной, корпоративной и публичной частей. Публичная часть доступна здесь:
https://dckms.github.io/system-architecture/
Алфавитный указатель:
https://dckms.github.io/system-architecture/genindex.html
Этот блокнот имеет несколько особенностей:
1. Как вы знаете, в Zettelkasten используется тегирование вместо рубрикации потому, что узел древовидного дерева рубрикатора не может принадлежать нескольким родителям. В моем блокноте на sphinx-doc это возможно, что позволяет организовать многопользовательскую среду, в которой у каждого из авторов есть свое собственное дерево навигации, в которое он может вставлять статьи и поддеревья из деревьев навигации других авторов. Также можно создавать общее, главное дерево навигации. В общем, перекрестные деревья - невероятно мощный механизм, который незаслуженно недооценнен.
Иными словами, этот инструмент позволяет гибко переплетать собственный блокнот с чужими блокнотами. А поскольку весь персональный контент одного пользователя лежит в его отдельной директории, то становится возможным персонализировать лицензионную политику.
2. Кроме того, что один экземпляр блокнота позволяет гибко организовать многопользовательскую среду, так он еще и предоставляет отличные возможности интеграции совершенно независимых блокнотов.
Подробнее о других возможностях см. здесь:
https://dckms.github.io/system-architecture/README.html#id13
Полное описание:
https://dckms.github.io/system-architecture/README.html
Возникший дефицит времени вынуждает меня искать новые формы решений. Возникает идея.
Любой может задать мне вопрос в канале этого чата:
https://news.1rj.ru/str/emacsway_chat
Мой ответ может быть полным или неполным, например, "посмотрите в книге такой-то по словам таким-то". Может быть устным, а может быть письменным.
Автор вопроса прорабатывает ответ и оформляет полученный инкремент знаний в отчуждаемом виде в коллективно-распределенном электронном блокноте
https://github.com/dckms/system-architecture/
под моим наставничеством и рецензированием.
Попытка объяснить полученное знание другому человеку в отчуждаемом виде является невероятно мощным инструментом кристаллизации собственных знаний. Лучший способ что-то понять - это попытаться объяснить это другому человеку.
А оформление знаний в структурированном виде в электронном блокноте является невероятно мощным способом информационной навигации. Вы знаете, что главный бич нашей индустрии - это синдром "коллекционера знаний", когда информация накапливается в бесполезную свалку, лишенную возможности навигации в ней.
Таким образом, польза будет обоюдная. И это позволит консолидировать усилия сообщества на формирование справочного руководства, позволяя каждому сохранить свое авторство и лицензионную политику.
Наиболее хороший материал будет включаться в главное навигационное дерево блокнота.
Что думаете по этому поводу? Кто готов принять участие, поставьте, пожалуйста, 👍, чтоб я смог оценить жизнеспособность идеи.
В идеале хотелось бы сформировать стабильный коллектив.
Также нужны помощники по переносу материалов этого канала в блокнот, например,
- https://news.1rj.ru/str/emacsway_log/1113
- https://news.1rj.ru/str/emacsway_log/1074
и др. Если кто-то готов подключиться к процессу, пишите мне в приват @emacsway или в чат канала @emacsway_chat .
Вторую идею напишу позже.
Да, кстати, эта идея ни в коем случае не заменяет предыдущую.
Telegram
Ivan Zakrevsky in DDDevotion chat
👍14❤1🔥1
🔷 "Как выбрать коммерческие курсы, обучающие ИТ-профессии" / Денис Бесков
Хабр
Как выбрать коммерческие курсы, обучающие ИТ-профессии
При выборе курсов вас должны интересовать 2 цифры — доля людей, дошедших до конца курса и доля выпускников, устроившихся на работу в течение 3-х месяцев после окончания курса. Например, если курс...
😁3👍1
«Архитектура – это равновесие,
мастер – это тот, кто умеет привести силы природы в равновесие,
мастерство – это умение привести силы природы в равновесие,
творчество – это желание привести силы природы в равновесие»
https://cyberleninka.ru/article/n/kontsept-masterstva-i-mastera-v-arhitekture
мастер – это тот, кто умеет привести силы природы в равновесие,
мастерство – это умение привести силы природы в равновесие,
творчество – это желание привести силы природы в равновесие»
https://cyberleninka.ru/article/n/kontsept-masterstva-i-mastera-v-arhitekture
КиберЛенинка
Концепт мастерства и мастера в архитектуре
В современной художественной культуре необходимость мастерства как искусности, особого рода умения, часто ставится под сомнение. Мастер и мастерство теряют актуальность как концепты художественного творчества. Эта тенденция кажется парадоксальной на фоне…
👍3❤2🔥1
Forwarded from Архитектура ИТ-решений
Architects, no matter if they’re focused on the enterprise, solution or system, and often the guardians of the Non-Functional Requirements, should not be sitting in an Ivory Tower...
https://www.comicagile.net/comic/the-architect/
https://www.comicagile.net/comic/the-architect/
👍1
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Еще одна идея. Вернее, две, но обо всем по порядку. Я в последний месяц смог позволить себе появиться в тг-групах. Вопросы задают все те же, и ответы на них те же. Я дал несколько ответов, которые мне самому показались интересными. Из-за дефицита времени…
На текущий момент эта идея превосходит все мои ожидания по качеству своего материала. Наконец-то скоро появится статья (уже в финальной стадии) на тему моделирования и ограниченных контекстов, благодаря @StanislavBolsun . Статья освещает тот самый вопрос, непонимание которого является ключевой причиной проблем большинства проектов. Моя практика показывает, что внесение понимания этого вопроса в команду разработки позволяет кардинально улучшить её эффективность уже на горизонте полугода. Это - фундамент успешной разработки.
И это будет лучшая статья по этой тематике, потому что иначе просто не возникало бы причин для её появления. И это будет единственная известная мне статья, поясняющая, почему именно лингвистические конфликты были выбраны признаками границы модели. Эванс очень точно это угадал, но вот с пояснением у него получилось не очень, и именно поэтому ограниченный контекст у него получился одной из самых сложно понимаемых концепций.
Есть еще один важный момент - мои идеи коллективно-распределенного блокнота, сформированные ещё в 2021 году, наконец-то проросли и начали давать результат, которым я впечатлен. Хочется верить в то, что этот результат продолжит развиваться стабильно и длительно.
И это будет лучшая статья по этой тематике, потому что иначе просто не возникало бы причин для её появления. И это будет единственная известная мне статья, поясняющая, почему именно лингвистические конфликты были выбраны признаками границы модели. Эванс очень точно это угадал, но вот с пояснением у него получилось не очень, и именно поэтому ограниченный контекст у него получился одной из самых сложно понимаемых концепций.
Есть еще один важный момент - мои идеи коллективно-распределенного блокнота, сформированные ещё в 2021 году, наконец-то проросли и начали давать результат, которым я впечатлен. Хочется верить в то, что этот результат продолжит развиваться стабильно и длительно.
Telegram
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Еще одна идея. Вернее, две, но обо всем по порядку.
Я в последний месяц смог позволить себе появиться в тг-групах. Вопросы задают все те же, и ответы на них те же. Я дал несколько ответов, которые мне самому показались интересными. Из-за дефицита времени…
Я в последний месяц смог позволить себе появиться в тг-групах. Вопросы задают все те же, и ответы на них те же. Я дал несколько ответов, которые мне самому показались интересными. Из-за дефицита времени…
👍13🔥6👏1🤩1
💬 "Лидеры умеют чередовать глобус с микроскопом. Они мыслят масштабно, но избирательно уходят в детали, когда рассматривают ключевые моменты."
Подсмотрено здесь:
https://news.1rj.ru/str/ClubM/1447
Не могу не согласиться. Мой опыт и мой анализ деятельности великих исторических деятелей это подтверждает.
Ответ на вопрос о том, должен ли архитектор уметь погружаться в код, тоже зависит, как мне кажется, от того, хочет ли он быть лидером или просто рисовать диаграммы:
https://youtu.be/31qcPwAv8Zw
Подсмотрено здесь:
https://news.1rj.ru/str/ClubM/1447
Не могу не согласиться. Мой опыт и мой анализ деятельности великих исторических деятелей это подтверждает.
Ответ на вопрос о том, должен ли архитектор уметь погружаться в код, тоже зависит, как мне кажется, от того, хочет ли он быть лидером или просто рисовать диаграммы:
https://youtu.be/31qcPwAv8Zw
Telegram
Mens Business Club
15 правил лидерства 🔝
1. Ставьте цели. Во всем.
2. Идите навстречу обстоятельствам, не ждите пока обстоятельства придут к вам.
3. Живите с юмором. То, у чего нельзя поучиться, над этим можно посмеяться.
4. Делайте эксперименты. Над собой, над людьми…
1. Ставьте цели. Во всем.
2. Идите навстречу обстоятельствам, не ждите пока обстоятельства придут к вам.
3. Живите с юмором. То, у чего нельзя поучиться, над этим можно посмеяться.
4. Делайте эксперименты. Над собой, над людьми…
👍8🔥2
Великолепная статья от Kent Beck для тех компаний, которые трекают активности своих разработчиков:
https://tidyfirst.substack.com/p/measuring-developer-productivity-440
https://tidyfirst.substack.com/p/measuring-developer-productivity-440
Substack
Measuring developer productivity? A response to McKinsey 2
The consultancy giant has devised a methodology it claims measures software developer productivity.
👍10
Forwarded from Записки системного архитектора (Boris Romanov)
Новая версия Archi заявляет новую фичу - возможность изменять типы элементов и отношений! Пошел ставить и проверять.
🔥6
Product vs. Project explained:
https://www.youtube.com/watch?v=EhtsPAdYOds
https://www.youtube.com/watch?v=EhtsPAdYOds
YouTube
Камеди Клаб «Табличка» Харламов, Батрутдинов, Кравец, Иванов, Аверин, Скороход, Смирнов
Легендарити. Многие видели, но пусть и на нашем канале будет. Эфир от 29.11.2019
Подписывайся на телеграм камеди - https://news.1rj.ru/str/comedyclubru
Подписывайся на группу Камеди Вконтакте - https://vk.com/comedyclubru
Смотри ComedyClub по пятницам в 21:00 на ТНТ.…
Подписывайся на телеграм камеди - https://news.1rj.ru/str/comedyclubru
Подписывайся на группу Камеди Вконтакте - https://vk.com/comedyclubru
Смотри ComedyClub по пятницам в 21:00 на ТНТ.…
😁11
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Довольны ли вы своими условиями работы (качество организации процессов, морально-психологический климат, отношение руководства, состояние кодовой базы, покрытие тестами, качество документации, темпы разработки и т.п.)?
P.S.: опрос анонимный
P.S.: опрос анонимный
Чем больше размер компании, тем длиннее петля обратной связи между действиями сотрудника и наступающими последствиями. Это приводит к дезориентации специалиста и снижает ориентированность на результат (что вынуждает придумывать компенсаторные внутренние петли обратной связи типа KPI или OKR). Это так же снижает долю адаптирования в пользу планирования, что снижает возможность рядового сотрудника влиять на результат. Это одна из причин снижения эффективности плановой экономики, обладающей самой большой в истории петлей обратной связи.
Самое интересное возникает тогда, когда рядовой сотрудник, без права влияния на процесс, оказывается компетентней руководителя, ответственного за планирование. Или когда положительные последствия действий одного сотрудника в клубке корпоративных хитросплетений достаются другому.
По результатам опроса почти каждый пятый хочет уволиться, и каждый третий не может ни на что повлиять.
Чем меньше компания, тем меньше петля обратной связи, тем меньше момент инерции, тем быстрее проявляется результат неправильных действий, тем быстрее возникает адаптация.
Отсюда вывод - в небольших компаниях больше шансов быть справедливо оцененным.
Самым объективным и беспристрастным судьей является рынок. Кум, брат, сват, регалии, тайтлы - на него не действуют. Выживает сильнейший. Кризисы, как хищники, истребляют всех, кто слабо приспособлен.
Но самая короткая петля обратной связи - это фондовый рынок. Ты или знаешь и получаешь доход, или не знаешь и терпишь убыток. Манипуляторы рынка, как хищники, истребляют слабых, обескровливая их пампами.
Жестоко и честно. Ни подкупить, ни обмануть.
Кто-то платит за сигналы и становится инструментом наживы в чужих руках как средство разгона пампов, а у кого-то хватает ума разглядеть след крупного игрока и вести самостоятельную игру, пусть даже и с небольшим капиталом, но стать субъектом. Субъектность - единственный путь наверх. Пресмыкательство - путь стать использованным. В крупных корпорациях случается наоборот.
Продолжение...
Самое интересное возникает тогда, когда рядовой сотрудник, без права влияния на процесс, оказывается компетентней руководителя, ответственного за планирование. Или когда положительные последствия действий одного сотрудника в клубке корпоративных хитросплетений достаются другому.
По результатам опроса почти каждый пятый хочет уволиться, и каждый третий не может ни на что повлиять.
Чем меньше компания, тем меньше петля обратной связи, тем меньше момент инерции, тем быстрее проявляется результат неправильных действий, тем быстрее возникает адаптация.
Отсюда вывод - в небольших компаниях больше шансов быть справедливо оцененным.
Самым объективным и беспристрастным судьей является рынок. Кум, брат, сват, регалии, тайтлы - на него не действуют. Выживает сильнейший. Кризисы, как хищники, истребляют всех, кто слабо приспособлен.
Но самая короткая петля обратной связи - это фондовый рынок. Ты или знаешь и получаешь доход, или не знаешь и терпишь убыток. Манипуляторы рынка, как хищники, истребляют слабых, обескровливая их пампами.
Жестоко и честно. Ни подкупить, ни обмануть.
Кто-то платит за сигналы и становится инструментом наживы в чужих руках как средство разгона пампов, а у кого-то хватает ума разглядеть след крупного игрока и вести самостоятельную игру, пусть даже и с небольшим капиталом, но стать субъектом. Субъектность - единственный путь наверх. Пресмыкательство - путь стать использованным. В крупных корпорациях случается наоборот.
Продолжение...
👍8👎6🔥2🤩1
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Чем больше размер компании, тем длиннее петля обратной связи между действиями сотрудника и наступающими последствиями. Это приводит к дезориентации специалиста и снижает ориентированность на результат (что вынуждает придумывать компенсаторные внутренние петли…
Столь противоречивая реакция на предыдущий пост говорит о том, что эволюционный механизм - это сложная для понимания тема. Именно по этой причине не так давно в одном из архитектурных пабликов произошло одно из крупнейших разногласий на почве роли Fintess Function в Evolutionary Architecture.
Законы биологической эволюции, рыночной экономики, разрешения неопределенности требований (организации SDLC-процессов) и архитектурной эволюции - одинаковы. Единожды поняв этот принцип в любом из его проявлений, становится легко его применять в эволюционной архитектуре, и тогда становится понятно, что с этой статьей не так.
Я не люблю писать посты на сложные и слабоосвещенные темы, потому что это непопулярная мера. С другой стороны, этот канал создан для того, чтоб делиться своими мыслями, и у меня есть мысли по этому поводу, которые я хотел бы изложить в нескольких постах.
Но прежде я хочу дополнить предыдущий пост двумя тезисами.
1. Помните некогда широко известную корпорацию Kodak? А Nokia? MySpace? Blackberry? Где они сегодня?
Как сказал Kent Beck, все меняется, кроме самого закона изменения. Мы можем справедливо утверждать, что рыночная (адаптивная) экономика не столь эффективна перед плановой (предиктивной) экономикой, т.к. в плановой экономике нет места для кризисов, войн, безработицы и т.д. И тем не менее, законы рыночной экономики существовали, существуют и будут существовать, в то время, как даже крупнейшие корпорации ушли в историю.
2. Пресмыкательство отличается от приспособленности именно утратой субъектности.
Приспособленность означает адаптацию к окружающей среде, а пресмыкательство - это адаптация к тем, кто лучше приспособился.
Первое направлено на обретение независимости от внешних субъектов, второе - на усугубление зависимости.
Разница примерно такая же, как между "служить" и "прислуживать".
Продолжение...
Законы биологической эволюции, рыночной экономики, разрешения неопределенности требований (организации SDLC-процессов) и архитектурной эволюции - одинаковы. Единожды поняв этот принцип в любом из его проявлений, становится легко его применять в эволюционной архитектуре, и тогда становится понятно, что с этой статьей не так.
Я не люблю писать посты на сложные и слабоосвещенные темы, потому что это непопулярная мера. С другой стороны, этот канал создан для того, чтоб делиться своими мыслями, и у меня есть мысли по этому поводу, которые я хотел бы изложить в нескольких постах.
Но прежде я хочу дополнить предыдущий пост двумя тезисами.
1. Помните некогда широко известную корпорацию Kodak? А Nokia? MySpace? Blackberry? Где они сегодня?
Как сказал Kent Beck, все меняется, кроме самого закона изменения. Мы можем справедливо утверждать, что рыночная (адаптивная) экономика не столь эффективна перед плановой (предиктивной) экономикой, т.к. в плановой экономике нет места для кризисов, войн, безработицы и т.д. И тем не менее, законы рыночной экономики существовали, существуют и будут существовать, в то время, как даже крупнейшие корпорации ушли в историю.
2. Пресмыкательство отличается от приспособленности именно утратой субъектности.
Приспособленность означает адаптацию к окружающей среде, а пресмыкательство - это адаптация к тем, кто лучше приспособился.
Первое направлено на обретение независимости от внешних субъектов, второе - на усугубление зависимости.
Разница примерно такая же, как между "служить" и "прислуживать".
Продолжение...
Telegram
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Представьте, что вам нужно выйти на улицу. Вы не знаете, какая там погода и температура. Как одеться?
Первый вариант - это попытаться заблаговременно предугадать погоду путем логического вывода. Например, сегодня июнь, вчера было тепло, значит, сегодня тоже…
Первый вариант - это попытаться заблаговременно предугадать погоду путем логического вывода. Например, сегодня июнь, вчера было тепло, значит, сегодня тоже…
👍6😐1
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Столь противоречивая реакция на предыдущий пост говорит о том, что эволюционный механизм - это сложная для понимания тема. Именно по этой причине не так давно в одном из архитектурных пабликов произошло одно из крупнейших разногласий на почве роли Fintess…
Генетический механизм репродукции реализует адаптивный способ разрешения неопределенности (когда-то затрагивал эту тему здесь).
Причина его существования заключается в том, что никто не знает какие условия обитания будут на планете завтра. Т.е. имеет место неопределенность условий существования. Вдруг завтра прилетит метеорит и изменится состав атмосферы?
В связи с этим, двуполое размножение обеспечивает постоянную генерацию новых генетических комбинаций. Мы просто не знаем какая именно генетическая комбинация окажется наиболее приспособленной к завтрашним условиям окружающей среды.
Те генетические комбинации, которые слабо приспособлены к текущим условиям окружающей среды не должны препятствовать распространению более приспособленных комбинаций. Иными словами, если существует механизм формирования разнообразия генетических комбинаций, то должен существовать и механизм истребления слабо приспособленных генетических комбинаций. Именно поэтому двуполый механизм репродукции не может выполнять свои функции без хищников, назначение которых сводится к истреблению слабо приспособленных генетических комбинаций. Т.е. к селекции.
Таким образом, если попытаться спроецировать этот механизм на архитектуру, то должны присутствовать следующие составляющие:
1) неопределенность внешней среды (контекста);
2) генерация разнообразия форм решения (где решение - это совокупность его элементов (как и комбинация ген));
3) селекция - истребление слабо приспособленных к текущим условиям окружающей среды решений;
Продолжение...
Причина его существования заключается в том, что никто не знает какие условия обитания будут на планете завтра. Т.е. имеет место неопределенность условий существования. Вдруг завтра прилетит метеорит и изменится состав атмосферы?
В связи с этим, двуполое размножение обеспечивает постоянную генерацию новых генетических комбинаций. Мы просто не знаем какая именно генетическая комбинация окажется наиболее приспособленной к завтрашним условиям окружающей среды.
Те генетические комбинации, которые слабо приспособлены к текущим условиям окружающей среды не должны препятствовать распространению более приспособленных комбинаций. Иными словами, если существует механизм формирования разнообразия генетических комбинаций, то должен существовать и механизм истребления слабо приспособленных генетических комбинаций. Именно поэтому двуполый механизм репродукции не может выполнять свои функции без хищников, назначение которых сводится к истреблению слабо приспособленных генетических комбинаций. Т.е. к селекции.
Таким образом, если попытаться спроецировать этот механизм на архитектуру, то должны присутствовать следующие составляющие:
1) неопределенность внешней среды (контекста);
2) генерация разнообразия форм решения (где решение - это совокупность его элементов (как и комбинация ген));
3) селекция - истребление слабо приспособленных к текущим условиям окружающей среды решений;
Продолжение...
Telegram
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc. in emacsway…
Выражу свое мнение по поводу предыдущей цитаты. В одном фильме, кажется, в фильме "Глухарь", полковник(?) Карпов очень метко выразил мысль: "разницу между смелостью и глупостью объяснить"?
Тут то же самое. Есть разница между "не бояться" и "не уметь управлять…
Тут то же самое. Есть разница между "не бояться" и "не уметь управлять…
👍7❤1😐1
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Генетический механизм репродукции реализует адаптивный способ разрешения неопределенности (когда-то затрагивал эту тему здесь). Причина его существования заключается в том, что никто не знает какие условия обитания будут на планете завтра. Т.е. имеет место…
Разрешение неопределенности опытным путем не может обладать наивысшим уровнем эффективности потому, что информация о правильности решения (т.е. о соответствии решения текущим условиям) возникает в результате эксперимента. Т.е. часть ресурсов изначально закладывается на получение информации, т.е. на опровергание неудачных гипотез. Иными словами, чтобы сократить количество вариантов, сперва нужно потратить ресурсы на увеличение количества вариантов, иначе просто нечего будет сокращать. Конвергентная фаза принятия решения невозможна без дивергентной фазы.
Именно поэтому, чем дешевле заблаговременные способы разрешения неопределенности, тем дешевле можно вести разработку программного продукта. Именно этим обусловлен феномен успеха Event Storming - он снижает стоимость заблаговременного способа разрешения неопределенности, что позволяет минимизировать долю эмпирического способа обработки неопределенности. Как говорится,
💬 "пять дней кодинга могут сэкономить один день планирования".
По этой же причине, рыночная экономика, в основе которой лежит adaptation (в отличии от плановой экономики), немыслима без кризисов и войн - чтобы истреблять слабо приспособленные формы хозяйствования. Конкуренция генерирует новые формы хозяйствования, а кризисы их сокращают. Т.е. механизм экономической эволюции по своей сути мало чем отличается от механизма биологической эволюции.
Мы можем иметь разное отношение к хищническим способам его функционирования, но он на протяжении веков обеспечивает свою ключевую функцию - сохранение жизни на планете в условиях переменчивости окружающей среды. Да, динозавры, как форма жизни, прекратили свое существование, но сама жизнь на планете продолжается.
И тут мы подошли к ключевой цели Evolutionary Architecture.
Как я уже говорил, архитектурное решение - это сокращение количества возможных вариантов. Robert Martin говорил, что архитектура - это о том, как не надо делать.
Что такое вариант архитектурного решения? Это конфигурация комбинации элементов системы. Что такое система? Это математическая свертка архитектурных решений. Именно поэтому, ADR документирует системный инкремент (т.е. изменение системы), а не саму систему.
💬 A system is never the sum of its parts. It is the product of the interactions of its parts.
-- Dr. Russel Ackoff
Мы подошли к тому, чтобы понять идею автора Evolutionary Architecture. Еще раз выделю главное:
задача эволюции заключается в том, чтобы обеспечить выживаемость путем способствования репродукции наиболее приспособленной (т.е. соответствующей) текущим условиям комбинации ген (или элементов системы, или организационных форм хозяйствования и т.д.).
Продолжение...
Именно поэтому, чем дешевле заблаговременные способы разрешения неопределенности, тем дешевле можно вести разработку программного продукта. Именно этим обусловлен феномен успеха Event Storming - он снижает стоимость заблаговременного способа разрешения неопределенности, что позволяет минимизировать долю эмпирического способа обработки неопределенности. Как говорится,
💬 "пять дней кодинга могут сэкономить один день планирования".
По этой же причине, рыночная экономика, в основе которой лежит adaptation (в отличии от плановой экономики), немыслима без кризисов и войн - чтобы истреблять слабо приспособленные формы хозяйствования. Конкуренция генерирует новые формы хозяйствования, а кризисы их сокращают. Т.е. механизм экономической эволюции по своей сути мало чем отличается от механизма биологической эволюции.
Мы можем иметь разное отношение к хищническим способам его функционирования, но он на протяжении веков обеспечивает свою ключевую функцию - сохранение жизни на планете в условиях переменчивости окружающей среды. Да, динозавры, как форма жизни, прекратили свое существование, но сама жизнь на планете продолжается.
И тут мы подошли к ключевой цели Evolutionary Architecture.
Как я уже говорил, архитектурное решение - это сокращение количества возможных вариантов. Robert Martin говорил, что архитектура - это о том, как не надо делать.
Что такое вариант архитектурного решения? Это конфигурация комбинации элементов системы. Что такое система? Это математическая свертка архитектурных решений. Именно поэтому, ADR документирует системный инкремент (т.е. изменение системы), а не саму систему.
💬 A system is never the sum of its parts. It is the product of the interactions of its parts.
-- Dr. Russel Ackoff
Мы подошли к тому, чтобы понять идею автора Evolutionary Architecture. Еще раз выделю главное:
задача эволюции заключается в том, чтобы обеспечить выживаемость путем способствования репродукции наиболее приспособленной (т.е. соответствующей) текущим условиям комбинации ген (или элементов системы, или организационных форм хозяйствования и т.д.).
Продолжение...
Хабр
Темные века разработки программного обеспечения
Пару лет назад я работал в SaaS-компании, которая страдала от всех возможных проблем, связанных с разработкой программного обеспечения . Код был настолько сложным, что внесение простых изменений...
👍4😁1😐1
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Разрешение неопределенности опытным путем не может обладать наивысшим уровнем эффективности потому, что информация о правильности решения (т.е. о соответствии решения текущим условиям) возникает в результате эксперимента. Т.е. часть ресурсов изначально закладывается…
Теперь обратимся к автору Evolutionary Architecture:
💬 Going back to our biological metaphor, evolutionary is about the process of having a system that is fit for purpose and can survive the everchanging environment in which it operates. Systems may have individual adaptations, but as architects, we should care about the overall evolvable system.
Ключевые моменты (еще раз):
1. Изменчивость среды функционирования.
2. Выживаемость.
3. Роль архитектора.
Вот с ролью архитектора не очень пока понятно. Идем дальше:
💬 The authors borrow a concept from evolutionary computing called “fitness functions,” used in genetic
algorithm design to define success. Evolutionary computing includes a
number of mechanisms that allow a solution to gradually emerge via small changes in each generation of the software. At each generation of the solution, the engineer assesses the current state: Is it closer to or further away from the ultimate goal? For example, when using a genetic algorithm to optimize wing design, the fitness function assess wind resistance, weight, air flow, and other characteristics desirable to good wing design. Architects define a fitness function to explain what better is and to help measure when the goal is met. In software, fitness functions check that developers preserve important architectural characteristics.
We use this concept to define architectural fitness functions:
An architectural fitness function provides an objective integrity assessment of some architectural characteristic(s).
Ключевые моменты:
1. В основу идеи положен генетический механизм адаптации форм жизни под изменяемость окружающей среды.
2. Поколение системы (текущая версия системы) основана как на наследовании структурной комбинации предыдущего поколения, так и на её изменении.
3. Инженер оценивает текущий уровень приспособленности системы. Сам термин fitness означает приспособленность, соответствие.
Важный момент - не просто удовлетворяет требованиям, а именно "Is it closer to or further away from the ultimate goal", т.е. является ли он лучше или хуже. Происходит сравнение двух вариантов. Именно этот момент многие не понимают, и это ставит крест на идее эволюции архитектуры.
Многие считают, что назначение fitness functions сводится к тому, чтобы просто протестировать новую версию системы, чтоб она просто прошла заданный набор тестовых кейсов. Это не верно. Их назначение - оценить, насколько лучше или хуже стала новая версия системы. В системе изменилась конфигурация комбинации её элементов (подобно комбинации ген поколения). Зачача архитектора - хищническая, и заключается она в том, чтоб сократить количество вариантов "генетических комбинаций". Вспоминаем, что архитектурное решение есть результат сокращения количества возможных вариантов. Архитектор решает, какой вариант структурной комбинации системы должен умереть и не должен больше воспроизводиться (репродуцироваться) в новых поколениях системы. Происходит то, что называется в биологии "селекция". В результате истребления наименее приспособленного варианта происходит то, что в приведенной цитате называется "to optimize".
После этого решение можно зафиксировать, изменив параметры fitness function на более строгие, соответствующие достигнутым текущей комбинации системы. Таким образом происходит эволюция системы, т.е. повышение уровня соответствия системы текущим условиям. Именно об этом говорит автор:
💬 The systemwide fitness function is crucial for an architecture to be evolutionary, as we need some basis to allow architects to compare and evaluate architectural characteristics against one another. Unlike the more directed fitness functions, architects will likely never try to “evaluate” this systemwide fitness function. Rather, it provides guidelines for prioritizing decisions about the architecture in the future.
Продолжение...
💬 Going back to our biological metaphor, evolutionary is about the process of having a system that is fit for purpose and can survive the everchanging environment in which it operates. Systems may have individual adaptations, but as architects, we should care about the overall evolvable system.
Ключевые моменты (еще раз):
1. Изменчивость среды функционирования.
2. Выживаемость.
3. Роль архитектора.
Вот с ролью архитектора не очень пока понятно. Идем дальше:
💬 The authors borrow a concept from evolutionary computing called “fitness functions,” used in genetic
algorithm design to define success. Evolutionary computing includes a
number of mechanisms that allow a solution to gradually emerge via small changes in each generation of the software. At each generation of the solution, the engineer assesses the current state: Is it closer to or further away from the ultimate goal? For example, when using a genetic algorithm to optimize wing design, the fitness function assess wind resistance, weight, air flow, and other characteristics desirable to good wing design. Architects define a fitness function to explain what better is and to help measure when the goal is met. In software, fitness functions check that developers preserve important architectural characteristics.
We use this concept to define architectural fitness functions:
An architectural fitness function provides an objective integrity assessment of some architectural characteristic(s).
Ключевые моменты:
1. В основу идеи положен генетический механизм адаптации форм жизни под изменяемость окружающей среды.
2. Поколение системы (текущая версия системы) основана как на наследовании структурной комбинации предыдущего поколения, так и на её изменении.
3. Инженер оценивает текущий уровень приспособленности системы. Сам термин fitness означает приспособленность, соответствие.
Важный момент - не просто удовлетворяет требованиям, а именно "Is it closer to or further away from the ultimate goal", т.е. является ли он лучше или хуже. Происходит сравнение двух вариантов. Именно этот момент многие не понимают, и это ставит крест на идее эволюции архитектуры.
Многие считают, что назначение fitness functions сводится к тому, чтобы просто протестировать новую версию системы, чтоб она просто прошла заданный набор тестовых кейсов. Это не верно. Их назначение - оценить, насколько лучше или хуже стала новая версия системы. В системе изменилась конфигурация комбинации её элементов (подобно комбинации ген поколения). Зачача архитектора - хищническая, и заключается она в том, чтоб сократить количество вариантов "генетических комбинаций". Вспоминаем, что архитектурное решение есть результат сокращения количества возможных вариантов. Архитектор решает, какой вариант структурной комбинации системы должен умереть и не должен больше воспроизводиться (репродуцироваться) в новых поколениях системы. Происходит то, что называется в биологии "селекция". В результате истребления наименее приспособленного варианта происходит то, что в приведенной цитате называется "to optimize".
После этого решение можно зафиксировать, изменив параметры fitness function на более строгие, соответствующие достигнутым текущей комбинации системы. Таким образом происходит эволюция системы, т.е. повышение уровня соответствия системы текущим условиям. Именно об этом говорит автор:
💬 The systemwide fitness function is crucial for an architecture to be evolutionary, as we need some basis to allow architects to compare and evaluate architectural characteristics against one another. Unlike the more directed fitness functions, architects will likely never try to “evaluate” this systemwide fitness function. Rather, it provides guidelines for prioritizing decisions about the architecture in the future.
Продолжение...
Telegram
emacsway-log: Software Design, Clean Architecture, DDD, Microservice Architecture, Distributed Systems, XP, Agile, etc.
Генетический механизм репродукции реализует адаптивный способ разрешения неопределенности (когда-то затрагивал эту тему здесь).
Причина его существования заключается в том, что никто не знает какие условия обитания будут на планете завтра. Т.е. имеет место…
Причина его существования заключается в том, что никто не знает какие условия обитания будут на планете завтра. Т.е. имеет место…
👍6❤1