Книжный куб
11.1K subscribers
2.66K photos
6 videos
3 files
1.96K links
Рекомендации интересных книг, статей и выступлений от Александра Поломодова (@apolomodov), технического директора и эксперта в архитектуре
Download Telegram
[2/2] Feeding the Machine (Как кормят машину) (Рубрика #AI)

Продолжая обзор книги про закулисье AI, расскажу про остальные главы.

2) The Engineer (инженер) - здесь мы переносимся в Лондон и наблюдаем за работой AI engineer, который обучает модели. Ради попадания в сроки приходится идти на компромиссы по безопасности и качеству, а ради удешевления процесса аутсорсить его в африканские страны.
3) The Technician (техник) - здесь мы попадаем в Исландию, где теперь популярно строить датацентры из-за правильного климата. Мы смотрим на все глазами техника в датацентре, который поддерживает работу машин. А дальше авторы разбирают то, как устроен рынок датацентров и электричества для них сейчас, а также рассказывают о паутине из оптоволокна, что связывает все это воедино (и значительной частью этой ключевой инфраструктуры владеют мультинациональные бигтех компании, что усиливает их переговорное плечо с любым правительством - они почти сами себе правительства и государства)
4) The Artist (артист) - здесь рассказывается банальная история про актера озвучки, что подписала контракт на озвучку с передачей полных прав. А дальше этот голос был оцифрован и использован для генерации искусственного голоса и text-to-speech задач. Дальше авторы рассказывают, что по всему миру такая практика применяется все чаще, что, фактически, приводит артистов к конкуренции с цифровыми версиями самих себя
5) The Operator (оператор) - здесь речь идет про операторов на складе Amazon, где ими управляет AI, который составляет рабочий план, контролирует его исполнение и так далее. В общем, весь их распорядок контролируют системы мониторинга производительности. Тут авторы проводят параллели между современными практиками и историческими аналогами вроде конвейеров Форда. А мне вспомнилась книга "Nomadland" ("Земля кочевников"), о которой я писал раньше
6) The Investor (инвестор) - Глава анализирует дилемму инвесторов технологических компаний, вынужденных балансировать между этическими соображениями и стремлением к прибыли, демонстрируя внутренние противоречия капитализма в сфере высоких технологий. Вообще, тут появляется единственный персонаж, из описанных в книге, кто получает бенефиты от машины извлечения и рад сложившемуся порядку. Собственно, это инвестор из Кремниевой Долины, который начинал как сотрудник НКО, а потом бросил все это ради зарабатывания денег. В итоге, он делает все, чтобы стартапы в его портфеле росли, даже если нужно выжимать все соки из аутсорсеров из третьих стран.
7) The Organiser - рассказ начинается с организатора профсоюза разметчиков данных, а дальше рассматриваются стратегии коллективных действий и организации труда, направленные на улучшение условий работы в индустрии искусственного интеллекта.
😍 Rewiring the Machine - здесь авторы предлагают конкретные рекомендации по реформированию систем искусственного интеллекта в сторону большей прозрачности и справедливости путем расширения прав работников и повышения ответственности технологических корпораций.

В общем, авторы показывают, что искусственный интеллект не является нейтральной или полностью автоматизированной технологией. Напротив, это «машина извлечения» (extraction machine), зависящая от огромного количества человеческого труда, который часто остается скрытым от общественности. Они рассказывают про системную эксплуатацию работников в глобальных цепочках поставок, питающих технологии AI, проводя параллели с историческими формами эксплуатации по признакам расы, пола и колониального наследия. Но они не просто сгущают краски, но и выступают за повышение прозрачности процессов разработки AI-технологий, расширение прав работников через профсоюзы и коллективные действия для привлечения крупных технологических компаний к ответственности и построения более справедливого цифрового будущего ... Но я думаю, что призыв останется без ответаа и мы увидим дальнейшее движение AI параллельными треками: хищно капиталистическим в США и неотвратимо социалистическим в Китае. Интересно будет посмотреть какой подход возьмет вверх.

