🖥 Проекты

Podlite - легковесный язык разметки, ориентированный на системы электронного издательства, документооборота, документирование программного кода, а так же для других задач, где требуется легкий и гибкий инструментарий для управления знаниями.
Axona – персональная система знаний
  • Пролог и обзор экосистемы Axona

  • Axona Desktop - десктопное приложение для навигации, редактирования и визуализации базы знаний

  • axonaCloud - self-hosted платформа для синхронизации базы знаний, оркестрации и интеграции с AI

🗄 Архив проектов

📄 Информация

Если вы хотите связаться со мной и рассказать о своем проекте, поделится интересной идеей или высказать мнение о каком-то материале на этом сайте, пожалуйста, отправьте мне сообщение на почту: zag(at)cpan.org

Ссылки: rss, github

Недавнее:

Context

Phrasis — embeddable rich-text editor для gov/regulated industries (государственного сектора и регулируемых отраслей). Целевая аудитория ценит:

  • Predictability (предсказуемость) над «excitement» (восторгом)

  • Audit transparency (прозрачность аудита) над «magic» (магией)

  • Stability (стабильность) над «move fast» (быстрое движение)

  • Schema-first explicit (схема-первичная явность) над «implicit» (неявным)

  • User control (контроль пользователя) над «smart defaults» (умными умолчаниями)

Большинство современных дизайн-трендов оптимизированы под противоположную аудиторию (consumer apps, AI startups, viral marketing). Без зафиксированного stance, через 6 месяцев новый contributor увидит trendy patterns и предложит интегрировать — спор начнётся с нуля.

Этот ADR — карта negative space. Что Phrasis отказывается делать, и почему.

Decision

Phrasis отклоняет 12 UI/UX-трендов, сгруппированных в 4 категории.

Category 1: Chrome dominance (доминирование оболочки над контентом)

A1. AI-everywhere chrome. Постоянная AI-панель как primary navigation surface (Cursor / Copilot / ChatGPT-like sidebar dominance). Reject: AI = pluggable assistant, не доминирующая часть. Документ = primary surface. EU: apple-hig-branding-defers-to-content, rams-less-but-better. Revisit: если AI persistent panel станет ≥80% editor usage в data analytics (через 2+ года).

A5. Glassmorphism / neumorphism. Frosted blur backgrounds, soft 3D shadows, translucent overlays. Reject: distracts от контента, fails WCAG contrast, gov stakeholders читают как «несерьёзное». EU: apple-hig-layout-essential-info-sufficient-space, rams-less-but-better, hara-emptiness-affluence-understatement. Revisit: если WCAG AAA contrast достижим через glassmorphism + accent layer.

B2. «AI-native» / «built for AI age» positioning. Брендинг где AI = THE feature. Reject: прямой конфликт с brand-line «with pluggable assistive AI» (AI subordinate). Revisit: если ≥3 gov procurement RFP требуют «AI-native» wording.

B3. Dark mode по умолчанию. Игнорирование OS `prefers-color-scheme`. Reject: respect OS preference. EU: apple-hig-accessibility-universal-design-mandate.

Category 2: User control erosion (эрозия контроля пользователя)

A2. Modal-heavy interactions. Popovers + multi-step modals для базовых задач. Reject: Cooper modes-and-modeless principle. EU: cooper-modes-and-modeless, apple-hig-macos-leverage-large-displays, cooper-excise-and-flow.

A6. Silent AI merge без provenance. AI переписывает текст без attribution. Reject: Gov audit, EU AI Act Article 50 transparency. EU: aicher-spielen-mit-regeln-design-as-constrained-play, lupton-design-as-discourse-not-only-craft. Revisit: никогда — hard requirement для gov compliance.

A10. Hidden auto-formatting «magic». Авто-конвертация Markdown молча, авто-разворачивание сокращений без видимости. Reject: schema-first = явное > неявное. EU: aicher-spielen-mit-regeln-design-as-constrained-play, cooper-input-idioms-vs-metaphors. Revisit: auto-formatting OK если opted in + reversible + audit logged.

B1. Gratuitous micro-interactions (partial reject). Motion только для purposeful state changes (mode transitions). EU: apple-hig-motion-purposeful-not-gratuitous.

Category 3: Architectural lock-ins (архитектурные привязки)

A3. Single-vendor LLM lock-in. Forced OpenAI-only / Anthropic-only. Reject: Gov on-prem requirement, EU AI Act compliance, plugin escape hatch required. Revisit: никогда — hard requirement.

A4. Принудительная облачная синхронизация. Editor refuses к work без cloud account. Reject: Gov on-prem deployment, classified docs cannot leave network. Revisit: никогда — hard requirement.

A9. «Move fast break things» versioning. Rapid breaking API changes. Reject: Gov procurement требует stability commitments, semver discipline. EU: aicher-force-replaced-by-intelligent-structure. Revisit: никогда.

