Книжный куб
11.1K subscribers
2.65K photos
6 videos
3 files
1.95K links
Рекомендации интересных книг, статей и выступлений от Александра Поломодова (@apolomodov), технического директора и эксперта в архитектуре
Download Telegram
Маленький принц (The little prince)

Перечитал эту книгу Антуана де Сент-Экзюпери в новом издании от МИФ в формате визуальной интерпретации от Клаудии Бордин и в классическом переводе Норы Галь. Иллюстрации в этом издании очень хороши - они отлично подходят к этой аллегорической сказке о дружбе, разлуке, человечности, верности и любви. Перечитывая книгу я вспомнил классические цитаты из этой книги:
- Там хорошо, где нас нет
- Нет в мире совершенства!
- Все взрослые сначала были детьми, только мало кто из них об этом помнит
- Ты навсегда в ответе за того, кого приручил
- Слова только мешают понимать друг друга
- Глаза слепы. Искать надо сердцем
Книга является обязательной классикой, которую приятно читать как детишкам, так и самому - она очень мудрая и добрая.

По мере прочтения вспомнилась жизнь автора, который много лет отдал гражданской авиации. Потом во время второй мировой войны вступил в ряды французской армии и пилотировал военные самолеты. В 1942 году выпустил книгу "Маленький принц", а уже через два года отправился с аэродрома Борго на острове Корсика в разведывательный полёт, из которого не вернулся ... Чем-то эта судьба перекликается с окончанием сказки про маленького принца

P.S.
Есть еще одна цитата, которая мне очень нравится
"Как видно, совершенство достигается не тогда, когда уже нечего прибавить, но когда уже ничего нельзя отнять."
Она очень в тему при размышлениях об архитектуре.

#ForKids #SciFi
11👍7🔥4
Надвигается беда (Something Wicked This Way Comes)

Эта графическая адаптация одноименного романа Рэя Брэдбери, который писал в разных жанрах и известен многим по антиутопии "451 градус по Фаренгейту". Кроме того, у него есть интересная автобиографическая повесть "Вино из одуванчиков", про которое я рассказывал раньше. В предисловии к этой книге Рэй рассказывает о том, что идею этого романа он тоже написал на основе своих детских воспоминаниях о карнавалах и сделал это в виде сценария для Джинна Келли, великого танцора/актера/режиссера. Но сценарий превратить в фильм не получилось и дальше Рей превратил его в роман, который обрел популярность. Кажется, что эта популярность обусловлена тем, что на страницах мы видим адский карнавал, зеркальные лабиринты, метафорическую машину времени в виде вращающейся карусели и двух школьников, которые попали в оборот и никто из взрослых им не верит ...

#SciFi
🔥5👍3
Летняя распродажа издательства Питер

Я не большой фанат переводов издательства Питер, но непереводные книги там ок:)
А если их можно купить за полцены, то это еще лучше. И сейчас как раз такая ситуация у них распродажа до 1 августа, где
- скидка 40% на все бумажные книги по купону — Бумажная книга
- скидка 50% на все электронные книги по купону — Электронная книга

Я планирую вечером полистать что там из научпопа появилось:)
🔥8👍62
Этернавт (The Eternaut)

Этот графический роман Эктора Оэстерхельда и Альберто Бреччиа является культовым аргентинским комиксом, который был создан больше 50 лет назад.
Этот комикс рассказывает про Буэнос-Айрес и группу друзей, которые внезапно оказываются одними из выживших в смертносном снегопаде, который убивает всех, кого касается. Историю рассказывает нам Хуан Салво, чья семья и друзья спаслись от снегопада, укрывшись в доме. Дальше они делают вылазки в пустой город за необходимыми вещами и в какой-то момент за ними приходят представители сопротивления, которые рекрутируют их к сбее. Там они готовятся встретиться с неизвестным противником, которым оказываются не другие люди, чего можно было бы ожидать проведя параллели между снегопадом и ядерной зимой. Нет, противники оказываются еще более зловещими, опасными и непонятными ...
Интересно, что главный герой называет себя ээтернавтом, путешественником по вечности, и только под конец книги мы понимаем как связана ∞ с историей героя.