#AI #Software #Management #Processes #Productivity
👍9🔥43
Five Global Trends in Business and Society in 2025 (Рубрика #Management)

Наконец-то прочитал список топ-рисков от INSEAD на 2025 год. Я теперь подписан на часть их рассылок, так как четыре года назад я учился MBA в рамках кастомной программы для Т-Банка, где нам преподавали часть модулей ребята из INSEAD, а часть ребята из Сколково. Собственно, профессура INSEAD устраивает опросы выпускников насчет рисков на кратко-, средне- и долгосрочный период, а потом публикует такие отчеты. Отчет на 2025 год вышел в конце января и сейчас уже можно сравнить с тем, как все развивается. Ребята выделили 5 топ-рисков
1) Climate change - авторы отмечали в прогнозе экстремальные погодные явления, потеря биоразнообразия и коллапс экосистем, изменения земных систем и нехватка природных ресурсов.
2) Geopolitical crises - авторы предсказывали высокий риск вооруженных конфликтов (прокси-войны, гражданские войны, перевороты и терроризм). Ухудшение отношений между США и Китаем, усиление протекционизма и снижение международного сотрудничества. Рост напряженности в регионах (Украина, Ближний Восток, Тайвань). Все примерно туда и идет
3) Income and wealth inequality - авторы говорят про неравенство, которое усиливает поляризацию общества и подрывает социальную стабильность. Сохраняется высокий уровень инфляции на продовольствие в развивающихся странах. Сохраняется высокий уровень бедности: почти 700 миллионов человек живут в крайней бедности.
4) Social instability - авторы говорят про усиление поляризации общества из-за распространения дезинформации и недоверия к лидерам. Собственно, люди уже не верят в рассказы политиков, бизнесменов и журналистов, а сверху еще добавляется дезинформация и дипфейки от Gen AI.
5) Inflation or recession - Хотя глобальная инфляция снижается, она остается высокой в некоторых развивающихся странах. Экономический спад остается значительным риском для бизнеса.

В общем, кажется, что риски были выделены правильно и все предсказанное похоже на правду ... (только вот что с этим делать?)

#Management #Processes #Culture #Leadership
3👍1👎1🔥1
[1/3] AI Leadership Summit 2025 - AI Leadership (Рубрика #AI)

С интересом я посмотрел видео первого дня AI саммита, что про проходил недавно в Нью-Йорке. В этот день были обзорные рассказы инвесторов из AI фондов, что вкладываются в AI, а также основателей стартапов или представителей крупных компаний, что сейчас активно экспериментируют с Gen AI технологиями. Отдельно отмечу, что очень неудобно, когда все выступления скомпонованы в одном видео, которое я смотрел неделю по утрам:) Поделюсь с вами кратким рассказом о том, какие доклады были в рамках этой конференции

Lux Capital: Trends in 2025 (00:17:20)
Грейс Исорд из Lux Capital представила обзор текущего состояния ИИ. Она отметила экспоненциальный рост технологий ИИ за последние 2,5 года, упомянула про Stargate, OpenAI и DeepSeek, а дальше ушла в обсуждение "момента ИИ-агентов" и отметила, что автономные агенты пока не работают идеально из-за разного вида ошибок и показала это на примере агента, что помогал ей с заказом билетов на конфу
- Decision error - wrong facts (спутан рейс)
- Implementation error - wrong access/integration (нужно преодолевать CAPTCHA)
- Heuristic error - wrong criteria (не учитывался трафик по пути в аэропорт)
- Taste error - wrong personal preferences (спикер не готова летать Boeing 737)
Она описала пять стратегий для улучшения агентов:
- Data curation (курирование данных)
- Important of evals (важность оценки)
- Scaffolding systems (создание надежных систем)
- UX is the moat that matters (UX - имеет основное значение)
- Mutlimodality (мультимодальность.)

