Как пасти котов (Herding Cats: A Primer for Programmers Who Lead Programmers)
Этой книге Ханка Рейнвотера уже 21 год, но в первый раз я прочитал эту книгу где-то 15 лет назад, так как меня заинтересовало название книги.
В то время я был линейным разработчиком и никем особо не руководил, но даже тогда мне показались полезными главы:
2. Как руководить собой - принципы управления своей деятельностью
6. Философия и методы технического лидера - технические принципы и как их доносить до окружающих
7. Закат лидера - антипаттерны руководства и как с ними жить, если у вашего руководителя они проявляются
9. Как ужиться с начальством - стандартный вопрос для многих, т.к. у большинства есть руководители:)
Через некоторое время я стал руководителем группы разработки и прочел эту книгу заново. Интересно, что новыми красками заиграли уже другие главы:
1. Как привыкнуть к роли руководителя - очень важная глава, которая помогает преодолеть переломный момент перехода от технического специалиста к руководителю технических специалистов:)
3. Как вести стаю за собой - новые навыки, которые требуются лидеру
4. Как организовать успех - повышение эффективности своей работы
5. Как вести совещания - как не сжигать время в ненужных или неээфективных встречах
8. Восход лидера - аспекты, присущие лидеру
Лет пять назад я перечитал книгу и понял, что, несмотря на неауктуальность некоторых упоминаемых в книге технологий, основной смысл и содержание книги до сих пор полезны... особенно для людей недавно перешедших от роли линейного сотрудника к роли тимлида команды разработки. Сейчас есть более интересные и актуальные книги, но ради интереса можно почитать эту.
#Management #Leadership #Processes #Culture #Philosophy
Этой книге Ханка Рейнвотера уже 21 год, но в первый раз я прочитал эту книгу где-то 15 лет назад, так как меня заинтересовало название книги.
В то время я был линейным разработчиком и никем особо не руководил, но даже тогда мне показались полезными главы:
2. Как руководить собой - принципы управления своей деятельностью
6. Философия и методы технического лидера - технические принципы и как их доносить до окружающих
7. Закат лидера - антипаттерны руководства и как с ними жить, если у вашего руководителя они проявляются
9. Как ужиться с начальством - стандартный вопрос для многих, т.к. у большинства есть руководители:)
Через некоторое время я стал руководителем группы разработки и прочел эту книгу заново. Интересно, что новыми красками заиграли уже другие главы:
1. Как привыкнуть к роли руководителя - очень важная глава, которая помогает преодолеть переломный момент перехода от технического специалиста к руководителю технических специалистов:)
3. Как вести стаю за собой - новые навыки, которые требуются лидеру
4. Как организовать успех - повышение эффективности своей работы
5. Как вести совещания - как не сжигать время в ненужных или неээфективных встречах
8. Восход лидера - аспекты, присущие лидеру
Лет пять назад я перечитал книгу и понял, что, несмотря на неауктуальность некоторых упоминаемых в книге технологий, основной смысл и содержание книги до сих пор полезны... особенно для людей недавно перешедших от роли линейного сотрудника к роли тимлида команды разработки. Сейчас есть более интересные и актуальные книги, но ради интереса можно почитать эту.
#Management #Leadership #Processes #Culture #Philosophy
👍17🔥5
Platform engineering
Разговоры про платформы в разработке всегда были популярны, но теперь они есть буквально везде. Ниже короткая подборка:)
1) Техрадары от Thoughtworks содержат этот подход с 2017 года, причем у ребят есть разные статусы для того, что они рекомендуют делать
- Статус access был в 2017 году, где они предложили присмотреться к этому подходу
- Статус trial был в 2020 - здесь ребята предложили попробовать
- Статус adopt случился в 2021 - ребята сказали, что надо принять этот подход
- а теперь ребята про это уже не говорят, видимо добавить уже нечго и у всех оно есть:)
Кстати, последний 27 техрадар от Thoughtworks я разбирал в статье на Medium и одновременно рассказывал в чем суть самого подхода.
2) Team Topologies в 2019 году популяризировало этот подход с платформами:) что и привело к тому, что все начали пытаться их делать и случился статус trial в техрадаре thoughtworks 2020
Подробнее про Team Topologies можно почитать в моих статьях, приведенных ниже, но суть была в том, чтобы выделить stream-aligned команды для создания value для бизнеса, а также платформенные команды для создания платформ, что предоставляют правила и тулинг. Авторы описали и другие виды команд, а также рассказали про разные форматы взаимодействия. Моделька показалась полезной и она пошла в мир. Подробнее про сам подход здесь
— — Teams as means of Delivery
— — Team Topologies that work for flow
— — Evolving team interactions for innovation and rapid delivery
3) На фоне этой популярности появился отдельный сайт platformengineering.org, который проводит конференцию PlatformCon 2023 :)
На этом сайте ребята пытаются ответить на вопрос что такое platform engineering и, видимо, рассказать как его делать правильно.
#PlatformEngineering #Management #Processes #Software #SoftwareDevelopment
Разговоры про платформы в разработке всегда были популярны, но теперь они есть буквально везде. Ниже короткая подборка:)
1) Техрадары от Thoughtworks содержат этот подход с 2017 года, причем у ребят есть разные статусы для того, что они рекомендуют делать
- Статус access был в 2017 году, где они предложили присмотреться к этому подходу
- Статус trial был в 2020 - здесь ребята предложили попробовать
- Статус adopt случился в 2021 - ребята сказали, что надо принять этот подход
- а теперь ребята про это уже не говорят, видимо добавить уже нечго и у всех оно есть:)
Кстати, последний 27 техрадар от Thoughtworks я разбирал в статье на Medium и одновременно рассказывал в чем суть самого подхода.
2) Team Topologies в 2019 году популяризировало этот подход с платформами:) что и привело к тому, что все начали пытаться их делать и случился статус trial в техрадаре thoughtworks 2020
Подробнее про Team Topologies можно почитать в моих статьях, приведенных ниже, но суть была в том, чтобы выделить stream-aligned команды для создания value для бизнеса, а также платформенные команды для создания платформ, что предоставляют правила и тулинг. Авторы описали и другие виды команд, а также рассказали про разные форматы взаимодействия. Моделька показалась полезной и она пошла в мир. Подробнее про сам подход здесь
— — Teams as means of Delivery
— — Team Topologies that work for flow
— — Evolving team interactions for innovation and rapid delivery
3) На фоне этой популярности появился отдельный сайт platformengineering.org, который проводит конференцию PlatformCon 2023 :)
На этом сайте ребята пытаются ответить на вопрос что такое platform engineering и, видимо, рассказать как его делать правильно.
#PlatformEngineering #Management #Processes #Software #SoftwareDevelopment
👍11
PostgreSQL 15 изнутри
Эта интересная книга Рогова из Postgres Pro отлично погружает во внутреннюю работу популярной базы данных. Признаюсь честно, что именно эту книгу я еще не читал ... но зато изучил в свое время предыдущее издание, которое называется "Postgres 14 изнутри" и которое стоит у меня дома в бумажном виде на полке:) Кстати, электронную версию книги можно бесплатно получить на сайте Postgres Pro. В книге больше шестиста страниц, которые объединены в 5 частей, приведенных ниже
1. Изоляция и многоверсионность
2. Буферный кеш и журнал
3. Блокировки
4. Выполнение запросов
5. Типы индексов
Кстати, эту книгу про Postgres я начинал изнально читать после изучения "Database Internals" и мне было интересно сравнивать между собой подходы авторов к описанию проблематики:)
#Databases #DistributedSystems #Architecture #SoftwareArchitecture #Software
Эта интересная книга Рогова из Postgres Pro отлично погружает во внутреннюю работу популярной базы данных. Признаюсь честно, что именно эту книгу я еще не читал ... но зато изучил в свое время предыдущее издание, которое называется "Postgres 14 изнутри" и которое стоит у меня дома в бумажном виде на полке:) Кстати, электронную версию книги можно бесплатно получить на сайте Postgres Pro. В книге больше шестиста страниц, которые объединены в 5 частей, приведенных ниже
1. Изоляция и многоверсионность
2. Буферный кеш и журнал
3. Блокировки
4. Выполнение запросов
5. Типы индексов
Кстати, эту книгу про Postgres я начинал изнально читать после изучения "Database Internals" и мне было интересно сравнивать между собой подходы авторов к описанию проблематики:)
#Databases #DistributedSystems #Architecture #SoftwareArchitecture #Software
👍18
Десять дней назад общался с ребятами с канала NextWay про архитектуру и системных аналитиков.
За час с чем-то мы успели обсудить много тем, а вчера появилась запись нашей встречи + списки рекомендаций по тем книгам, что я упоминал в ходе общения.
Подробности в посте авторов канала
#SystemDesign #SoftwareArchitecture #Analyst #Software #Architecture #Career
За час с чем-то мы успели обсудить много тем, а вчера появилась запись нашей встречи + списки рекомендаций по тем книгам, что я упоминал в ходе общения.
Подробности в посте авторов канала
#SystemDesign #SoftwareArchitecture #Analyst #Software #Architecture #Career
Telegram
NextWay - анализ и проектирование в IT
Выложили стрим с Александром Поломодовым - СTO Мобильного Банка и Онлайн Привлечения Tinkoff, автором блога в Medium и канала в Telegram с рекомендациями книг, статей и выступлениями.
Лампово поговорили о карьерном пути Александра, вместе поискали ответы…
Лампово поговорили о карьерном пути Александра, вместе поискали ответы…
🔥8👍6
Code of Architecture - "Distributed Systems, 4th Ed" #5 (Coordination)
Сегодня в 18:00 по Москве мы продолжим обсуждать книгу "Distributed Systems".
В этом выпуски мы обсудим главу про координацию частей распределенной системы.
Предыдущие выпуски были посвящены общему обзору книги, обсуждению архитектуры, процессов, коммуникаций, а теперь мы дошли до обсуждения следующих важных вопросов
- Как синхронизировать часы в разных частях распределенной системы
- Что такое логические часы (logical clocks)
- Как делать взаимные блокировки (mutual exclusion), чтобы совместно использовать ресурсы
- Как можно выбирать лидера (election algorithms)
- Как организовать координацию при помощи сплетен (gossip-based coordination)
- Как работает publish-subscribe в распределенных системах, то есть как распределено делать event matching
- Как оценивать близость двух частей распределенной системы между собой (location systems и GPS в качестве примера)
В выпуске участвуют
- Илья Зонов @ Tinkoff
- Даниил Кулешов @ Tinkoff
- Сергей Гоппиков @ Tinkoff
- Александр Поломодов @ Tinkoff
#SoftwareArchitecture #DistributedSystems #Architecture #SystemDesign #Software #CoA
Сегодня в 18:00 по Москве мы продолжим обсуждать книгу "Distributed Systems".
В этом выпуски мы обсудим главу про координацию частей распределенной системы.
Предыдущие выпуски были посвящены общему обзору книги, обсуждению архитектуры, процессов, коммуникаций, а теперь мы дошли до обсуждения следующих важных вопросов
- Как синхронизировать часы в разных частях распределенной системы
- Что такое логические часы (logical clocks)
- Как делать взаимные блокировки (mutual exclusion), чтобы совместно использовать ресурсы
- Как можно выбирать лидера (election algorithms)
- Как организовать координацию при помощи сплетен (gossip-based coordination)
- Как работает publish-subscribe в распределенных системах, то есть как распределено делать event matching
- Как оценивать близость двух частей распределенной системы между собой (location systems и GPS в качестве примера)
В выпуске участвуют
- Илья Зонов @ Tinkoff
- Даниил Кулешов @ Tinkoff
- Сергей Гоппиков @ Tinkoff
- Александр Поломодов @ Tinkoff
#SoftwareArchitecture #DistributedSystems #Architecture #SystemDesign #Software #CoA
👍13
An Elegant Puzzle. Systems of Engineering Management
Сегодня по дороге из Москвы в Сочи дочитал эту книгу, которую начал читать на этой неделе. Книга оказалась настолько интересной, что я почти не мог от нее оторваться пока летел и дальше ехал до Красной Поляны, куда внезапно уехал на выезд с коллегами:) Эту книгу написал Will Larson, который работал в Digg, Uber, Stripe. Этот же автор написал и книгу "Staff Engineer", которую я обозревал в двух статьях: 1, 2 и поэтому я знал, что чтение будет отборное:)
Сама книга состоит из 7 частей:
1. Introduction - здесь автор рассказывает про свой подход к engineering management
2. Organizations - здесь идет речь про определение размера команд, как оставаться на пути к высокоэффективным командам, как не оптимизировать сверху вниз (часто это работает плохо), как быть продуктивным в быстрорастущих компаниях, как планировать успех
3. Tools - здесь автор рассказывает про системное мышление и упоминает Медоуз с ее "Азбукой системного мышления" (про которую я писал ранее), как быть исполняющим обязанности продакт менеджера, как формлировать vision и strategy, как использовать метрики и baselines для организационного развития, как проводить масштабные миграции, как проводить инженерную организацию (и стоит ли это вообще делать), как формировать свои карьерные нарративы, как подходить к продвижению сложных тем без формального authority с использование подхода model-document-share, как делать презентации топ-менеджменту и управлять своим временем
4. Approaches - как не погрязнуть в управлении исключениями к собственным policies, как говорить нет, формулировать свою философию менеджмента, как понимать где у engineering managers возникают проблемы, как быть в партнерских отношениях со своим менеджером, находить себе зону ответственности и устанавливать направление развития организации
5. Culture - как формировать культуру инклюзивной организации с использованием возможностей и membership, как выбирать лидов проектов, делать своих peers первой командой, как балансировать positive и negative freedoms в культуре компании, отказаться от культуры героев в пользу устойчивого роста
6. Careers - как выстраивать процесс интервью, как проводить холодный sourcing, работать над воронкой найма, использовать performance management для развития уже нанятых сотрудников через понятные карьерные лестницы, как создавать специализированные роли вроде SRE или TPM (technical product manager), как проектировать циклы собеседований для желаемых позиций
7. Appendix - как оперировать в растущей оранизации: на уровне линейного менеджмента, уровне middle management и дальше менеджмента всей организации, а напоследок автор приводит список книг и white papers по интересным для него темам
#Engineering #Management #Leadership #Processes #SystemDesign #SystemThinking #SystemEngineering
Сегодня по дороге из Москвы в Сочи дочитал эту книгу, которую начал читать на этой неделе. Книга оказалась настолько интересной, что я почти не мог от нее оторваться пока летел и дальше ехал до Красной Поляны, куда внезапно уехал на выезд с коллегами:) Эту книгу написал Will Larson, который работал в Digg, Uber, Stripe. Этот же автор написал и книгу "Staff Engineer", которую я обозревал в двух статьях: 1, 2 и поэтому я знал, что чтение будет отборное:)
Сама книга состоит из 7 частей:
1. Introduction - здесь автор рассказывает про свой подход к engineering management
2. Organizations - здесь идет речь про определение размера команд, как оставаться на пути к высокоэффективным командам, как не оптимизировать сверху вниз (часто это работает плохо), как быть продуктивным в быстрорастущих компаниях, как планировать успех
3. Tools - здесь автор рассказывает про системное мышление и упоминает Медоуз с ее "Азбукой системного мышления" (про которую я писал ранее), как быть исполняющим обязанности продакт менеджера, как формлировать vision и strategy, как использовать метрики и baselines для организационного развития, как проводить масштабные миграции, как проводить инженерную организацию (и стоит ли это вообще делать), как формировать свои карьерные нарративы, как подходить к продвижению сложных тем без формального authority с использование подхода model-document-share, как делать презентации топ-менеджменту и управлять своим временем
4. Approaches - как не погрязнуть в управлении исключениями к собственным policies, как говорить нет, формулировать свою философию менеджмента, как понимать где у engineering managers возникают проблемы, как быть в партнерских отношениях со своим менеджером, находить себе зону ответственности и устанавливать направление развития организации
5. Culture - как формировать культуру инклюзивной организации с использованием возможностей и membership, как выбирать лидов проектов, делать своих peers первой командой, как балансировать positive и negative freedoms в культуре компании, отказаться от культуры героев в пользу устойчивого роста
6. Careers - как выстраивать процесс интервью, как проводить холодный sourcing, работать над воронкой найма, использовать performance management для развития уже нанятых сотрудников через понятные карьерные лестницы, как создавать специализированные роли вроде SRE или TPM (technical product manager), как проектировать циклы собеседований для желаемых позиций
7. Appendix - как оперировать в растущей оранизации: на уровне линейного менеджмента, уровне middle management и дальше менеджмента всей организации, а напоследок автор приводит список книг и white papers по интересным для него темам
#Engineering #Management #Leadership #Processes #SystemDesign #SystemThinking #SystemEngineering
👍25
Анонс моего выступления на Teamlead Conf, что будет в конце февраля. Если будете на конференции подходите пообщаться
Forwarded from TeamLead Сonf
⠀
📋 https://vk.cc/clA5d1
⠀
Наем инженеров обсуждается на конференциях довольно часто. Кто-то рассказывает про то, как нанимает за одну встречу, а другие говорят про свои многоэтапные интервью. А вот про наем технических руководителей (teamlead, engineering manager, director of engineering) рассказывают гораздо реже.
⠀
В этом докладе Александр попробует исправить эту несправедливость и поделится историей про то, как это выглядит в Tinkoff. Он расскажет про их этапы интервью, объяснит, зачем они им нужны и что они проверяют, а также даст рекомендации, как к ним подготовиться. Эта информация будет полезна слушателям, даже если они не собираются менять работу, так как она позволит им лучше исполнять роль технического руководителя на текущем месте работы.
⠀
Ждем вас 27 и 28 февраля на TeamLead Conf 2023 🖐
⠀
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8👏5
Вчера мы провели пятый стрим клуба Code of Architecture по книге “Distributed Systems”, в котором мы обсудили вопросы как организовать координацию разных частей распределенной системы между собой, поговорив про
- физические и логические часы
- взаимные блокировки
- выбор лидера
- подход publish-subscribe в распределенных системах
- близость узлов между собой и как ее можно оценивать
Гостями стрима были
- Сергей Гоппиков, руководитель команд платформы открытия продуктов Tinkoff Business
- Даниил Кулешов, архитектор новой системы авторизации для клиентов Тинькофф
Артефакты с этого стрима доступны по ссылкам
- Статья с кратким обзором
- Запись стрима
- Miro доска с презентацией
#SoftwareArchitecture #DistributedSystems #Architecture #SystemDesign #Software #CoA
- физические и логические часы
- взаимные блокировки
- выбор лидера
- подход publish-subscribe в распределенных системах
- близость узлов между собой и как ее можно оценивать
Гостями стрима были
- Сергей Гоппиков, руководитель команд платформы открытия продуктов Tinkoff Business
- Даниил Кулешов, архитектор новой системы авторизации для клиентов Тинькофф
Артефакты с этого стрима доступны по ссылкам
- Статья с кратким обзором
- Запись стрима
- Miro доска с презентацией
#SoftwareArchitecture #DistributedSystems #Architecture #SystemDesign #Software #CoA
Medium
Code of Architecture — “Distributed Systems, 4th Ed” #5 (Coordination)
Это пятый выпуск клуба “Code of Architecture” по книге “Распределенные системы” ван Стина и Таненбаума, в котором мы обсуждаем главу про…
👍13
Domain-Driven Design: Tackling Complexity in the Heart of Software
Это каноническая книга, в которой Эрик Эванс изложил концепцию Domain Driven Design. Про нее часто говорят, но гораздо реже ее начинают читать, а дочитывают до конца только избранные. Возможно, причина этого станет ясна, если посмотреть на приложенные изображения. Но несмотря на сложность, я рекомендую эту книгу к прочтению, хотя сам до конца ее так и не дочитал:))
#DDD #SoftwareArchitecture #Architecture
Это каноническая книга, в которой Эрик Эванс изложил концепцию Domain Driven Design. Про нее часто говорят, но гораздо реже ее начинают читать, а дочитывают до конца только избранные. Возможно, причина этого станет ясна, если посмотреть на приложенные изображения. Но несмотря на сложность, я рекомендую эту книгу к прочтению, хотя сам до конца ее так и не дочитал:))
#DDD #SoftwareArchitecture #Architecture
😁16👍6🤯2🤣2
Designing Distributed Systems
Автор книги является сооснователем kubernetes, поэтому его опыт в проектировании распределенных систем является довольно актуальным:) Книга мне показалось хорошей, но одновременно слишком простой. Но за счет этого она отлично подойдет новичкам вступающим на запутанную дорожку distributed systems:)
Книга состоит из 3х частей:
- одноузловые паттерны проектирования
- паттерны проектирования обслуживающих систем
- паттерны проектирования систем пакетных вычислений
Все паттерны даются в контексте контейнеров и их оркестрации, книга содержит практические примеры, для реализации которых используется инсталляция kubernetes и его примитивы, такие как pods, deployments, services, etc. Ближе к концу книги вы попробуете использовать helm для разворачивания etcd, kafka и иже с ним.
В первой части рассматриваются паттерны:
- sidecar: для https, динамической конфигурации и метрик
- ambassador: для использования шардированного сервиса и для сплита трафика для тестирования разных версий
- adapters: мониторинг, журналирование
Во второй части рассматриваются:
- репликация: для stateless сервсиов, sticky sessions, кеширование, …
- шардирование: консистентный хеш, шардирование реплицированных сервисов, …
- scatter-gather: распределенный поиск по документам
- FaaS и events: преимущества и недостатки FaaS, реализация декораторов на функциях
- ownership election: локи для распределенных систем
В третьей части рассматриваются паттерны проектирования систем пакетных вычислений:
- системы на основе очередей задач
- событийно-ориентированная пакетная обработка
- координированная пакетная обработка
#DistributedSystems #Architecture #SoftwareArchitecture #SystemDesign #Software #SoftwareDevelopment
Автор книги является сооснователем kubernetes, поэтому его опыт в проектировании распределенных систем является довольно актуальным:) Книга мне показалось хорошей, но одновременно слишком простой. Но за счет этого она отлично подойдет новичкам вступающим на запутанную дорожку distributed systems:)
Книга состоит из 3х частей:
- одноузловые паттерны проектирования
- паттерны проектирования обслуживающих систем
- паттерны проектирования систем пакетных вычислений
Все паттерны даются в контексте контейнеров и их оркестрации, книга содержит практические примеры, для реализации которых используется инсталляция kubernetes и его примитивы, такие как pods, deployments, services, etc. Ближе к концу книги вы попробуете использовать helm для разворачивания etcd, kafka и иже с ним.
В первой части рассматриваются паттерны:
- sidecar: для https, динамической конфигурации и метрик
- ambassador: для использования шардированного сервиса и для сплита трафика для тестирования разных версий
- adapters: мониторинг, журналирование
Во второй части рассматриваются:
- репликация: для stateless сервсиов, sticky sessions, кеширование, …
- шардирование: консистентный хеш, шардирование реплицированных сервисов, …
- scatter-gather: распределенный поиск по документам
- FaaS и events: преимущества и недостатки FaaS, реализация декораторов на функциях
- ownership election: локи для распределенных систем
В третьей части рассматриваются паттерны проектирования систем пакетных вычислений:
- системы на основе очередей задач
- событийно-ориентированная пакетная обработка
- координированная пакетная обработка
#DistributedSystems #Architecture #SoftwareArchitecture #SystemDesign #Software #SoftwareDevelopment
👍16🔥4
Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions (Шаблоны интеграции корпоративных приложений. Проектирование, создание и развертывание решений)
Эта классическая книга по паттернам интеграции, которая была издана почти 20 лет назад. Сегодня я решил про нее вспомнить, так как начал читать свеженькую книгу одного из соавторов, а именно Gregor Hophe "The Software Architecture Elevator" и дальше вспомнил, что про паттерны интеграции я еще в этом канале не вспоминал:)
Несмотря на недавнее совершеннолетие данная книга все еще является достаточно актуальной, ну за исключением главы “Новые стандарты и перспективы интеграции корпоративных приложений”:) А если серьезно, то в самом начале книги (2 глава) дается отличный обзор разных стилей интеграции приложений:
- передача файла (file transfer)
- общая база данных (shared database)
- удаленный вызов процедуры (remote procedure invocation)
- обмен сообщениями (messaging)
Для каждого из вариантов обсуждаются плюсы и минусы:) Исходя из названия книги, можно понять, что авторы, оценив и взвесив все варианты, останавливаются на интеграции путем обмена сообщениями.
Дальше авторы рассказывают про составные части системы обмена сообщениями, а в следующих главах подробно рассматривают паттерны для каждой из частей, а именно
- каналы обмена сообщениями
- построение сообщений
- маршрутизация сообщений
- преобразование сообщений
- конечные точки обмена сообщениями
В конце идет речь про вопросы управления системой, которые очень полезно рассмотреть, чтобы не погрязнуть в непроработанных заранее вопросах тестирования и отладки системы. Приятно, что в системе есть 3 практикума, где рассматривается создание несложных систем, с использованием только что рассмотренных паттернов. Изюминкой является рассмотрение процесса проектирования реальной системы по торговле облигациями в главе 13 данной книги.
#SoftwareDevelopment #SoftwareArchitecture #Architecture #SystemEngineering #DistributedSystems #SystemDesign #Patterns
Эта классическая книга по паттернам интеграции, которая была издана почти 20 лет назад. Сегодня я решил про нее вспомнить, так как начал читать свеженькую книгу одного из соавторов, а именно Gregor Hophe "The Software Architecture Elevator" и дальше вспомнил, что про паттерны интеграции я еще в этом канале не вспоминал:)
Несмотря на недавнее совершеннолетие данная книга все еще является достаточно актуальной, ну за исключением главы “Новые стандарты и перспективы интеграции корпоративных приложений”:) А если серьезно, то в самом начале книги (2 глава) дается отличный обзор разных стилей интеграции приложений:
- передача файла (file transfer)
- общая база данных (shared database)
- удаленный вызов процедуры (remote procedure invocation)
- обмен сообщениями (messaging)
Для каждого из вариантов обсуждаются плюсы и минусы:) Исходя из названия книги, можно понять, что авторы, оценив и взвесив все варианты, останавливаются на интеграции путем обмена сообщениями.
Дальше авторы рассказывают про составные части системы обмена сообщениями, а в следующих главах подробно рассматривают паттерны для каждой из частей, а именно
- каналы обмена сообщениями
- построение сообщений
- маршрутизация сообщений
- преобразование сообщений
- конечные точки обмена сообщениями
В конце идет речь про вопросы управления системой, которые очень полезно рассмотреть, чтобы не погрязнуть в непроработанных заранее вопросах тестирования и отладки системы. Приятно, что в системе есть 3 практикума, где рассматривается создание несложных систем, с использованием только что рассмотренных паттернов. Изюминкой является рассмотрение процесса проектирования реальной системы по торговле облигациями в главе 13 данной книги.
#SoftwareDevelopment #SoftwareArchitecture #Architecture #SystemEngineering #DistributedSystems #SystemDesign #Patterns
👍23❤2🔥1
Центральная станция (Central station)
Эта книга Леви Тидхара понравилась мне своей атмосферой будущего. Какого-то одного героя в книге нет, если не считать Станцию, на которой развиваются события и проносится жизнь разных персонажей, совмещающих жизнь в реале и виртуальности. Читать определенно интересно и есть отсылки как к реальным технологиям, достигли нового уровня, например AI, AR/VR, генная инженерия и биотехнологии в общем, так и на другую популярную фантастику. В общем, книга мне показалась заслуживающей прочтения:)
#SciFi
Эта книга Леви Тидхара понравилась мне своей атмосферой будущего. Какого-то одного героя в книге нет, если не считать Станцию, на которой развиваются события и проносится жизнь разных персонажей, совмещающих жизнь в реале и виртуальности. Читать определенно интересно и есть отсылки как к реальным технологиям, достигли нового уровня, например AI, AR/VR, генная инженерия и биотехнологии в общем, так и на другую популярную фантастику. В общем, книга мне показалась заслуживающей прочтения:)
#SciFi
👍16
Computing machinery and intelligence (Вычислительные машины и разум)
Это знаменитая статья Алана Тьюринга опубликованная в 1950 году в журнале Mind. В этой статье автор описал свой подход при поиске ответа на вопрос “Может ли машина мыслить”. Сейчас этот подход зачастую называют тестом Тьюринга, а сам автор назвал это игрой в имитацию. Знакомство с этим подходом сейчас как никогда актуально с учетом новой волны хайпа вокруг чатботов, которые умеют достаточно неплохо вести диалоги с пользователями.
Суть подхода Алана в том, что вопрос “может ли машина мыслить” слишком общий. Для того, чтобы на него ответить придется дать сначала определение того, что такое машина, потом что такое мыслить. Причем определение того, что мы понимаем под мышлением машины и мышлением человека может не совпасть. Поэтому Тьюринг предлагает сделать шаг в сторону и заменить изначальный вопрос на тот, что может быть относительно легко проверен, а именно сможет ли машина отвечать на вопросы человека так, чтобы он счел ее человеком. Если машина на это способна, то она проходит тест, который в наше время называется тестом Тьюринга. Забавно, что большую часть книги автор борется с возможными контраргументами относительно такого перехода и дальше относительно главного вопроса, причем борется успешно.
Чуть больше подробностей про контраргументы можно прочиитать в моей статье на Medium.
Плюс можно посмотреть фильм про Алана Тьюринга "Игра́ в имита́цию" ("The Imitation Game"), в котором рассказывается о вкладе Алана во взлом немецкой Энигмы во время второй мировой войны.
#ComputerScience #AI #PopularScience #ML #Software #Engineering
Это знаменитая статья Алана Тьюринга опубликованная в 1950 году в журнале Mind. В этой статье автор описал свой подход при поиске ответа на вопрос “Может ли машина мыслить”. Сейчас этот подход зачастую называют тестом Тьюринга, а сам автор назвал это игрой в имитацию. Знакомство с этим подходом сейчас как никогда актуально с учетом новой волны хайпа вокруг чатботов, которые умеют достаточно неплохо вести диалоги с пользователями.
Суть подхода Алана в том, что вопрос “может ли машина мыслить” слишком общий. Для того, чтобы на него ответить придется дать сначала определение того, что такое машина, потом что такое мыслить. Причем определение того, что мы понимаем под мышлением машины и мышлением человека может не совпасть. Поэтому Тьюринг предлагает сделать шаг в сторону и заменить изначальный вопрос на тот, что может быть относительно легко проверен, а именно сможет ли машина отвечать на вопросы человека так, чтобы он счел ее человеком. Если машина на это способна, то она проходит тест, который в наше время называется тестом Тьюринга. Забавно, что большую часть книги автор борется с возможными контраргументами относительно такого перехода и дальше относительно главного вопроса, причем борется успешно.
Чуть больше подробностей про контраргументы можно прочиитать в моей статье на Medium.
Плюс можно посмотреть фильм про Алана Тьюринга "Игра́ в имита́цию" ("The Imitation Game"), в котором рассказывается о вкладе Алана во взлом немецкой Энигмы во время второй мировой войны.
#ComputerScience #AI #PopularScience #ML #Software #Engineering
👍12❤1🔥1