惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
F
Fortinet All Blogs
阮一峰的网络日志
阮一峰的网络日志
Apple Machine Learning Research
Apple Machine Learning Research
爱范儿
爱范儿
WordPress大学
WordPress大学
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
J
Java Code Geeks
罗磊的独立博客
S
SegmentFault 最新的问题
V
V2EX
V
Visual Studio Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
美团技术团队
博客园 - 三生石上(FineUI控件)
Stack Overflow Blog
Stack Overflow Blog
Y
Y Combinator Blog
MyScale Blog
MyScale Blog
D
Docker
Google DeepMind News
Google DeepMind News
Blog — PlanetScale
Blog — PlanetScale
M
Microsoft Research Blog - Microsoft Research
Martin Fowler
Martin Fowler
S
Secure Thoughts
B
Blog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Recent Announcements
Recent Announcements
MongoDB | Blog
MongoDB | Blog
C
Cisco Blogs
C
CERT Recently Published Vulnerability Notes
T
True Tiger Recordings
GbyAI
GbyAI
P
Proofpoint News Feed
P
Privacy International News Feed
Jina AI
Jina AI
The Cloudflare Blog
I
Intezer
AWS News Blog
AWS News Blog
Hacker News - Newest:
Hacker News - Newest: "LLM"
S
Security Archives - TechRepublic
NISL@THU
NISL@THU
The Register - Security
The Register - Security
Recent Commits to openclaw:main
Recent Commits to openclaw:main
P
Palo Alto Networks Blog
S
Schneier on Security
L
LINUX DO - 热门话题
C
CXSECURITY Database RSS Feed - CXSecurity.com
Security Latest
Security Latest
C
Cybersecurity and Infrastructure Security Agency CISA

Все публикации подряд на Хабре