AI-execs: Building an AI Strategy That Fails (00:35:11)
Ироничный доклад от двух топов о том, как создать AI стратегию, которая провалится. Рассказ в форме книги "Вредные советы" от Григория Остера, которую я любил читать в детстве. Спикеры описали распространенные ошибки: создание разрозненных команд, неясное определение стратегии, использование непонятного жаргона, неправильное распределение задач, фокус на инструментах вместо процессов и игнорирование данных. Фактически, действуя от обратного, можно избежать многих проблем при разработке AI-стратегии.

Privacera: Building with AI Safety and Security (00:52:05)
Дон Боско Дури, сооснователь и CTO Privacera, рассказал о безопасности и надежности AI-агентов. Он объяснил, что агенты, задачи и инструменты обычно работают в одном процессе OS, что создает проблемы безопасности. Дури предложил трехуровневый подход: оценка рисков перед внедрением, обеспечение правильной аутентификации и авторизации, и наблюдение за работой агентов в реальном времени.

Augment Code: Self-Coding Agents (01:10:07)
Колин Флэри из Augment Code продемонстрировал AI-агента, который помогает писать свой собственный код. Более 90% из 20,000 строк кода их агента было написано самим агентом под наблюдением человека. Агент смог добавлять интеграции с третьими сторонами, писать тесты и даже оптимизировать собственную производительность. Флэри подчеркнул важность контекстного движка, возможностей рассуждения и безопасной среды выполнения кода.

Neo4j: Knowledge Graphs (02:07:32)
Стеф Чин из Neo4j и Джонатан Лоу из Pfizer обсудили использование графовых баз данных для улучшения RAG-систем. Лоу рассказал о проекте в Pfizer, где графовые базы данных помогли ускорить передачу технологий от лабораторных исследований к промышленному производству лекарств. Они объяснили, как графовые базы данных обеспечивают лучший контекст для LLM и уменьшают галлюцинации. На самом деле рассказ похож просто на промо комбинации использования эмбеддингов для документов + дополнительных связей между сами медицинскими документами, что можно хранить в виде связей в графе.

Продолжение обзора конференции AI Summit в следующих постах.

#AI #Software #Product #Management #Leadership
🔥85👍1
Винни Пух (The many adventures of Winnie the Pooh)

На днях читал детям перед сном книгу 2002 года про классического Винни Пуха из мультиков Диснея. Детишкам было скучновато поначалу, так как они эти мультики и не видели особо, а вот мы с женой вспоминали детство:) Неожиданно, книга очень хорошо сохранилась и все рисунки очень яркие и красивые. В книге есть классические истории
- Винни-Пух и пчелы
- Как Винни-Пух ходил в гости
- Большая буря
- Как Кролик решил проучить Тигру
- Как Тигра залез на дерево
Я помню, как в детстве мультики Диснея показывали по телевизору по выходным и важно было вернуться с прогулки, чтобы увидеть любимых героев. А сейчас вокруг столько развлечений, что старые герои выглядят слишком олдскульнно и проигрывают конкуренцию новым анимированным героям. Но в формате сказок на ночь детей все еще можно знакомить с Кристофером Робином, Винни-Пухом и всеми остальными зверями:)

#ForKids
🔥98👍8
[3/3] A Prompt Pattern Sequence Approach to Apply Generative AI in Assisting Software Architecture Decision-making (Рубрика #Architecture)

Продолжим рассмотрение (1 и 2) whitepaper на тему использования Gen AI в архитектуре, начатый в первом посте, рассмотрением паттернов промтинга.

4) Technical Premises Pattern
Использование генеративного ИИ может привести к проблемам галлюцинаций, которые иногда могут решить LLM. Но при проектировании обеспечение точности и надежности данных, используемых в архитектурных решениях, имеет важное значение для успеха любого проекта. Этот паттерн помогает проверить технические предпосылки, приведенные LLM, чтобы гарантировать точность и надежность информации, используемой при принятии необходимых архитектурных решений?
В итоге, болванка паттерна представлена ниже, где list of technical premises предоставляется LLM и относится к -ilities проекта
[Context] and [List of Technical Premises]. From now on, make sure that when generating a response, the AI language model creates a set of specific facts for each technical premise and justification for each architectural decision-making. These facts should be verified and listed at the end of the output.