Помимо крутой истории и атмосферных иллюстраций культовость комикса еще обусловлена тем, что Эктор Оэстерхельд этим романом предсказал приход военной диктатуры в 1976 - 1983 году, герои комикса стали героями сопротивления, а сам автор вместе со своими четырьмя дочками попал в жернова этой диктатуры - в 1977 году аргентинские военные арестовали их и потом их больше никто не видел.

P.S.
Этот графический роман доступен в издательстве Питер и его можно купить на летней распродаже с 40%, правда у меня он уже был до этого:)

#Comics #SciFi
🔥83👍1
Как бороться за внимание клиента — Владимир Посвянский, Тинькофф

Это интересное выступление моего коллеги, Вовы Посвянского, продолжает тему первого свидания с клиентом (об этом рассказывал Вова Тен) и переводит фокус на то, как сделать эти свидания постоянными:)
Вова начал выступление с того, а почему борьба за внимание клиента - это теперь необходимость, чтобы не превратиться в commodity. Вова показывает примеры из сферы банкинга, поисковиков, шоппинга, социальных сетей. Дальше он переходит к обсуждению защитных механизмов от оттока пользователей - так он приходит к понятию вовлечения, которое делит на 2
1. Физическое - конкретные осязаемые преимущества и фичи продукта
2. Метафизические - эмоциональная привязанность
Дальше Вова переходит к тому, как важно быть частью жизни клиента на оттоке клиентов с Tinkoff Black в зависимости от покрытых категорий транзакций. Именно тут появляется упоминание jobs to be done, которые закрываются продуктом. Дальше он переходит к понятию tone of voice, то есть тональности сообщений. которые транслируются от лица компании клиентам. И tone of voice зависит от двух параметров
1. Понимание миссии продукта
2. Понимание целевой аудитории - ценности, ожидания, проблемы
И дальше Вова сравнивает tone of voice разных компаний Aviasales, Яндекс.Драйв, "Два кофейных маньяка", Tinkoff Stories и в конце Tinkoff Travel в сравнении с Aviasales:)
Эта часть заканчивается утверждением того, что правильный tone of voice - это тоже ответственность product менеджера, который должен знать и пользоваться базовыми правилами. Например, базовые подходы к tone of voice в Тинькофф такие
1. Четкий лаконичный посыл
2. От потребности клиента
3. Экспертность, а не маркетинг
4. Актуальность
Когда с tone of voice разобрались, остается еще понять форматы и каналы дистрибуции, а также регулярность коммуникаций и таргет для того, чтобы правильно использовать этот tone of voice:)
Дальше Вова переходит к рассказу о том, как важна настройка продукта под клиента. Здесь появляются квизы, персонализация на прошлом поведении (например, повтор заказа в e-com), помощь в принятии решений (условные системы рекомендаций - подборки фильмов, подборки товаров для дачи, капсулы с одеждой). Все это было про упрощение работы с продуктом и сокращение CJM (customer journey map) так, чтобы пользователь быстрее решил совю job. А дальше Вова начинает рассказывать про удлинение CJM за счет внедрения геймификации, ачивки, челленджи.

Напоследок Вова подводит итоги и выдает рекомендации
1. Выбирайте tone of voice вашего продукта
2. Упрощайте decision making с помощью подборок и персонализации
3. Устраивайте челленджи и внедряйте геймификацию
4. Увеличивайте количество потребностей, которые вы закрываете
чтобы
1. Повышать возвращаемость в продукт
2. Строить эмоциональную связь с клиентом

В итоге, это выступление дает хорошее понимание, чем занимаются ребята в вовлечении:)

#Software #Marketing #ProductManagement
👍73🔥1
Улетаю в Новосибирск через час

В прошлый раз я был в Новосибирске на конференции CodeFest в 2019 году, где рассказывал про "Культура разработки глазами тимлида: переход от монопродукта к экосистеме". В этот раз лечу туда пообщаться с коллегами, поучаствовать в выезде к Обскому морю, а также рассказать за час внутренние новости по моему юниту, а также про наши движения по архитектуре и процессам разработки - я теперь редко куда летаю без того, чтобы там выступить:) За последние полтора года я настолько привык к полетам, что воспринимаю это почти как поездку на такси. Но поездка длинная, поэтому я скачал себе пару книг, несколько whitepapers и взял с собой три бумажные книги - точно не заскучаю в аэропорту:)
👍97🔥5
ArchDays MeetUp - Проектирование БД: От NF к денормализации данных

