Баг, що зникає коли на нього дивишся (2/3)
Контекст: webpack — популярний інструмент для JavaScript-розробників. Збирає всі твої JS-файли, CSS, картинки в один бандл для браузера. webpack-cli — його командний інтерфейс.
Розробники webpack-cli додали банер для донатів. Показувався тільки в понеділок:
Internet Explorer: DevTools як квантовий колапс
Контекст: DevTools — це інструменти розробника в браузері (F12). Там консоль, мережа, DOM-дерево.
У IE об'єкт
Чому? Бо об'єкт
Therac-25: коли Heisenbug вбиває (1985-1987)
Це вже не смішно.
Контекст: Therac-25 — медичний апарат для променевої терапії раку. Пацієнт лягає, апарат опромінює пухлину точною дозою радіації. Race condition — це коли два процеси "змагаються" за ресурс, і результат залежить від того, хто встигне першим. Непередбачувано.
Therac-25 мав race condition в софті. Іноді давав летальні дози радіації замість терапевтичних. Загинуло щонайменше троє людей.
Баг з'являвся тільки коли оператор друкував дуже швидко — потрібні були дні практики, щоб випадково натрапити. При стандартному тестуванні — все ідеально. Виробник місяцями не міг відтворити проблему.
Heisenbug, який ховався від спостереження. І вбивав.
———
Класифікація багів (для нердів)
Програмісти створили цілу "фізичну" таксономію:
———
Що з цього випливає
"Працює" — це не так чи ні
Програма не "працює" або "не працює". Вона працює за певних умов. Debug/release. Linux/Windows. Понеділок/вівторок. З логуванням/без. Змінив умови — змінив результат.
Debugger — не вікно. Це втручання.
Ти не "дивишся на програму". Ти створюєш нову систему: програма + debugger. А вона поводиться інакше.
"Працює на моїй машині" — не жарт
Memory layout різний. OS scheduler різний. Timing різний. Ти і твій колега буквально запускаєте різні програми. Обидва праві. Обидва ні.
Баг існує?
Залежить від того, хто дивиться. Як одночасність подій у теорії відносності — немає абсолютної відповіді.
———
Як ловити те, що тікає
Баг зник під debugger'ом? Це не проблема. Це підказка.
Ти щойно дізнався: баг чутливий до timing'у. Значить, шукай race conditions, memory ordering, timing-залежну логіку. Коло звузилось.
Контекст: webpack — популярний інструмент для JavaScript-розробників. Збирає всі твої JS-файли, CSS, картинки в один бандл для браузера. webpack-cli — його командний інтерфейс.
Розробники webpack-cli додали банер для донатів. Показувався тільки в понеділок:
if (now.getDay() === MONDAY) {
if (fileOwnerId === process.getuid()) // 💥
}process.getuid() — це Linux-функція. На Windows її немає. Баг з'являвся ТІЛЬКИ в понеділок, ТІЛЬКИ на Windows. Шість днів на тиждень — ідеально.Internet Explorer: DevTools як квантовий колапс
Контекст: DevTools — це інструменти розробника в браузері (F12). Там консоль, мережа, DOM-дерево.
console.log() — найпростіший спосіб дебажити JS: виводиш змінну в консоль і дивишся.У IE об'єкт
console не існував, поки не відкриєш DevTools. Код з console.log() падав у звичайних користувачів — бо в них DevTools закриті. Розробник відкривав DevTools подивитись — працює. Закривав — все ще працює.Чому? Бо об'єкт
console вже створився при відкритті. Акт спостереження змінив систему назавжди.Therac-25: коли Heisenbug вбиває (1985-1987)
Це вже не смішно.
Контекст: Therac-25 — медичний апарат для променевої терапії раку. Пацієнт лягає, апарат опромінює пухлину точною дозою радіації. Race condition — це коли два процеси "змагаються" за ресурс, і результат залежить від того, хто встигне першим. Непередбачувано.
Therac-25 мав race condition в софті. Іноді давав летальні дози радіації замість терапевтичних. Загинуло щонайменше троє людей.
Баг з'являвся тільки коли оператор друкував дуже швидко — потрібні були дні практики, щоб випадково натрапити. При стандартному тестуванні — все ідеально. Виробник місяцями не міг відтворити проблему.
Heisenbug, який ховався від спостереження. І вбивав.
———
Класифікація багів (для нердів)
Програмісти створили цілу "фізичну" таксономію:
Баг Фізик Що робить
**Bohrbug** Niels Bohr Стабільний, передбачуваний. Нудний, зате ловиться.
**Heisenbug** Werner Heisenberg Зникає, коли дивишся
**Mandelbug** Benoit Mandelbrot Фрактальний: чим глибше копаєш, тим більше знаходиш
**Schroedinbug** Erwin Schrödinger Код, що не мав би працювати, але працює — поки хтось не подивиться
———
Що з цього випливає
"Працює" — це не так чи ні
Програма не "працює" або "не працює". Вона працює за певних умов. Debug/release. Linux/Windows. Понеділок/вівторок. З логуванням/без. Змінив умови — змінив результат.
Debugger — не вікно. Це втручання.
Ти не "дивишся на програму". Ти створюєш нову систему: програма + debugger. А вона поводиться інакше.
"Працює на моїй машині" — не жарт
Memory layout різний. OS scheduler різний. Timing різний. Ти і твій колега буквально запускаєте різні програми. Обидва праві. Обидва ні.
Баг існує?
Залежить від того, хто дивиться. Як одночасність подій у теорії відносності — немає абсолютної відповіді.
———
Як ловити те, що тікає
Баг зник під debugger'ом? Це не проблема. Це підказка.
Ти щойно дізнався: баг чутливий до timing'у. Значить, шукай race conditions, memory ordering, timing-залежну логіку. Коло звузилось.
👍4👏2
Баг, що зникає коли на нього дивишся (3/3)
Інструменти:
• rr — записує виконання програми один раз (включно з timing, потоками, всім). Потім можеш "перемотувати" назад і вперед скільки хочеш. Баг більше не втече.
• ThreadSanitizer (TSan) — додаєш прапорець
• CHESS (Microsoft) — систематично перебирає всі можливі порядки виконання потоків. Не чекає, поки баг "випадково" вилізе — шукає сам.Факт: CHESS відтворив за 30 секунд баг, що з'являвся раз на місяць.
———
Головне
Немає "правди" про програму. Є правда відносно того, як дивишся.
Це не баг у звичному сенсі. Це природа складних систем.
Не питай "де баг?" Питай: "при яких умовах система поводиться так, а при яких — інакше?"
У цьому питанні вже половина відповіді.
———
Наступного разу, коли баг зникне під debugger'ом — посміхнись. Ти щойно побачив квантову механіку в дії.
Heisenbug передає привіт.
Інструменти:
• rr — записує виконання програми один раз (включно з timing, потоками, всім). Потім можеш "перемотувати" назад і вперед скільки хочеш. Баг більше не втече.
• ThreadSanitizer (TSan) — додаєш прапорець
-fsanitize=thread при компіляції, і він слідкує за всіма зверненнями до пам'яті. Якщо два потоки лізуть в одне місце без синхронізації — покаже.• CHESS (Microsoft) — систематично перебирає всі можливі порядки виконання потоків. Не чекає, поки баг "випадково" вилізе — шукає сам.Факт: CHESS відтворив за 30 секунд баг, що з'являвся раз на місяць.
———
Головне
Немає "правди" про програму. Є правда відносно того, як дивишся.
Це не баг у звичному сенсі. Це природа складних систем.
Не питай "де баг?" Питай: "при яких умовах система поводиться так, а при яких — інакше?"
У цьому питанні вже половина відповіді.
———
Наступного разу, коли баг зникне під debugger'ом — посміхнись. Ти щойно побачив квантову механіку в дії.
Heisenbug передає привіт.
👍7
Швидкість ≠ Мудрість
Мій старий друг, Юра Лучанінов написав про пастку: ми плутаємо швидкість з прогресом. AI прискорює руки. Але чи прискорює розуміння?
Когнітивна психологія каже: ні. І це не новина — цю закономірність досліджують десятиліттями.
———
Ілюзія компетентності
Коли щось дається легко, ми автоматично переоцінюємо своє розуміння. Психологи називають це "foresight bias" — плутаємо "мені зараз легко" з "я це знатиму завтра".
AI-підказка прийнята за 2 секунди? Мозок реєструє: "я це знаю".
Але ні. Ти це бачив. А "бачив" і "знаю" — різні речі. Бачив — це коли впізнаєш код, коли його показують. Знаєш — це коли можеш написати сам, без підказки. Перше дається легко. Друге вимагає зусиль.
———
Бажані труднощі
Є такий парадокс: умови, які сповільнюють поточну роботу, посилюють довгострокове засвоєння. Психологи називають це "desirable difficulties" — бажані труднощі.
Що сюди входить? Повторення з інтервалами. Перемішування тем. Самостійне згадування. Генерація замість споживання.
І от пастка: все, що AI усуває "для зручності" — це саме те, що будує справжню експертизу.
———
Ефект генерації
Ми краще запам'ятовуємо те, що генеруємо самі, ніж те, що читаємо готовим. Це довели ще в 1978 році.
Copilot дає готове. Ти приймаєш. Нейронні зв'язки, які мали б сформуватися — не формуються.
Дослідження 2023 року підтвердило це для AI-кодингу: новачки з AI швидше завершують задачі, але розуміння не покращується. І при цьому вони відчувають, що навчилися більше.
Це і є ілюзія плинності. Легко приймати — значить легко забути.
———
GPS для коду
Коли ми вивантажуємо задачі на зовнішні інструменти, поточна продуктивність зростає. Але внутрішні навички можуть слабшати.
Приклад: люди, які постійно користуються навігатором, гірше орієнтуються в просторі. Це доведено.
AI — це GPS для коду. Зручно. Швидко. І потенційно — атрофія.
———
Про глибину
Швидкий досвід ≠ глибокий досвід.
Можна "просидіти" 10 000 годин — і залишитися на поверхні. А можна 20 хвилин з повною присутністю — і щось зміниться назавжди.
Код — так само.
1000 рядків з AI за день — це обсяг. 20 рядків, які ти справді зрозумів — це знання, яке залишиться.
———
Швидке і повільне мислення
Канеман поділив мислення на два режими. Швидке — інтуїтивне, автоматичне. Повільне — аналітичне, свідоме.
AI підсилює швидке: код "тече", рішення приходять миттєво.
Але архітектура, крайові випадки, підтримка — це все повільне мислення. Важке. Але необхідне.
———
Що робити
Пауза перед Accept. 3 секунди. Чи я розумію цей код? Чи я його просто впізнаю?
Спочатку сам. Спробуй написати сам. Навіть неправильно. Потім порівняй з підказкою.
Поясни собі. Якщо не можеш пояснити прийнятий код — ти його не знаєш.
Іноді вимикай. 30 хвилин без Copilot. Відчуй різницю.
———
Головне
AI прискорює написання коду. Але мудрість — це не кількість написаного.
Мудрість — це те, що залишається після труднощів. Час, зусилля, присутність.
Юра написав: "either you manage complexity at boundaries, or it accumulates where it’s most expensive to pay."
Додам: найдорожче місце — твоя голова. Не дозволяй AI платити за тебе тим, що робить тебе слабшим.
———
Джерела:
• Koriat & Bjork (2005) — Illusions of competence
• Bjork & Bjork (2011) — Desirable difficulties
• Slamecka & Graf (1978) — Generation effect
• Risko & Gilbert (2016) — Cognitive offloading
• Peng et al. (2023) — AI code suggestions impact
• Kawakami et al. (2024) — AI and skill decay
Stay tuned🧠
Мій старий друг, Юра Лучанінов написав про пастку: ми плутаємо швидкість з прогресом. AI прискорює руки. Але чи прискорює розуміння?
Когнітивна психологія каже: ні. І це не новина — цю закономірність досліджують десятиліттями.
———
Ілюзія компетентності
Коли щось дається легко, ми автоматично переоцінюємо своє розуміння. Психологи називають це "foresight bias" — плутаємо "мені зараз легко" з "я це знатиму завтра".
AI-підказка прийнята за 2 секунди? Мозок реєструє: "я це знаю".
Але ні. Ти це бачив. А "бачив" і "знаю" — різні речі. Бачив — це коли впізнаєш код, коли його показують. Знаєш — це коли можеш написати сам, без підказки. Перше дається легко. Друге вимагає зусиль.
———
Бажані труднощі
Є такий парадокс: умови, які сповільнюють поточну роботу, посилюють довгострокове засвоєння. Психологи називають це "desirable difficulties" — бажані труднощі.
Що сюди входить? Повторення з інтервалами. Перемішування тем. Самостійне згадування. Генерація замість споживання.
І от пастка: все, що AI усуває "для зручності" — це саме те, що будує справжню експертизу.
———
Ефект генерації
Ми краще запам'ятовуємо те, що генеруємо самі, ніж те, що читаємо готовим. Це довели ще в 1978 році.
Copilot дає готове. Ти приймаєш. Нейронні зв'язки, які мали б сформуватися — не формуються.
Дослідження 2023 року підтвердило це для AI-кодингу: новачки з AI швидше завершують задачі, але розуміння не покращується. І при цьому вони відчувають, що навчилися більше.
Це і є ілюзія плинності. Легко приймати — значить легко забути.
———
GPS для коду
Коли ми вивантажуємо задачі на зовнішні інструменти, поточна продуктивність зростає. Але внутрішні навички можуть слабшати.
Приклад: люди, які постійно користуються навігатором, гірше орієнтуються в просторі. Це доведено.
AI — це GPS для коду. Зручно. Швидко. І потенційно — атрофія.
———
Про глибину
Швидкий досвід ≠ глибокий досвід.
Можна "просидіти" 10 000 годин — і залишитися на поверхні. А можна 20 хвилин з повною присутністю — і щось зміниться назавжди.
Код — так само.
1000 рядків з AI за день — це обсяг. 20 рядків, які ти справді зрозумів — це знання, яке залишиться.
———
Швидке і повільне мислення
Канеман поділив мислення на два режими. Швидке — інтуїтивне, автоматичне. Повільне — аналітичне, свідоме.
AI підсилює швидке: код "тече", рішення приходять миттєво.
Але архітектура, крайові випадки, підтримка — це все повільне мислення. Важке. Але необхідне.
———
Що робити
Пауза перед Accept. 3 секунди. Чи я розумію цей код? Чи я його просто впізнаю?
Спочатку сам. Спробуй написати сам. Навіть неправильно. Потім порівняй з підказкою.
Поясни собі. Якщо не можеш пояснити прийнятий код — ти його не знаєш.
Іноді вимикай. 30 хвилин без Copilot. Відчуй різницю.
———
Головне
AI прискорює написання коду. Але мудрість — це не кількість написаного.
Мудрість — це те, що залишається після труднощів. Час, зусилля, присутність.
Юра написав: "either you manage complexity at boundaries, or it accumulates where it’s most expensive to pay."
Додам: найдорожче місце — твоя голова. Не дозволяй AI платити за тебе тим, що робить тебе слабшим.
———
Джерела:
• Koriat & Bjork (2005) — Illusions of competence
• Bjork & Bjork (2011) — Desirable difficulties
• Slamecka & Graf (1978) — Generation effect
• Risko & Gilbert (2016) — Cognitive offloading
• Peng et al. (2023) — AI code suggestions impact
• Kawakami et al. (2024) — AI and skill decay
Stay tuned
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤1
Натрапив на біржу для ШІ агентів, де вони можуть найняти людину для того що не зможуть самі зробити.
З цікавого, розробники коштують меньше пламбепів....
З цікавого, розробники коштують меньше пламбепів....
Тестую новий Claude Opus 4.6.
Коли задаєш делікатні психологічні питання, то вилізла навіть така от штука.
Це реально дуже круто.
Коли задаєш делікатні психологічні питання, то вилізла навіть така от штука.
Це реально дуже круто.
Вайб Кодера
Пару місяців дослідів, спогадів, роскопок веб-архіва... І скоро на DOU вийде нова стаття з серії "Еволюція Фронтенда". #анонс #DOU
DOU
Frontend Evolution #3: Flash — золота ера плагінів (2000–2008)
Flash був не тим, за що його тримали
Скажіть «Flash» — і більшість згадає анімовані банери, «Skip Intro» та ігри на Miniclip. Це правда, але це поверх
Скажіть «Flash» — і більшість згадає анімовані банери, «Skip Intro» та ігри на Miniclip. Це правда, але це поверх
👀1
Твій PR висить другий день.
Ти вже переключився на інший таск. Потім ще на один. Чесно — половину того коду вже не пам'ятаєш.
Коли рев'ювер нарешті гляне, витратиш 20 хвилин просто щоб згадати "а що я тут взагалі робив?"
Знайомо ж?
LinearB проаналізували 8.1 мільйона PR-ів із 4,800 команд. Половина з них простоює 50%+ свого життя. Не рев'ювиться. Не правиться. Просто лежить.
Завтра покажу скільки це коштує в доларах. Спойлер - ти здивуєшся.
Stay tuned🧠
Ти вже переключився на інший таск. Потім ще на один. Чесно — половину того коду вже не пам'ятаєш.
Коли рев'ювер нарешті гляне, витратиш 20 хвилин просто щоб згадати "а що я тут взагалі робив?"
Знайомо ж?
LinearB проаналізували 8.1 мільйона PR-ів із 4,800 команд. Половина з них простоює 50%+ свого життя. Не рев'ювиться. Не правиться. Просто лежить.
Завтра покажу скільки це коштує в доларах. Спойлер - ти здивуєшся.
Stay tuned
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Скільки коштує "почекай, гляну після обіду"
Ну давай рахувати.
У штатах розробник коштує ~$82/год з усіма податками (Indeed, BLS). На очікування рев'ю йде 5.8 годин на тиждень. Тобто:
5.8 × 50 тижнів × $82 = $23,780
На одного розробника. На рік.
Команда з 10? $237,800. Просто чекаючи.
Не на саме рев'ю, бо рев'ю — корисна робота. А от PR, що лежить у черзі поки контекст вивітрюється і мерж конфлікти ростуть як гриби після дощу — це вже гроші на вітер.
🇺🇦 А тепер для нас.
Мідл в Україні — ~$3,450/міс (Scroll Media). Сеньйор — $5,000+. З податками та офісом мідл обходиться приблизно в $4,500/міс, тобто ~$27/год.
5.8 × 50 × $27 = $7,830 на одного на рік
Десять мідлів? ~$78,300. Це ж ціла річна зарплата сеньйора. Просто на те, що PR-и лежать.
Джерела: LinearB (8.1M PRs), Full Scale, Scroll Media
Далі — чому це ще гірше ніж здається ⬇️
Ну давай рахувати.
У штатах розробник коштує ~$82/год з усіма податками (Indeed, BLS). На очікування рев'ю йде 5.8 годин на тиждень. Тобто:
5.8 × 50 тижнів × $82 = $23,780
На одного розробника. На рік.
Команда з 10? $237,800. Просто чекаючи.
Не на саме рев'ю, бо рев'ю — корисна робота. А от PR, що лежить у черзі поки контекст вивітрюється і мерж конфлікти ростуть як гриби після дощу — це вже гроші на вітер.
🇺🇦 А тепер для нас.
Мідл в Україні — ~$3,450/міс (Scroll Media). Сеньйор — $5,000+. З податками та офісом мідл обходиться приблизно в $4,500/міс, тобто ~$27/год.
5.8 × 50 × $27 = $7,830 на одного на рік
Десять мідлів? ~$78,300. Це ж ціла річна зарплата сеньйора. Просто на те, що PR-и лежать.
Джерела: LinearB (8.1M PRs), Full Scale, Scroll Media
Далі — чому це ще гірше ніж здається ⬇️
Indeed
Software engineer salary in United States
The average salary for a Software Engineer is $135,282 per year in United States. Learn about salaries, benefits, salary satisfaction and where you could earn the most.
👍1
🧠 Повільні рев'ю — це подвійний удар
Gloria Mark з UC Irvine виміряла: щоб повернутись у "потік" після переривання, потрібно 23 хвилини 15 секунд. Не приблизно — реально виміряли.
Переключаєшся з поточної задачі на старий PR — платиш цей податок двічі. Спочатку вийди з контексту. Потім згадай, що ти писав три дні тому. Ну, удачі.
І це ж не все.
SmartBear дослідили 2,500 PR-ів:
• PR до 100 рядків → знаходять 87% багів
• PR на 1000+ рядків → лише 28%
Повільне рев'ю = PR розростається = більше багів у проді.
Meta теж опублікували цікаве: задоволеність роботою падає прямо пропорційно часу очікування PR. Не "задоволеність процесом рев'ю". Загальна. Задоволеність. Роботою.
Завтра — що роблять команди, у яких все ок 👇
Gloria Mark з UC Irvine виміряла: щоб повернутись у "потік" після переривання, потрібно 23 хвилини 15 секунд. Не приблизно — реально виміряли.
Переключаєшся з поточної задачі на старий PR — платиш цей податок двічі. Спочатку вийди з контексту. Потім згадай, що ти писав три дні тому. Ну, удачі.
І це ж не все.
SmartBear дослідили 2,500 PR-ів:
• PR до 100 рядків → знаходять 87% багів
• PR на 1000+ рядків → лише 28%
Повільне рев'ю = PR розростається = більше багів у проді.
Meta теж опублікували цікаве: задоволеність роботою падає прямо пропорційно часу очікування PR. Не "задоволеність процесом рев'ю". Загальна. Задоволеність. Роботою.
Завтра — що роблять команди, у яких все ок 👇
👍5🤔3🔥1
⚡ Що роблять найшвидші команди
LinearB виділяє "elite" рівень — це топ-20% команд, у яких pickup time менше 7 годин. Google взагалі за 4 години рев'ювить. Що ж вони роблять інакше?
1️⃣ Маленькі PR
Graphite кажуть: 50 рядків — ідеал. Google — ~200. Elite команди — 219 в середньому. Менше PR = швидше рев'ю = менше багів = менше конфліктів.
2️⃣ Конкретний рев'ювер
CODEOWNERS у GitHub. Бо "хтось гляне" = ніхто не гляне. Bystander effect працює і в код рев'ю, от так.
3️⃣ Вимірюють pickup time
Не знаєш цифру — не бачиш проблему. Slack бот, який пінгає після 8 годин? Примітивно, але працює.
4️⃣ AI на перший прохід
Лінтери + статичний аналіз ловлять дрібниці до людини. AI code review йде далі — перший прохід за хвилини замість годин.
46% розробників не довіряють AI повністю. І правильно ж. Тому підхід: AI пропонує, людина вирішує. Не навпаки.
Завтра — що робити в понеділок 👇
LinearB виділяє "elite" рівень — це топ-20% команд, у яких pickup time менше 7 годин. Google взагалі за 4 години рев'ювить. Що ж вони роблять інакше?
1️⃣ Маленькі PR
Graphite кажуть: 50 рядків — ідеал. Google — ~200. Elite команди — 219 в середньому. Менше PR = швидше рев'ю = менше багів = менше конфліктів.
2️⃣ Конкретний рев'ювер
CODEOWNERS у GitHub. Бо "хтось гляне" = ніхто не гляне. Bystander effect працює і в код рев'ю, от так.
3️⃣ Вимірюють pickup time
Не знаєш цифру — не бачиш проблему. Slack бот, який пінгає після 8 годин? Примітивно, але працює.
4️⃣ AI на перший прохід
Лінтери + статичний аналіз ловлять дрібниці до людини. AI code review йде далі — перший прохід за хвилини замість годин.
46% розробників не довіряють AI повністю. І правильно ж. Тому підхід: AI пропонує, людина вирішує. Не навпаки.
Завтра — що робити в понеділок 👇
Engineerscodex
How Google takes the pain out of code reviews, with 97% dev satisfaction
A study of Google's code review tooling (Critique), AI-powered improvements, and recent statistics
👍5❤2
📋 Що робити в понеділок
Чотири кроки. Жоден не потребує бюджету чи дозволу менеджера.
1. Витягни метрики
GitHub, GitLab, Bitbucket — усі мають дані. Який у вас avg pickup time? Cycle time? Розмір PR? Не знаєш? От це і є перша проблема.
2. Постав ціль
DORA elite — lead time менше дня. Не обов'язково як Google. "Same business day" для першого рев'ю — вже прогрес.
3. Один експеримент на 2 тижні
Розбий наступний великий PR на 2-3 менших. Або додай CODEOWNERS. Або Slack reminder на стейл PR-и. Щось одне. Подивись на числа.
4. Зроби видимим
Додай PR cycle time на дашборд команди. Коли всі бачать "середній час — 48 годин", розмова починається сама.
———
Повна стаття з усіма джерелами та цифрами:
👉 https://gitautoreview.com/blog/hidden-cost-of-slow-code-reviews
P.S. Ми робили інструмент, який дає AI-рев'ю за хвилини, але публікує коментарі тільки після твого ОК.
Git AutoReview
Чотири кроки. Жоден не потребує бюджету чи дозволу менеджера.
1. Витягни метрики
GitHub, GitLab, Bitbucket — усі мають дані. Який у вас avg pickup time? Cycle time? Розмір PR? Не знаєш? От це і є перша проблема.
2. Постав ціль
DORA elite — lead time менше дня. Не обов'язково як Google. "Same business day" для першого рев'ю — вже прогрес.
3. Один експеримент на 2 тижні
Розбий наступний великий PR на 2-3 менших. Або додай CODEOWNERS. Або Slack reminder на стейл PR-и. Щось одне. Подивись на числа.
4. Зроби видимим
Додай PR cycle time на дашборд команди. Коли всі бачать "середній час — 48 годин", розмова починається сама.
———
Повна стаття з усіма джерелами та цифрами:
👉 https://gitautoreview.com/blog/hidden-cost-of-slow-code-reviews
P.S. Ми робили інструмент, який дає AI-рев'ю за хвилини, але публікує коментарі тільки після твого ОК.
Git AutoReview
dora.dev
DORA | DORA’s software delivery performance metrics
DORA is a long running research program that seeks to understand the capabilities that drive software delivery and operations performance. DORA helps teams apply those capabilities, leading to better organizational performance.
👍3🔥2
https://youtube.com/shorts/0FzlH1EdLdU
Це реальна ржака ))
Цікаво, а Сірі колись вийде "дуже розумна" ?
Це реальна ржака ))
Цікаво, а Сірі колись вийде "дуже розумна" ?
YouTube
На тему заміни нас ШІ - розмова з Gemini #ai #gemini
Enjoy the videos and music you love, upload original content, and share it all with friends, family, and the world on YouTube.
😁8
Всім привіт хто доєднався до нас сьогодні.
Трошки пізніше напису сьогодні пост про себе, про що цей канал і що буде тут далі.
Якщо буде мать хвилинку і трошки сами про себе написати - буду радий )
Трошки пізніше напису сьогодні пост про себе, про що цей канал і що буде тут далі.
Якщо буде мать хвилинку і трошки сами про себе написати - буду радий )
👍17🔥4❤2👏1
Вайб Кодера
https://dou.ua/forums/topic/57819/
Хочу апнути цей матеріал. Я декількамісяців досліджував тему, а переглядів досить мало.
Знаю шо багатобуков і можна попросити агента шоб суть росказав, але...
не делегуйте задоволення прочитати у вільний час ))
Знаю шо багатобуков і можна попросити агента шоб суть росказав, але...
не делегуйте задоволення прочитати у вільний час ))
👍3🔥1