А пример конкретного промпта и ответа выглядит так

5) Uncertain Requirement Statement Pattern
Неопределенности в требованиях к проекту могут существенно повлиять на архитектуру программного обеспечения и привести к рискам в дальнейшем.Чтобы смягчить эти последствия, архитекторам стоит делать прогнозы относительно реализации требований, которые изначально не были запланированы или являются неопределенными. Этот паттерн помогает учесть эти неявные требования В итоге, болванка паттерна представлена ниже
Statement Template: In [Project Context], and [Uncertain Aspect].Examine the potential repercussions of not adequately addressing these uncertainties in the system architecture. This assessment will inform our strategic planning and decision-making in software architecture for mitigation, emphasizing creating a system that is not only technologically advanced but also flexible and responsive to regulatory and technological changes.

6) Prompt Pattern Sequence

Последний паттерн из этой статьи рассказывает о том, как собрать цепочку из вызовов предыдущих паттернов для анализа архитектуры. Ребята предлагают использовать их в таком порядке
1. Define the Role and Objective of the Architect
2. Applying the Software Architect Persona
3. Evaluate Technical Premises
4. Unclear Requirements with Uncertain Requirement Statement
5. Refining Quality Attributes with Quality Attribute Question
6. Budget and Resources Defined with Architectural Project Context
7. Evaluate Results

В статье авторы привели примеры всех цепочек промптов для трех use cases, описанных в самом начале
- Prompt Pattern Sequence for Brazilian Financial Bank
- Prompt Pattern Sequence for Brazilian Pharmacies Nationwide
- Prompt Pattern Sequence for CRM Application Cloud-Based for a Startup

В заключении авторы говорят о том, что
Pattern-based Prompt Sequence advocated a strategic approach to leveraging generative AI to assist software architects in navigating decision-making processes.
Как по мне, это движение в правильном направлении для создания co-architect, который помогает опытным инженерам размышлять над архитектурой в их проекте/продукте, но пока получившиеся цепочки промптов выглядят очень общими - как будто пообщался с консультантами из мира разработки:) Интересно, а что будет если дотюнить модельку и обучить ее внутри-компанейской специфики через RAG или fine tune ... Пока не ясно, но хотелось бы попробовать что-то у себя внутри компании.

#Architecture #GenAI #AI #ML #Software #Engineering #SystemDesign #DistributedSystems #Project
👍10🔥43
2 гига спустя - эпизод второй (Рубрика #News)

Второй выпуск подкаста с лайтовым обсуждением новостей двумя ведущими
- Антон Костерин, заместитель технического директора в Т
- Александр Поломодов, технический директор в Т

Мы успели обсудить 6 интересных новостей, описанных ниже
0) Бесконечные созвоны на работе вызывают сравнимый с похмельем эффект. Исследование HBR
1) iRobot и умный дом, что легко может стать не таким умным, если создатель умных устройств банкротится (или пока только готовится к нему)
2) Предсказание Dario Amodei, CEO Anthropic, о будущем написании кода. Я уже про это рассказывал отдельно
3) Награда "ACM A.M. Turing Award" была вручена Эндрю Барто и Ричард Саттон за reinforcement learning. Я уже про это рассказывал отдельно
4) Про статистику единорогов от Crunchbase
5) Китай анонсирует производство супер-быстрых чипов без кремния (fastest-ever chip technology)

Выпуск подкаста доступен в Youtube, VK Video, Podster.fm, Ya Music.