1 августа в 19:00 по Москве пройдет митап от ArchDays, на котором Антон Цитульский из Тинькофф расскажет доклад про проектирование баз данных. Он начнет с того, как при старте проекта обычно стартуют с нормализованного представления, которое позволяет поддерживать данные в консистентном состоянии. В таком формате проще развивать решение, усложнять модель данных и писать запросы, которые можно делать не боясь joins, так как нагрузка небольшая. Но потом проходит некоторое время, данных становится больше, запросы к данным становятся сложнее в плане объединения таблиц, но предсказуемее, так как основные фичи в продукте уже есть. И в какой-то момент становится полезным подумать над денормализацией данных, а возможно и над разделением того, как и куда данные пишутся и откуда читаются (это уже про read-write paths, о которых подробно говорил Клеппман в своей книге).
В общем, про все это и расскажет Антон, а я немного потизерил его доклад, так как я выступал в качестве ревьювера от программного комитета конфы:)

Регистрируйтесь на этот бесплатный митап и приходите послушать в онлайне.

#Architecture #Software #SoftwareArchitecture #Meetup
🔥1210👍4
Machine Learning: The New AI

Прочитал вчера в самолете эту простую книгу Ethem Alpaydin из серии MIT Press Essential Knowledge series, которая была издана в 2016 году. Читать было достаточно интересно, но стоит отметить, что эта книга для начинающих вкатываться в эту тему - автор очень просто объясняет все концепции без использования сложной математики, но с использованием большого количества примеров. Прочитав эту книгу, вы не научитесь делать ML, но хотя бы поймете что это такое и как его можно применять в реальной жизни.
Подробнее в моей статье.

P.S.
Раньше я уже рассказывал про "Data Science" - другую книгу из этой же серии.

#DataScience #ML #ExternalReview #AI #Software #PopularScience
👍7🔥52
Паттерны объектно-ориентированного проектирования (Design Patterns: Elements of Reusable Object-Oriented Software)

Почти 30 лет назад вышла классическая книга "Design Patterns" от Банды Четырех (Гамма Э., Влиссидес Дж., Джонсон Р. , Хелм Р.). Я прочитал ее в первый раз еще в 2006 году и перечитывал несколько раз с того времени. Помню как мне понравилась структура самого паттерна, как повторяемой архитектурной конструкции в, предлагающая решение проблемы проектирования в рамках некоторого часто возникающего контекста. Плюс интересна была таксономия паттернов по категориям
- Creational patterns - порождающие паттерны, как удобно и безопасно создавать объекты, группы объектов. Примеры шаблонов: абстрактная фабрика, фабричный метод, прототип, singleton, ...
- Structural patterns - структурные паттерны, как строить удобные в поддержке структуры классов. Примеры шаблонов: адаптер, bridge, декоратор, прокси, фасад, ...
- Behavioral patterns - поведенческие паттерны, как организовывать эффективное взаимодействие между объектами. Примеры шаблонов: команда, стратегия, шаблонный метод, visitor, iterator, observer, состояние, ...
По-факту, этот набор шаблонов стал некоторым ubiquitous language для разработчиков при размышлении про проектирование приложений.
Сейчас эта книга является актуальной с точки зрения концепции, но вот примеры с кодом на Smalltalk явно сильно устарели:) Но я ее все равно рекомендую почитать:)

P.S.
Если сделать лирическое отступление, то сам подход родился в 1970х года, когда Кристофер Александер написал книгу про архитектурные шаблоны «Язык шаблонов. Города. Здания. Строительство». Ну а в IT все полетело после того, как Банда Четырех написала книгу, которую мы вспоминаем сейчас:)

#Patterns #Software #SoftwareArchitecture #SoftwareDevelopment #Architecture #SystemDesign
👍165🔥4
Как позаботиться о клиенте с выгодой для продукта — Петр Савостин, Тинькофф

Это полезное выступление моего коллеги, Петра Савостина, которое продолжает темы первого свидания с клиентом, а потом и дальнейшего вовлечения клиента в экосистему.
В самом начале доклада Петр рассказывает о том, что забота - это залог длительных отношений
1. Заинтересовать и удержать
2. Слышать и слушать друг друга
3. Удивлять и предугадывать желания
4. Смотреть на отношения шире
5. Уметь правильно сгладить углы

