Попробовали на работе предметно-ориентированное проектирование (Domain Driven Design). Это такой способ построения архитектуры, когда ты (чаще всего с помощью системы типов и ООП) описываешь физическую суть вещей, которые представлены в твоей программе.
Например, если в программе есть объект "Книга", то её нужно снабдить свойствами, которые бывают у книг в реальности: число страниц, автор, язык, тип обложки и т.д. При этом данные свойства должны быть такими, чтобы присвоить им нереалистичные значения было нельзя. Допустим, число страниц не может быть отрицательным (и скорее всего в реальном мире не может быть нулём). При попытке установить отрицательное число страниц программа должна выбросить исключение. А совсем в идеальном случае -- не дать этого сделать программисту на уровне статического анализа кода.
Описав все свойства книги, вы снабжаете её операциями, которые над ней можно сделать. Например, из книги можно вырвать страницу, и при этом число страниц уменьшается. Нет такого случая, когда можно вырвать страницу без изменения числа страниц. Вы строго программируете эту зависимость, делаете у книги метод "Вырвать страницу", а он уже уменьшает число. Кстати, свойство "Число страниц" при этом нельзя переназначить в уже созданной книге. Можно только создать книгу, передав в её конструктор (так называется в программировании функция создания объектов) заданное число страниц. Но поменять число страниц можно только специальными методами "Вырвать страницу" и "Вклеить страницу".
С помощью этого подхода вы гарантируете, что ваши объекты всегда находятся в валидном состоянии -- то есть таком, которое возможно в реальной жизни с объектом, представленным программой.
Плюсы подхода очевидны: меньше число ошибок. Код описывает сам себя, и программист, если не лезет внутрь объекта "Книга", вообще не сможет сделать с книгой ничего недопустимого.
Минусы, думаю, тоже понятны: изначально проектировать сложнее, нужно учесть много нюансов, писать тесты. Время разработки изрядно растёт. Изменение требований даётся дороже: например, если каким-то образом в ваш книжный магазин поступят книги со страницами из кевлара, которые невозможно вырвать :)
Но первый проект с этим подходом мы сдали хорошо, без багов. Лучше, чем многие предыдущие.
#dev
Политика Белого Дома — Л. Томас Блок
ФРС, торговая политика в Азии и промежуточные выборы
— Конгресс уходит на перерыв в связи с Днем поминовения.
— Пауэлл отправится в Белый дом на заседание во вторник.
— Заседание FOMC приближается 14-15 июня, наиболее вероятным представляется повышение ставки на 50 б.п.
— Байден встречается с лидерами Японии, Индии и Австралии для изучения вопросов торгового партнерства.
— Повлияли ли выборы в Джорджии на роль Трампа в Республиканской партии?
#uspolicy
Полные версии всех исследований доступны по подписке
Политика Белого Дома — Л. Томас Блок
— (❗️) Протокол заседания FOMC будет опубликован в среду в 2:00 (21:00 МСК). Фокус на направлении политики ставок.
— Сенатские слушания по Майклу Барру, который станет последним кандидатом Байдена на пост главы ФРБ.
— Промежуточные выборы: Кандидаты, поддерживаемые Трампом, хорошо выступили на прошлой неделе в PA и NC, но некоторые волнения могут быть замечены на этой неделе в GA, где губернатор Кемп, похоже, одержит победу над кандидатом, поддерживаемым Трампом. Но поддерживаемый Трампом кандидат в Сенат Уокер, похоже, тоже идет к победе.
— Помощь Украине демонстрирует растущий раскол в рядах республиканцев.
#uspolicy
Полная версия данного исследования доступна здесь
🇺🇸U.S. AI Memos Reveal a Quiet Convergence with EU Risk Regulation
Two new AI policy memos issued by the White House—M-25-21 and M-25-22—may read like a manifesto for innovation, acceleration, and barrier removal. But beneath the rhetoric lies a nuanced regulatory shift that echoes the EU’s high-risk AI framework. Memo M-25-21, in particular, introduces risk management provisions for “high-impact” AI use cases—defined broadly and open-endedly across six categories, including civil rights, critical infrastructure, and access to essential services.
This flexible and expansive categorization quietly challenges the narrative that the U.S. is lagging in AI governance. In fact, for those familiar with the EU AI Act’s Annex III, the similarities are striking—and in some areas, the U.S. memo is even stricter. A reminder that real regulation doesn't always come with loud announcements.
#AI#AIGovernance#USPolicy
🇺🇸White House Releases National AI Legislative Framework
The White House published a national AI legislative framework aimed at centralizing regulation and preventing U.S. states from enacting their own AI laws. The initiative follows an executive order signed by President Donald Trump in December, which blocked state-level enforcement, and reflects a light-touch federal approach covering areas from data centers to AI-enabled scams.
The framework outlines six objectives for Congress, including tools for parental control over children’s digital presence, streamlined permitting for data centers, and measures to address AI-related fraud. It also proposes balancing intellectual property rights with the need to train AI systems on real-world data and calls for limits on government influence over content moderation by technology providers.
The administration emphasizes sector-specific regulation instead of a single rule-making authority and seeks to preempt state laws governing AI model development. According to White House officials, the framework is intended to support innovation while addressing safety risks associated with broader AI deployment.
#AIRegulation#USpolicy#AIgovernance#TechLaw#ArtificialIntelligence
🇺🇸California Moves to Tighten AI Standards in State Procurement
California Governor Gavin Newsom signed an executive order to strengthen requirements for AI companies seeking to work with the state. The order directs the development of stricter procurement standards, requiring vendors to demonstrate responsible AI policies and meet privacy and security benchmarks to prevent misuse of their technologies.
The initiative contrasts with recent federal actions rolling back AI-related protections. It also expands the state’s use of generative AI in public services, including tools designed to help residents navigate government programs and benefits based on life events such as employment or starting a business.
#AIRegulation#USpolicy#AIethics#PublicSectorAI#DataProtection
Over the past century, oil has played an outsized role in Venezuela. It is no wonder that the United States, in its neverending regime-change plots, chose to target this crucial sector with crushing sanctions.
Our latest video examines the crude reality of coercive measures against the Venezuelan oil industry.
#Venezuela#Sanctions#USPolicy#VenezuelanOil#OilIndustry
https://youtu.be/lwcB4Z9jwGA
🇺🇸U.S. Department of Labor Launches “Make America AI-Ready” Initiative
The U.S. Department of Labor announced the “Make America AI-Ready” initiative, a free AI literacy course designed to provide workers with foundational AI skills. The program delivers training via text messages, allowing users to complete the course in seven days with daily 10-minute sessions, aiming to ensure accessibility, including for individuals without reliable internet or devices.
Developed in partnership with education technology company Arist, the initiative aligns with the White House’s AI Action Plan and America’s Talent Strategy. The course covers five areas: understanding AI principles, exploring use cases, directing AI through prompts, evaluating outputs, and responsible use. According to officials, the program is intended to prepare workers for an AI-driven economy and expand access to AI-related skills and opportunities.
#AIRegulation#AILiteracy#FutureOfWork#USpolicy#AIgovernance