В РАЗРАБОТКЕНЕ ДЛЯ НОВИЧКОВНЕ ОБЯЗАТЕЛЬНО
Архитектору
Инженеру
Чек-лист самопроверки
- Могу ли я объяснить, чем отличается рабочая память от кратковременной?
- Понимаю ли я, почему опытный разработчик быстрее читает код, чем новичок?
- Способен ли я выделить три типа когнитивной нагрузки в реальном фрагменте кода?
- Могу ли я привести пример внешней когнитивной нагрузки в проекте, над которым работаю?
- Знаю ли я, как чанкинг помогает обходить ограничения кратковременной памяти?
- Умею ли я распознавать, когда мой код создаёт избыточную когнитивную нагрузку для читателя?
- Понимаю ли я, как имена переменных влияют на активацию схем в долговременной памяти?
- Способен ли я перестроить ментальную модель после получения обратной связи об ошибке?
- Могу ли я описать разницу между моделью системы и ментальной моделью пользователя?
- Умею ли я выявлять упрощения в собственной ментальной модели сложной системы?
- Знаю ли я, как кривая забывания влияет на усвоение нового синтаксиса?
- Применяю ли я интервальное повторение при изучении новых API или языков?
- Способен ли я использовать активное вспоминание вместо пассивного перечитывания?
- Понимаю ли я, что такое негативная трансференция, и сталкивался ли с ней?
- Могу ли я привести пример лингвистического антипаттерна в своём коде?
- Умею ли я структурировать функции так, чтобы они помещались в рабочую память?
- Знаю ли я, как визуализация помогает снизить когнитивную нагрузку при анализе?
- Понимаю ли я, почему длинные методы трудно читать с точки зрения когнитивистики?
- Способен ли я проектировать интерфейсы, соответствующие ментальной модели пользователя?
- Могу ли я диагностировать расхождение между моей ментальной моделью и моделью коллеги?
- Умею ли я формулировать цель обучения через призму когнитивной нагрузки?
- Знаю ли я, как паттерны проектирования служат чанками для мозга?
- Понимаю ли я, почему комментарии иногда увеличивают, а не уменьшают нагрузку?
- Способен ли я оценить, достаточно ли развиты мои схемы для освоения новой технологии?
- Могу ли я объяснить, как работает «когнитивная компиляция» при чтении кода?
- Умею ли я планировать перерывы, учитывая время восстановления контекста?
- Знаю ли я, как избыточность в коде может быть полезной с когнитивной точки зрения?
- Понимаю ли я, почему DRY не всегда применим в контексте когнитивной нагрузки?
- Способен ли я различать внутреннюю и соответствующую когнитивную нагрузку?
- Могу ли я создать дидактическую карточку для запоминания сложного синтаксиса?
- Умею ли я использовать проработку для связывания новых и старых знаний?
- Знаю ли я, как ментальные модели влияют на отладку программ?
- Понимаю ли я, почему аналогии могут как помочь, так и навредить при обучении?
- Способен ли я выявить неполноту своей ментальной модели системы?
- Могу ли я описать, как динамически обновляется моя ментальная модель при рефакторинге?
- Умею ли я проектировать API, который минимизирует внешнюю нагрузку?
- Знаю ли я, как иерархичность ментальных моделей отражается в архитектуре?
- Понимаю ли я, почему документация должна соответствовать ментальной модели целевой аудитории?
- Способен ли я распознать, когда моя ментальная модель устарела?
- Могу ли я объяснить, как когнитивная нагрузка влияет на качество код-ревью?
- Умею ли я использовать пустые строки и заголовки как когнитивные маячки?
- Знаю ли я, как контекст задачи формирует ментальную модель одного и того же компонента?
- Понимаю ли я, почему один и тот же код может вызывать разную нагрузку у разных людей?
- Способен ли я оценить, насколько точно моя ментальная модель отражает реальность системы?
- Могу ли я применить принципы когнитивистики при написании технической документации?
- Умею ли я выявлять когнитивные барьеры при обучении коллег?
- Знаю ли я, как избежать перегрузки рабочей памяти при проектировании сложных алгоритмов?
- Понимаю ли я, почему визуальные модели (диаграммы, схемы) усиливают понимание?
- Способен ли я проектировать систему, ориентируясь не только на машину, но и на человеческий мозг?
- Могу ли я сознательно развивать свою мыслительную базу как профессиональный навык?