Дальше Петр переходит к историям и начинает с того, что первое впечатление нельзя произвести дважды. И самые первые моменты в отношениях - самые важные. Тут важно, чтобы
- Чтобы все прошло как можно более гладко и бесшовно
- Сформировать привычку пользоваться продуктом
- Сделать так, чтобы мы стали неотъемлемой частью жизни клиента
Дальше Петр приводит пример Wargaming и первого впечатления. И переходит к рассказу про силу привычки и Aha-момент.

Следующая большая тема - такая метрика клиентского опыта, как ообращаемость. Петр показывает как обращаемость меняется в зависимости от разных этапов жизни клиента в рамках нашего продукта. Дальше пример банка-конкурента, что обещал доставить карту за день, а не доставил за неделю и с ними пришлось общаться чуть ли не каждый день:) После этого примера Петр говорит, что лучший CX - это когда не нужна поддержка (все идет настолько плавно, что не надо обращаться в нее). Но если обращения все-таки случаются, то их надо анализировать. Для этого можно использовать семантическую карту обращений и дальше смотреть на топ категорий и реверс-инжинирить процесс так, чтобы понять причину того, почему пользователям надо обращаться в поддержку. А дальше у вас с большой вероятностью появятся инсайты о том, что можно улучшить. Плюс этот же подход поможет вам отприоритизировать ошибки и баги в ваших приложениях.

Дальше Петр переходит к тому, как удивлять клиента качеством сервиса и здесь он рекомендует
- Действовать проактивно - решать проблему как можно скорее, идеально еще до ее возникновения
- Персонализировать продукт - приложение должно подстраиваться под пользователя
- Делать по-максимуму за клиента без дополнительных вопросов - так называемый contactless service
- Предоставлять self service - сделать так, чтобы клиент мог сделать свои действия сам без обращений в поддержку, а еще желательнее, если это сделает автоматизация под капотом
Дальше Петр приводит примеры из своей практики в Тинькофф: проактивное изменение номера, восстановление карты, проактивные переводы, проактивный бот

Дальше Петр предлагает смотреть шире, чтобы улучшать клиентский опыт за пределами наших продуктов, а скорее от потребностей пользователей. Тут тоже приводятся примеры: калькулятор в переводах, умная камера, поддержка клиентов даже если косяк на другой стороне. Дальше Петр рассказывает про JTBD (Jobs To Be Done) аналитику, которую требуется собирать, чтобы уметь так улучшать опыт.

#ProductManagement #Software #SoftwareDevelopment
👍5👏3🔥2
Книжный клуб "Сибирь на страницах"

Кто о чем, а я о книгах. Гулял сегодня по центру Новосибирска и наткнулся напротив здания оперы на трамвай. Этот трамвай стоял на приколе и служил пристанищем для книжного клуба, в котором были представлены книги про Сибирь от местных издательств. Место было уютным и я не смог уйти без покупок - со мной из трамвая ушло 3 книги
1. Книга с биографиями советских фантастов
2. Графический роман про путешествия в иркутске 19 века
3. Книга про архитектора и дизайнера из Новосибирска, которого сравнили с Леонардо да Винчи
👍1511🔥10
Patterns of Enterprise Application Architecture (Шаблоны корпоративных приложений)

Классическая книга начала века (2002 год) от Мартина Фаулера, которую есть смысл почитать и в наши дни:) Она появилась через 8 лет после книги "Design Patterns" и обобщила подход к паттернам на уровень архитектуры целых приложений. Сама книга про паттерны корпоративных приложений состоит из двух частей: the narratives и the patterns.