#Management #AI #Software #Engineering #Reliability #Processes #Productivity
6🔥3👍2
[2/3] AI Leadership Summit 2025 - AI Leadership (Рубрика #AI)

Продолжая рассказ об этой конференции, поделюсь следующей порцией докладов

Booking.com: Agents With Real ROI (02:28:27)
Бруно Пасос из booking.com и Бьянг из Sourcegraph рассказали о внедрении AI-агентов в booking.com. Изначальным KPI было количество сохраненных часов с использованием Gen AI, потом ребята экспериментировали с подходами и уточнили KPI. Получилась примерно следующая картина
- Lead time for change (short term): time to review, time to debug (error log summary), time to merge
- Quality (mid term): vulnerability reduction, test coverage, reduce change fail rate
- Codebase insights (mid term): track dead code, not performant (redundant queries), replatforming
- Tech modernization (long term): monolith reduction, feature flag cleaned (а в booking из-за большого количества экспериментов таких флагов очень много)
Ребята сделали GraphQL Query Generator, так как у них достаточно большая и развесистая поверхность GraphQL API. Также они работали над автоматизированной миграцией кода и получили хорошие результаты. Также ребята работали над улучшение Code Review. К концу года все это помогло разработчикам создавать на 30% merge requests, а ключевым фактором успеха было обучение разработчиков работе с этими инструментами.

Writer: Evaluating LLMs for Financial Scenarios (02:49:31)
Васим Алик из Writer представил результаты оценки LLM для финансовых сценариев. Они создали набор данных FAIL для оценки моделей в реальных сценариях с ошибками запросов и контекста. Исследование показало, что даже лучшие "думающие" модели часто дают ответы с высоким уровнем галлюцинаций, когда контекст неверен или отсутствует. Алик заключил, что специализированные доменные модели по-прежнему необходимы, несмотря на высокую точность общих моделей.

OpenAI: OpenAI for VPs (03:01:34)
Представители OpenAI рассказали о стратегии внедрения их технологий в предприятия из трех фаз
- Создание AI-грамотной рабочей силы (с помощью ChatGPT)
- Автоматизация внутренних операций (с помощью API)
- Интеграция ИИ в конечные продукты
Они подчеркнули важность согласования AI-стратегии с общей бизнес-стратегией.

OpenAI: Building Agents the Right Way (03:09:47)
Представители OpenAI рассказали о правильных подходах к созданию AI-агентов, где есть три ключевых компонента:
- Надежного контекстного движка
- Высококачественной модели рассуждения
- Безопасной среды выполнения кода
Были представлены примеры успешных внедрений агентов в предприятиях, где автоматизировали рутины и повышали эффективность.

Frontier Feud (04:25:41)
Панель в виде игры 100 к 1, где надо было угадывать ответы на вопросы. Началось все с самых известных AI ученых, а дальше перешли к "top considerations when choosing model" и так далее. В общем, активность была чисто фановая для участников, но около-бесполезная для зрителей.

Reuters: Missing Pieces of Workflow Automation (04:51:29)
Представители Reuters поделились опытом внедрения AI для автоматизации рабочих процессов в медиа-индустрии. Они выделили ключевые "недостающие элементы" успешной автоматизации: интеграцию с существующими системами, обучение сотрудников, управление ожиданиями и создание четких метрик успеха. Особое внимание было уделено тому, как AI помогает журналистам обрабатывать большие объемы информации и быстрее создавать качественный контент.

Arize: Evaluating Agents (05:06:07)
Доклад был про методологию оценки эффективности AI-агентов, что собственно и составляет продукт Arize. Причему спикер начала с рассказа про закрытие C раунда финансирования, а дальше представила различные метрики и подходы к тестированию, включая оценку точности, скорости, устойчивости к ошибкам и способности следовать инструкциям. Докладчики подчеркнули важность создания комплексных систем оценки, которые учитывают как технические аспекты работы агентов, так и их практическую полезность для конечных пользователей.

Окончание разбора первого дня саммита в последнем посте.

#AI #Software #Product #Management #Leadership
👍103🔥1
More than a quarter of computer-programming jobs just vanished. What happened? (Рубрика #AI)

Ребята из Washington Post проанализировали статистику по рынку труда в США и выяснили, что количество позиций для программистов (programmers) за последние два года значительно снизилось. Если внимательно почитать статью, то видно, что ребята смотрят на классификацию специальностей в США, где программист (programmer) и разработчик (software developer) разделены официально. В правительственной классификации программисты выполняют рутинную работу, тогда как гораздо более многочисленные - и гораздо быстрее растущие - разработчики программного обеспечения обладают более широкими обязанностями. Они работают с выяснениями потребностей клиентов, проектированием решений, написанием кода и его поддержкой. Для меня разница примерно такая
- Программист (programmer) - пишет код по требованиям, отдает инженерам на тестирование, ничего не знает про эксплуатацию
- Разработчик (software developer) - работает над продуктом end2end от требований до эксплуатации своего решения
Первые есть преимущественно в компаниях с функциональными колодцами, вторые - в продуктовых компаниях с хорошими инженерными процессами. Тогда очевидна и разница в медианной зарплате, что в 2023 отличалсь почти на треть ~100k $ против ~132k.

Если возвращаться к самой статье, то в ней авторы показывают на графиках как это происходило в последние 2 года и связывают это с развитием Gen AI. Отдельно они отмечают, что это не первый раз, когда программисты сильнее всего страдают от автоматизации. С 2003 года Бюро статистики труда (BLS) начало различать программистов и разработчиков и программисты постоянно сталкивались с трудностями, в то время как количество вакансий для разработчиков росло и продолжало расти. С каждой новой инновацией, упрощающей кодирование или уменьшающей его необходимость - будь то сервисы для выполнения рутинных задач, аутсорсинг, бесплатные инструменты с открытым исходным кодом, облачные серверы и вычисления, - разработчики брали на себя все больше работы, которая раньше принадлежала исключительно программистам.

В общем, будьте разработчиками, а не программистами и автоматизация не сократит ваше место, а поможет более эффективно решать свои задачи:)

#Management #AI #Software #Engineering #Reliability #Processes #Productivity
🔥14👍64
На ход впереди Noôdome (Рубрика #Culture)

Был вчера на мероприятии "На ход впереди", которое организовывал наш T-Private совместно с чемпионом Европы по шахматам Эрнесто Инаркиевым. Гостем встречи был Дин Лижэнь, китайский гроссмейстер, чемпиона мира по шахматам и двукратного победителя Всемирной шахматной олимпиады. Первой частью встречи было интервью, что Дин Дижень давал Эрнесто Инаркиеву. В нем обсуждались вопросы о том, какие факторы помогли Дину достичь вершины шахматной карьеры, как он организовывал свою работу и какие у него планы на будущее. Определенно, интервью было интересным, но еще интереснее была вторая часть встречи, где Дин дал сеанс одновременной игры на 20 досках. Я занял одну из досок и ходов за тридцать получил мат, а после игры еще и автограф:) В промежутках перед началом встречи и после окончания сеанса мне удалось пообщаться с коллегами, а также Эрнесто Инаркиевым, у которого я пару лет назад брал личные уроки в рамках его программы "Эффективное мышление" и его коллегой, Валерой Решетниковым, с которым они вместе развивают проект lifescience.pro. В общем, мне очень понравился этот вечер.

#Culture #Chess #Management #Leadership
👍236🔥2👏1
Уровни моделирования в UML и почему их всего 4, а не больше (Рубрика #Architecture)

Я уже рассказывал про то, как учил UML (1 и 2), а сегодня я хотел рассказать про уровни моделирования в UML и почему их только четыре, а не больше. Давайте сразу я опишу все эти уровни
- M0 - Real World/Instances - Реальный мир (Объекты)
Этот уровень представляет фактические экземпляры или объекты в реальной системе. Диаграмма объектов считается моделью уровня 0, которая является экземпляром диаграммы классов. Она показывает конкретные экземпляры объектов и их отношения в определенный момент времени.
- M1 - Models (Модель)
Этот уровень содержит фактические модели UML, созданные пользователями для представления систем. Диаграммы классов являются примерами моделей уровня 1 (M1). Эти модели содержат элементы моделирования, такие как актеры, варианты использования, классы и пакеты, которые описывают конкретные перспективы системы. Собственно, про них я рассказывал в посте "Полезные диаграммы из UML"
- M2 - Metamodel - Метамодель (Правила создания моделей)
Сама спецификация UML существует на этом уровне. Это метамодель, которая определяет язык и структуру, используемые для создания моделей UML. Уровень M2 определяет такие понятия, как "Класс", "Ассоциация" и "Атрибут", которые используются для создания моделей M1.
- M3 - Meta-metamodel - Мета-метамодель
Этот высший уровень представлен Meta-Object Facility (MOF), который предоставляет язык для спецификации метамоделей. MOF может использоваться как мета-метамодель не только для UML, но и для других языков. Эта иерархическая структура следует принципу "модель является экземпляром метамодели" и "метамодель является моделью", создавая последовательную структуру для моделирования на разных уровнях абстракции.

Из построения кажется, что можно добавить и следующий уровень в виде meta-meta-metamodel, но авторы UML остановились на 4 уровнях по нескольким причинам
- Самоописание MOF (Meta-Object Facility)
На уровне M3 находится MOF, который является самоописывающим. Это означает, что MOF определяется с помощью своих же собственных конструкций. Мета-метамодель MOF описывает сама себя, что устраняет необходимость в дополнительном уровне абстракции. Такой подход называется "рефлексивным" или "самоописывающим".
- Предотвращение бесконечной рекурсии
Если бы существовал уровень M4, то логично было бы предположить необходимость уровня M5 для его описания, и так далее до бесконечности. Из-за этого уровень M3 самоописывает себя, поэтому потребности в уровне M4 нет
- Практическая достаточность
Четырех уровней абстракции (M0-M3) достаточно для решения практически всех задач моделирования в программной инженерии. Дополнительные уровни абстракции увеличили бы сложность без значительных практических преимуществ.

Давайте глянем примеры уровней из нескольких областей
M0 - Сотрудник Иван Петров, родившийся 15.03.1990
M1 - Класс "Сотрудник" с полями имя, дата_рождения
M2 - Понятия "Класс", "Атрибут", "Связь" в UML
M3 - "Мета-Класс" - шаблон для классов M2, "Мета-Атрибут" - правило для атрибутов M2.

Или чуть менее формальный пример из строительного сектора
M0 - мебель и люди в комнатах (реальные объекты);
M1 - планы комнат (где стоит стол, как расставлены кровати);
M2 - архитектура здания (сколько этажей, где лестницы);
M3 - строительные нормы (как проектировать здания).

Или пример из области языков
M0 - предложение: "Иван читает книгу";
M1 - правила русского языка (существительные, глаголы);
M2 - лингвистические термины ("фонема", "морфема");
M3 - философия языка ("что такое язык?").

Итого: четырёхуровневая модель UML и MOF обеспечивает баланс между гибкостью и сложностью. Отсутствие пятого уровня — не ограничение, а следствие продуманного дизайна.

#Software #Architect #SystemDesign #SoftwareArchitecture #Processes
👍16🔥43
Распродажа в издательстве «Питер» (Рубрика #Sales)

В издательстве Питер очередная распродажа со скидками в 40% на бумажные книги и 50% на электронные. Для получения этой скидки надо использовать промокод "Бумажная" (или "Электронная", если покупаете элетронную версию) при оформлении заказа. На прошлых распродажах я уже купил себе пачку книг, возможно докуплю еще что-то, но с прошлой распродажи я успел многие из книг прочитал.

Книги, что я уже успел прочитать

- Data mesh в действии - я прочитал эту книгу с прошлой распродажи и даже рассказал уже об этом. До этого я читал частями книгу "Data Mesh: Delivering Data-Driven Value at Scale".
- Грокаем алгоритмы искусcтвенного интеллекта - я прочитал эту книгу недавно, вот пост про нее
- Настоящий CTO: думай как технический директор - я прочитал эту книгу, рассказал про нее, а потом мы даже с Сашей Шевченко записали эпизод подкаста с обсуждением этой книги
- Грокаем Continuous Delivery - интересная и простая книжка от сотрудницы Google про CI/CD, я ее уже успел ее прочитать и рассказать о ней
- Паттерны проектирования API - я начал читать и рассказал про эту книгу + читал whitepapers от автора насчет API Governance в Google (кратенько об этом тут)
- Чистый Python. Тонкости программирования для профи - решил вспомнить теорию по python
- Компьютерные сети. Принципы, технологии, протоколы: Юбилейное издание, дополненное и исправленное - я уже как-то читал книгу Олиферов, но это было много лет назад и она была ок. Сейчас я прочитал 150 страничек из нового издания и могу сказать, что книга не ухудшилась:)
- Гейм-дизайн: как создаются игры - эта книга про геймдизайн, про который я и до этого много читал и писал (1, 2, 3), а сейчас я уже прочитал и рассказал об этом
- Разработка приложений на базе GPT-4 и ChatGPT - базовая книга про chatGPT, я ее уже прочел и даже рассказывал оо ней
- Мифический человеко-месяц, или Как создаются программные системы - классическая книга Фредерика Брукса, которая в следующем году справляет свой юбилей. Я раньше уже рассказывал про эту книгу
- Распределенные данные. Алгоритмы работы современных систем хранения информации - в девичестве на английском эта книга Алекса Петрова называлась Database Internals и я про нее много рассказывал (1 и 2), а также мы ее обсуждали в подкасте "Code of Architecture"
- Безопасные и надежные системы: Лучшие практики проектирования, внедрения и обслуживания как в Google - эту книгу я читал в оригинале и она называлась "Building secure and reliable systems", а также уже рассказывал про нее.

Книги, что мне еще предстоит прочитать
- README. Суровые реалии разработчиков - книга про будни разработчиков и практиками инжиниринга
- Software: Ошибки и компромиссы при разработке ПО - эта книга подкупила меня своей второй главой, которая называется "Дублирование кода не всегда плохо".
- Грокаем функциональное программирование - интересно почитать просто про функциональщину
- Дизайн для разработчиков - я довольно много книг читаю про дизайн для дизайнеров (1, 2, 3), а тут хочу посмотреть как это подают разработчикам
- Карьера Software Engineering Manager. Эффективное управление командой разработчиков ПО - в рамках работы над книгой про engineering management полезно изучить другие источники
- Карьера продакт-менеджера. Все что нужно знать для успешной работы в технологической компании - для инженеров и технических руководителей сейчас полезно думать продуктово, особенно если вы работаете не в галере. Яуже писал про книги на эту тему: 1, 2, 3, 4, 5
- Производительность систем - интересная книга о производительности от Brendan Gregg, крутого эксперта, который одновременно много сделал для внедрения eBPF, о чем можно узнать из документалки
- Креативный программист - я решил изучить креативные методы, что могут помочь в решении инженерных задач
- Продвинутые алгоритмы и структуры данных - книжка о самых необходимых алгоритмах решения сложных задач программирования в области анализа данных, машинного обучения и графов. Хочу подтянуть свои знания алгоритмов

#Sales
👍145🔥3