Category 4: Ethics + market positioning

A7. Тёмные паттерны (FOMO, forced sign-up, hidden cancel). Reject: Gov procurement автоматически rejects, EU consumer law violations. EU: cooper-goal-directed-design, lupton-birth-of-the-user-paradigm. Revisit: никогда — это ethics.

A8. Hyper-emoji LLM-prose marketing. «🚀 Revolutionary 🎉 AI-powered ✨» Reject: existing rule LLM_TELLS_AVOIDANCE. Gov tone mismatch. EU: aicher-typography-not-maximum-but-optimum, aicher-doing-without-symbols-information-power. Revisit: никогда — written discipline.

Consequences

Positive

  • Differentiation: Phrasis stands apart от «AI-native» / «trendy» editor crowd

  • Trust building: Gov + regulated audience reads stance как «serious tool»

  • Longevity: Anti-trend decisions переживают trend cycles (5-10+ лет)

  • Onboarding clarity: New contributors имеют map of «не предлагать это»

  • Reduced spec churn: Меньше re-litigation популярных features

Negative

  • Marketing harder: На viral channels (TikTok, Twitter) tone не звучит

  • Consumer adoption slower: Casual users могут пройти мимо

  • «Boring» perception: От startup-watchers и trend-followers

  • Recruitment narrower: Designers preferring «exciting» работу не engage

Trade-offs accepted explicitly

Phrasis оптимизируется для long-tail gov+regulated audience, не для consumer mass-market. Каждый rejected trend имеет explicit trade-off.

Rationale — pack EUs as primary justification

Этот ADR — первый Phrasis ADR где pack EUs служат primary justification:

  • Rams «less but better» → reject feature creep + chrome dominance (A1, A5, B2)

  • Hara «emptiness as affluence» → reject visual clutter (A5)

  • Aicher «spielen mit regeln» → reject hidden magic (A6, A10)

  • Aicher «typography optimum» → reject hyper-emoji marketing (A8)

  • Aicher «force replaced by structure» → reject move-fast-break (A9)

  • Cooper «modes-and-modeless» → reject modal-heavy UX (A2)

  • Cooper «goal-directed» → reject dark patterns (A7)

  • Apple HIG «defers to content» → reject AI dominance (A1, B2)

  • Apple HIG «motion purposeful» → reject gratuitous animation (B1)

  • Apple HIG «accessibility mandate» → reject forced dark mode (B3)

  • Lupton «design as discourse» → reject silent AI imposition (A6)

Без pack EUs этот ADR был бы opinion. С pack EUs — это lineage-rooted stance.

Ideology check (L6 inspection — Recklies adversarial)

Recklies critique applied: anti-trend stance может стать ideological dogma — «мы delete популярных features потому что они популярны», что само по себе anti-functional.

Mitigation accepted:

  • Каждый reject имеет explicit trade-off acknowledged (не «universal good»)

  • Каждый reject имеет revisit trigger (где applicable)

  • Pack EU justifications cite specific principles, не general «trendy = bad»

  • «Not for everyone» framing — Phrasis explicitly не consumer mass-market

Recklies counter-argument NOT rejected: этот ADR описывает stance для этого продукта в этой нише, не universal design principles. Другие продукты с другой аудиторией могут принимать противоположные decisions и быть правыми.

Revisit triggers

Whole-ADR review:

  • Gov+regulated industries adoption drops below 50% Phrasis user base (focus shift)

  • EU AI Act / GDPR compliance landscape меняется fundamentally

  • Pack design-functionalism foundation challenged через scholarly debate

Default cooling-off: никакой trend нельзя revisit раньше 12 месяцев после ADR acceptance, кроме hard requirements (revisit = никогда).

Application discipline

Этот ADR применяется к:

  • Phrasis editor design decisions

  • Phrasis brand surface (landing pages, dev.to articles, docs)

  • Phrasis commit messages + PR descriptions

  • Phrasis contributor guidelines

НЕ применяется к:

  • User's other projects (Axona, digitalGarden core, etc.) — different decisions valid

  • Universal design principles claims

Methodology origin

Создан через GENESIS L1-L7 methodology (2026-05-genesis-ui-methodology-stack):

  • L1 Generate: 16-candidate shortlist (4 tiers: A strongly recommend, B moderate, C borderline)

  • L2-L3 Negotiate: user approval — все Tier A (10) + B2 + B3 + partial B1 = 12 final

  • L4 Evaluate: prism check (functionalism lens primary)

  • L5 Synthesize: ADR document с 4-category structure

  • L6 Inspect: Recklies adversarial — ideology check passed

  • L7 Save: 17 `eu_used` events registered (highest single-artifact count)

Reference instance в `~/Sync/projects/phrasis-editor/genesis/anti-trend-stance-adr/`.

Cross-references