1. The Narratives - здесь рассматриваются общие темы
- Layering - здесь авторы рассказывают про разделение на уровнни для борьбы со сложностью программного обеспечения. Основная суть в том, чтобы каждый уровень предоставлял определенную абстракцию посредством интерфейса и уровни взаимодействовали друг с другом через эти интерфейсы. Тут как обычно идет отсылка к сетевой модели OSI и TCP/IP. Здесь же автор рассказывает про 3 принципиальных уровня в корпоративных приложениях: data source, domain, presentation.
- Organizing Domain Logic - здесь автор рассказывает про организацию доменной логики и спойлерит 3 паттерна из второй части: transaction script, domain model, table module. Дальше он их сравнивает между собой и показывает границы применимости. Дальше он рассказывает про service layer, который часто размещают поверх domain model или table module. Дальше уровень представления взаимодействует с доменным уровнем через этот service layer
- Mapping to Relational Databases - здесь речь идет про то, как быть с данными. И на сцену выходят паттерны навроде table data gateway, active record и data mapper. Здесь же обсуждаются вопросы как маппить структуры из реляционных баз данных на модель классов и объектов внутри приложения и как быть конкретно с наследованием
- Web Presentation - здесь автор рассказывает про паттерн MVC (model-view-controller), который был когда-то популярен. Сейчас эта глава выглядит как раритет:)
- Concurrency - краткий рассказ про проблемы конкурентности, execution context, изоляцию и иммутабельность, оптимистичные и пессимистичные блокировки, дедлоки, а также транзакции (и конечно же ACID).
- Session State - здесь речь идет про хранение сессионного состояния на сервере
- Distribution Strategies - про распределенные объекты (distributed object system), которые почили в бозе вместе с CORBA:) Но тут есть актуальные мысли про DTO (data transfer objects) и lazy load.
- Putting It All Together - авторы рассказывают как использовать все описанное выше: стартовать с domain layer, переходить к data source layer и дальше двигаться в сторону presentation layer. Дальше они говорят про конкретные технологии, навроде, J2EE и это звучит приветом из прошлого.

Продолжение в следующем посте.
10👍6🔥1
2. The Patterns - а здесь приводятся паттерны для решения стандартных проблем из областей, разобранных в первой части
- Domain Logic Patterns - здесь речь идет про transaction script (для простой бизнес-логики), domain model, table module, service layer, которые мы обсуждали чуть выше
- Data Source Architectural Patterns - здесь разбираются такие паттерны как: table data gateway, row data gateway, active record,
data mapper
- Object-Relational Behavioral Patterns - здесь приводятся поведенческие паттерны вида: unit of work, identity map, lazy load
- Object-Relational Structural Patterns - здесь разбирается очень много структурных паттернов, многие из которых завязаны на работу с данными, identity field, foreign key mapping, association table mapping, dependent mapping, embedded value, serialized LOB. А также целый набор паттернов для решения проблемы хранения информации о иерархиях наследования в реляционной базе: single table inheritance, class table inheritance, concrete table inheritance, inheritance mappers
- Object-Relational Metadata Mapping Patterns - паттерны для хранения метадаты о связи классов и сущностей в базе: metadata mapping, query object, repository
- Web Presentation Patterns - куча паттернов про представление, но из практики, что была актуальна 20 лет назад: model view controller, page controller, front controller, template view, transform view, two step view, application controller. Если и читать это, то ради исторического экскурса:)
- Distribution Patterns - всего два паттерна для решениия вопроса распределенных объектов: remote facade, DTO (data transfer object)
- Offline Concurrency Patterns - паттерны для работы с конкурентностью: optimistic offline lock, pessimistic offline lock, coarse-grained lock, implicit lock
- Session State Patterns - паттерны относительного хранения состояния сессии клиента: client session state, server session state, database session state
- Base Patterns - базовые паттерны, что не влезли в другие категории: gateway, mapper, layer supertype, separated interface, registry, value object, money, special case, plugin, service stub, record set. Эти паттерны являются достаточно простыми и часто применяются в разных сценариях.

В общем, книга для 2002 года была просто огонь - она рассказывала про подходы к проектированию и решение типовых проблем. Также в рамках серии книг Martin Fowler Signature были выпущены и другие книги, которые развивали эту тему. Например, книга "Enterprise Integration Patterns (Шаблоны интеграции корпоративных приложений)", про которую я рассказывал раньше. Ну а сейчас книга скорее является базой, которую многие изучают по другим книгам, которые вышли позже и рассказывают про актуальные паттерны в контексте конкретной платформы (Java, Kotlin, .Net, Python, ...) и делают это супердоступно.

#Patterns #Software #SoftwareArchitecture #SoftwareDevelopment #Architecture #SystemDesign
🔥11👍64