ИИ учит нас писать лучше. Или хуже? Как проектировать ИИ-инструменты, которые делают пользователей лучше «Раньше хотел каждый, сейчас и бесплатно не надо»: гаджеты, про которые мы все забыли ИИ-агенты в бизнесе: почему 80% компаний увольняют людей, но не получают ROI Как я строил ИИ-стартап, или Новые архитектурные риски 2026 4 интересных парадокса, рождающих жаркие дискуссии Рабочее место не-вайбкодера: настраиваем harness Когнитивный инжиниринг Feature Based Clean Architecture. Часть 1: Эволюция NestJS-приложения в неподдерживаемое состояние Как мы перестали бояться «пустых охватов» и сделали инфлюенс-маркетинг управляемым каналом роста Подключили B2B email-платформу к голосовым ассистентам через MCP. Архитектура, код, где ломается [Перевод] Почему AI-агенты ломаются на длинных задачах — и как обвязка помогает им дописывать приложения Облачно, возможны нейросети: кризис датасетов и ахиллесова пята систем машинного зрения — DIY-чтение на выходные Спустя 5 лет и $5 миллионов: почему создание нового языка для веб-разработки оказалось ошибкой Безопасная песочница Облачная LLM на 16 ГБ VRAM — часть 2: LangGraph Server, LangSmith и SDK Современный SSH-клиент для MS-DOS Как продвигать агентство недвижимости: от вывески до прямых эфиров MCP для GitHub + GitLab: инженерный гайд 2026 Вы платите OpenAI $20 в месяц, а он зарабатывает на вас ещё $100 млн за полтора месяца. И это только начало ИИ забирает работу «белых воротничков»: чему учить детей, чтобы выжить в будущем Практический ИИ-агент Python: LangGraph + Qdrant Как я делал ping и traceroute на iOS без entitlements — и почему это оказалось проще, чем UMP-консент для AdMob 4 MVP за 4 месяца, 30 холодных DM, 1 регистрация: building in public по-русски VPS-бастион: доступ к домашнему серверу без белого IP Kampus AI — нейросеть для генерации учебных работ для студентов и школьников Игры, помогающие продавать — примеры интересных рекламных акций с видеоиграми €500 в Telegram Ads принесли сделку на 350 000 ₽. Разбор B2B-кампании Чтение на выходные: «Разработка игр и теория развлечений» Рафа Костера Личный архив: сбор, бэкап, таймлайн фотографий INFOSTART TECH EVENT или INFOSTART A&PM EVENT — как понять, куда вам нужнее? Peer testing на основе Закона Линуса Релиз GitLab 19.0: ИИ-оркестрация, которая наконец-то догнала темп написания кода Как бизнесу оценить готовность к аттестации по новому Приказу ФСТЭК № 117 Технический гайд по сторис – часть 4: как мы добавили видео формат Представительство в арбитражном процессе: правовые различия между внешним защитником и инхаусом «Где новые фичи?» — Как AI-миграция легаси вернет IT-бюджет бизнесу Что нужно знать работнику про увольнение Новые требования Москвы к ЦИМ для АГР: готовый инструмент для проектировщиков в nanoCAD BIM Строительство WireGuard: простота и надёжность современного VPN-туннеля или секретное рукопожатие в тёмной комнате Выйдет ли GTA 6 в 2026 году, и чего ждать от игры Как меня назвали «невовлечённым», а я нашёл офшоры на Кипре Как LLM научила рекомендательную модель видеть больше, чем историю взаимодействий От хаоса к экосистеме: Модель зрелости комьюнити в бизнесе Свет, тьма, VEML7700 и Python Сказ о том, как мы процессы разработки в GRI меняли. Часть 2 Майский «В тренде VM»: громкие уязвимости в Linux, ActiveMQ, SharePoint и Acrobat Reader Статический анализ, заряженный ИИ: как LLM ищут уязвимости в коде и где их границы Блок “Процессы” и почему мы называем его нашим мини-n8n Как поменялся рынок интернет-рекламы: сравнение первых кварталов 2025 и 2026 годов: исследование click.ru Мониторинг Kerio Connect через Zabbix 7: разбор шаблона без агентов и regex по DAT 671 Allow в Claude Code за день: как родился сетап Spec-build 3 известные интересные задачи на логику Как айтишнику позаботиться о менталке и не перерабатывать OpenAI vs Anthropic: битва экс-коллег за корпоративного клиента и $1 трлн на IPO SEO для интернет-магазина в 2026: что поменялось и как с этим работать Сможете ли вы спроектировать Maven‑монорепозиторий для 5 микросервисов? 6 неудобных вопросов про американское произношение, которые айтишники боятся задать Неожиданная встреча: теория графов вновь помогла решить проблему в анализе Фурье Иллюзия трансформации: почему компании платят за спектакль вместо изменений AMD представила Ryzen 9 PRO 9965X3D и еще 5 процессоров, которые пойдут далеко не всем История IDE в Google Первые отзывы на новинки о System Design Влияние параметра planner_upper_limit_estimation на планы выполнения и профиль нагрузки PostgreSQL при использовании 1C Границы 100% разработки с агентами Быстрый OCR на основе Paddle Дооснащение любительской электровакуумной мастерской. Вакуумметр, течеискатель, полярископ Mythos: модель, о которой Anthropic не говорит. Реверс по жертвам — от 27-летней дыры в OpenBSD до побега из песочницы Как использовать Qwen3.7-Max и Grok Build 0.1 для ИИ-агентов в России Suricata IPS NFQueue with nDPI. Часть VI Важные изменения в защите информации в России: что нового? В чем секрет достоверного замедления биологического старения? Вредное ускорение: Умный светофор на перегруженных перекрестках Как сисадмин написал свою библиотеку для Jira на Ruby: история Rujira Сломанный найм: почему рынок труда превратился в казино и что с этим делать Физики нашли свидетельства того, что Вселенная не идеально однородна, вопреки стандартной модели космологии Вопросы на собеседованиях, к которым лучше готовиться заранее Что детектировал детектор таксофонных карт? Как работают выделенные ядра в облачном сервере: от планировщика Linux до тестов производительности Математика кластеров: разбираемся в умной кластеризации данных на примере нашей системы поиска аномалий в логах. Часть 1 Ответы с «деврел‑супервизии», вопрос седьмой: выгорание, когда от вас ждут вечный драйв и креатив История одного // todo, который ждал своего часа пол года Если пропустили Claude последние 3 месяца: топ-5 фич с юзкейсами и история про $400K в Bitcoin Проектируем с нуля калькулятор на FPGA. Части 4 и 5: Фреймворк и оборудование Почему 10× от AI могут дать только лояльные сотрудники Speech-to-LaTeX: распознавание математических выражений и предложений в LaTeX Что внутри портфолио продуктовых и ux/ui-дизайнеров из Т-Банка, Додо, Figma, Альфы, Revolut? Чем заменить Excel в 2026 году: обзор российского ПО и других аналогов Как Rust обрабатывает repr и ABI на границе с C: что ломается и почему 5 промтов, чтобы подготовить презентацию в нейросетях через SpeShu.AI Каггл «200 ёлочек 2025»: призы уже раздали, но мы и за идею задачу укладки порешаем. Часть 1 Как ФНС стала data-driven за 5 лет: минус треть штата, плюс 20 новых цифровых сервисов Как настроить кастомную авторизацию в FESB и сохранить стандартный заголовок Как CISO защищаются от прошлого, игнорируя будущее Заменит ли ИИ разработчиков — и что с этим делать компании Влияние AI на позиции QA в 2026 году Я устал гадать, мне лучше или хуже, и сделал систему непрерывного измерения температуры Исходный код Jedi Academy переполнен яростными комментариями разработчиков ИИ существовал до компьютеров: Крышесносные примеры, часть 2 Тупик на игровом поле: почему образовательные и научные настольные игры в 2026 году сжимаются
Парное программирование — когда две головы лучше (а когда нет)
omyhosts (IS · 2026-05-18 · via Все публикации подряд на Хабре

Парное программирование — когда две головы лучше (а когда нет)

Время на прочтение8 мин

Охват и читатели44

Есть мнение, что парное программирование (далее — ПП) автоматически дает более качественный результат — код лучше, багов меньше. А вот на практике нередко получается наоборот — подход, который должен был бороться со злом, приводит к конфликтам, усталости и выгоранию. Кто виноват?

Оказывается, на эффективность парного программирования влияет не только скиллы участников процесса, но и их психологическая совместимость

В этой статье разберем, когда парное программирование действительно выигрывает у одиночного, как личностные черты и ротация влияют на процесс и результат, какие риски создает тандем из эксперта и новичка и меняет ли появление ИИ-ассистентов психологию парной работы. Поехали!

Когнитивная механика

Когда два разработчика садятся за одну задачу, она не просто делится между ними пополам. ПП позволяет перераспределить когнитивную нагрузку между участниками процесса, снижает затраты на удержание контекста и позволяет каждому сосредоточиться на своем уровне абстракции благодаря разделению ролей. При классическом подходе один программист в этом случае будет драйвером —  он пишет код и следит за деталям, другой — штурманом (навигатором), который отслеживает процесс, всю картину целиком и читает каждую набранную строку. Первый оперирует низкоуровневыми деталями — синтаксис, навигация по файлам, сам ввод кода. Навигатор в это время мыслит на уровень выше — алгоритмы, корнеркейсы, архитектура. Подобное разделение задач существенно снижает объем когнитивной нагрузки на каждого участника. При этом периодически участники процесса меняются ролями. Регулярная смена ролей (например, каждые 30-45 минут) не дает драйверу «утонуть» в рутине, а навигатору — выпасть из контекста и превратиться в пассивного наблюдателя.

Однако эффективность ПП напрямую зависит от специфики задачи. Исследователи пришли к следующему выводу:

«Парное программирование быстрее одиночного при низкой сложности задач и дает код более высокого качества при высокой сложности. Более высокое качество на сложных задачах достигается ценой значительно больших усилий, тогда как сокращение времени выполнения простых задач — ценой заметно более низкого качества.»

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

Зона безопасности

Тем не менее, можно сколько угодно обсуждать зоны ответственности, меняться ролями и подбирать задачи под специфику ПП — работа пойдет коту под хвост, если в процессе отсутствует психологическая безопасность. 

Результаты исследований показывают, что именно этот фактор является наиболее важным условием для развития групповой динамики и командного обучения.

«Психологическая безопасность — обстановка в организации, коллективе, семье и других социальных ячейках, позволяющая членам группы действовать, не опасаясь негативных последствий, связанных с самооценкой, статусом или карьерой.»

Сам термин стал широко известен в 1999 году благодаря исследовательнице Эми Эдмондсон и ее работе, посвященной психологической безопасности в команде. Она предложила измерять эту самую психологическую безопасность с помощью простого опросника из семи утверждений, которые нужно оценить по шкале от 1 до 7 от «полностью согласен» до «полностью несогласен». Сами утверждения выглядят так:

  • «Если я совершая ошибку на работе, мои коллеги критикуют меня за это»

  • «Мой коллектив на работе может справиться со сложными и нестандартными задачами».

  • «В моем коллективе сотрудники могут рисковать (бросать вызов, задавать смелые вопросы, принимать нестандартные решения и пр.).».

Да, выглядят они довольно просто и очевидно, но регулярное тестирование сотрудников помогает обнаружить проблему еще до того, как она перерастет в полноценный конфликт.

Если в процессе ПП психологическая безопасность отсутствует, о продуктивном сотрудничестве не может идти и речи. Когда навигатор боится, что его замечание воспримут как придирку, а драйвер опасается показаться некомпетентным, переживая из-за качества кода, — участники не объединяются в единый мыслящий контур. Вместо этого копятся недоговоренности, раздражение, ошибки.

Важность психологической безопасности для продуктивной коллаборации подтверждена разнообразными исследованиями. Так, например, Google, в целях понять, что отличает эффективные команды от неэффективных, запустил проект «Аристотель». В течение двух лет компания анализировала около 180 команд и выявила пять ключевых факторов эффективности. Главным из них оказалась именно психологическая безопасность.

Без психологической безопасности пара теряет способность к конструктивному спору, который рождает качественные архитектурные решения. Вместо этого начинается либо пассивное соглашательство, либо скрытое соперничество, которые плохо влияют как на качество кода, так и на психическое состояние участников процесса.

Личность, стиль коммуникации и скиллы

Окей, про обстановку поговорили. Теперь предлагаем немного углубиться и выяснить, а какие личностные черты влияют на эффективность ПП. Разберемся, что на эту тему говорят исследования.

Автор этой работы пришел к выводу, что среди выбранных для исследования качеств наиболее важную роль играет именно открытость:

«This study has one significant result: in Experiment 4, significant evidence has been found that pairs with both partners having high levels of Open-mindedness produce code of higher quality than pairs with mixed levels of Open-mindedness.»

В этом ключе открытость означает отсутствие предубеждений, готовность рассматривать альтернативные решения, экспериментировать и принимать чужую точку зрения, — иными словами, все то, без чего парная работа превращается в непродуктивную борьбу за первенство.

Современные исследования также показывают, что личностные черты не просто определяют совместимость, но и могут быть использованы для осознанного назначения ролей — драйвера и навигатора:

«These artifacts are directly informed by our empirical findings that Openness aligns strongly with Pilot roles, Extraversion and Agreeableness correlate with Navigator preferences, and Neuroticism favors Solo tasks»

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

При этом программисты, которые часто работают в паре друг с другом, со временем вырабатывают общий стиль мышления — это снижает затраты на коммуникацию, но одновременно ведет к определенному когнитивному слиянию, из-за чего участники перестают замечать слепые пятна друг друга. Исследование участников ПП с разными уровнями знаний показывает, что ПП максимально эффективно, когда знания не идентичны, а взаимодополняют друг друга, а ротация — не просто способ «перемешать» людей, а инструмент управления имеющимися пробелами в их знаниях и компетенциях.

«Partner constellations with complementary knowledge make PP a particularly effective practice. In PP sessions, differences in system understanding are more important than differences in general software development knowledge.»

Кстати, отчасти это объясняет определенную эффективность пар «эксперт + новичок» — благодаря этому один быстро погружается в контекст, а второй вынужден вербализовать неявные знания и переосмыслять архитектурные решения, которые он давно перестал замечать. Когда участники не ротируются, а одни и те же программисты постоянно работают друг с другом, появляется риск возникновения туннельного зрения, при котором в голову просто не приходят непривычные, но потенциально крутые решения.

Однако у этого подхода есть и определенные минусы. С одной стороны, комбинация прошаренного, опытного программиста и новичка действительно эффективный инструмент онбординга и передачи знаний. С другой стороны, на практике это может привести к переключению менее опытного участника в пассивный режим, когда он лишь наблюдает, не предпринимая активных действий. Особенно, если речь идет не просто про нового сотрудника, а про разработчика начального уровня. Ведь когда джуниор садится в пару с опытным разработчиком, каждое свое слово или действие он будет невольно пропускать через фильтр и переживать, что подумает о нем старший коллега. 

Чтобы пустить ПП в продуктивное русло, исследователи советуют использовать конкретные стратегии обучения — от прямых инструкций до тонких намеков.

Мой друг Клод

Выше мы рассматривали ПП в контексте взаимодействия двух людей. Однако индустрия стремительно движется в сторону новой модели — человек + ИИ-ассистент. GitHub Copilot, Cursor, Claude AI и иже с ними позиционируются как ИИ-напарники, которые дадут скорость, недоступную одиночке, и комфорт, якобы невозможный в человеческой паре. Что происходит на уровне психологии, когда напарник — это большая языковая модель?

Авторы этого исследования решили узнать ответ на этот вопрос. Участники эксперимента решали задачи на Python в двух режимах — в паре с человеком и индивидуально с Copilot. Через неделю их перепроверили на тех же задачах, уже соло. Что из этого вышло?

Сначала участники показали значительно лучшие результаты с GitHub Copilot, чем с человеком-партнером, дополнительно было зафиксировано снижение некоторых показателей нагрузки. Однако эмоциональный эффект от работы с человеком был значительно более позитивным и по сравнению с взаимодействием с Copilot. Кроме того, в условии с ИИ‑ассистентом наблюдалось снижение результатов при повторном тестировании, причем более выраженное, чем при взаимодействии с партнером-человеком.

Проще говоря, Copilot действительно дал участникам эксперимента определенный выигрыш «здесь и сейчас» — снижение когнитивной нагрузки, получение более быстрого результата. Однако спустя неделю участники, работавшие с ИИ, хуже воспроизводили изученное. Человеческая пара, напротив, работала медленнее и напряженнее, но знания закреплялись глубже.

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

Иными словами, работа с «биологическим» напарником вызывает своеобразное трение умами — он задает вопросы, сомневается, спорит, предлагает альтернативы. Это по-настоящему конструктивный скептицизм, который позволяет предотвращать ошибки и стимулирует обучение. ИИ-ассистент, при всей своей функциональности, такого эффекта не дает, а мозг разработчика, экономя ресурс, склонен принимать его предложения без проверки.

Исследователи приходят к мнению, что подобного рода инструменты вызывают у программиста чувство психологической безопасности, уровень которой трудно достичь при общении с реальными людьми, поскольку человеческое взаимодействие происходит в другом социальном и эмоциональном режиме. С ИИ-ассистентом можно высказывать далекие от совершенства идеи, делать наивные предложения, можно и вовсе делегировать ему всю задачу целиком!

Однако в то же время различные исследовательские работы показывают, что разработчики, которые в значительной степени полагаются на ИИ в задачах программирования, начинают меньше вкладываться в реальные рабочие отношения. Снижается глубина передачи знаний, уменьшается количество взаимодействий в рамках наставничества, смещается фокус — с межличностного обмена и командного сотрудничества на индивидуальную работу с использованием ИИ. Несмотря на то, что машина не осуждает, в программировании с ИИ появляются несколько иные риски, нежели при чисто человеческом взаимодействии. Если традиционное ПП предполагает столкновение разумов, оспаривание предположений и гипотез, то в случае с ИИ этого значительно меньше. 

При этом это не значит, что ИИ не может принести пользу. Такие инструменты неплохи для прототипирования или рутинных операций. Однако, если речь идет о разработке архитектурных решений, рефакторинге, онбординге в команду, решении сложных алгоритмических задач, люди с высокой долей вероятности справятся качественнее. Можно использовать и гибридный подход — стратегические моменты и критическая оценка остаются за живыми программистами, а клоды и копайлоты берут на себя низкоуровневую рутину. 

Давайте попробуем подвести итоги. Парное программирование — инструмент с высоким потенциалом и столь же высокими требованиями к человеческому фактору. При осознанном подходе (целесообразность применения, грамотный выбор участников) он может не только обеспечить повышение качества кода, но и позитивно повлиять на сплоченность и общий уровень команды. А вот если насаждать его директивно и применять не к месту — он будет лишь множить усталость и обиды.

Если вы практиковали парное программирование, поделитесь своим опытом в комментариях — расскажите, с какими барьерами к продуктивному ПП сталкивались, как повлиял этот подход на эффективность работы, изменился ли ваш опыт с приходом ИИ, и, конечно же, поделитесь советами!