УкрEng

Англійська для code review: як писати коментарі й приймати критику

Двоє колег на даху з краєвидом на місто разом дивляться на екран із рядками коду, жінка показує на виділений рядок
Код тут ні до чого: той самий технічний зміст коментаря може прозвучати як порада колеги або як ляпас, і вирішує це формулювання

Розробник із сильною технічною англійською нерідко спотикається саме на рев’ю. Написати This is wrong легко. Написати так, щоб автор не образився й виправив охоче, уже складніше. У розподіленій команді ця навичка цінується не менше за вміння читати чужий код.

Лексика рев’ю вузька й передбачувана, тому її можна натренувати окремо. Робочу мову для щоденних задач тренує англійська для розробників: там учаться пояснювати рішення й коментувати чужий код, а не зубрити абстрактну граматику.

Чому тон коментаря важить більше за зміст

Текстовий коментар позбавлений інтонації й міміки, тому читач домальовує тон сам. Суха фраза Don’t do this в усному форматі прозвучала б нейтрально, а в пул-реквесті легко читається як докір. Тому в здорових командах правило просте: критикуємо код, а не людину, і пропонуємо, а не наказуємо. Для цього в англійській є готові пом’якшувачі, з якими вимога звучить як прохання.

РізкоМ’якшеЧому краще
This is wrongI think this might break when the list is emptyназиває проблему, не виносить вироку
Don’t do thisCould we avoid this here? It might cause a race conditionпояснює причину
Why did you do this?What’s the reasoning behind this approach?питає, а не звинувачує
Rewrite thisWould it be cleaner to extract this into a helper?лишає автору вибір
Bad nameA clearer name might help future readersпро користь, не про провину
Одна думка, два тони You forgot the null check. → I think we’re missing a null check here. we замість you знімає особистий докір

Conventional Comments: префікси, що економлять нерви

Чимало непорозумінь на рев’ю виникає тому, що автор не розуміє ваги коментаря: перед ним дрібне побажання чи блокер, який не дасть влити зміни. Рятує проста домовленість Conventional Comments: кожен коментар починається з мітки, яка одразу задає його статус. Команда читає такі коментарі швидше, бо бачить пріоритет ще до тексту.

МіткаЗначенняПриклад
praise:похвала того, що варто зберегтиpraise: clean and readable solution
nitpick:дрібниця, не блокерnitpick: extra blank line here
suggestion:пропозиція покращенняsuggestion: we could memoize this
issue:проблема, яку треба виправитиissue: this crashes on null input
question:питання, а не вимогаquestion: why a map and not a set?
Позначка nit: споріднена з nitpick і означає необов’язкову дрібницю. Такий коментар не блокує злиття: виправити бажано, але не обов’язково. Чи блокують інші мітки, показує окрема позначка blocking або non-blocking

Фрази для типових ситуацій рев’ю

Більшість коментарів зводиться до чотирьох намірів: запропонувати, запитати, вказати на ризик і похвалити.

Запропонувати What do you think about pulling this logic into a separate function? відкрите питання запрошує до діалогу
Запитати Could you explain why you went with this approach? питання замість закиду: автор пояснює рішення, а не захищається
Вказати на ризик Heads-up: this might not be thread-safe under load. heads-up попереджає без звинувачення
Похвалити конкретно Nice handling of the edge case here. конкретна похвала важить більше за загальне good job

Як приймати критику свого коду

Друга половина рев’ю складається з відповідей на чужі коментарі, і тут теж є усталені фрази. Коротка ввічлива реакція додає Вам репутації в команді: вона показує, що Ви відкриті до критики, а не захищаєте кожен рядок.

ФразаПерекладКоли вживати
Good catch, fixedслушно, виправивпогодитися з правкою
Doneзробленокоротко закрити коментар
LGTMусе добре, схвалюю (looks good to me)схвалити пул-реквест
I’d rather keep it as is because…лишив би як є, бо…обґрунтована незгода
Could you clarify what you mean?уточни, будь ласка, що маєш на увазінезрозумілий коментар

спокійні робочі формулювання

Не погоджуватися теж можна. Аргументуйте, а не відмахуйтеся. Замість сухого No поясніть позицію: I see your point, but this way we avoid an extra query. Так суперечка не переходить на особистості.

Чек-лист перед тим, як натиснути Comment

Перш ніж відправити коментар, звірте його з п’ятьма пунктами. За тиждень вони стануть звичкою, і рев’ю-англійська перестане забирати зайві хвилини. Ще одна пастка: слова, що прикидаються знайомими. Розбір хибних друзів саме в IT-словнику вбереже від коментаря, який читається не так, як задумано.

  • Чи критикуєте Ви код, а не автора (this code замість you)
  • Чи зрозуміла вага коментаря: nit, suggestion чи issue
  • Чи є коротке пояснення «чому», а не лише «що не так»
  • Чи лишили Ви автору вибір там, де це питання смаку
  • Чи знайшлося хоч одне praise на вдалі рішення

Технічну частину Ви вже знаєте краще за будь-який підручник, лишається відшліфувати мову навколо неї. Та сама ввічлива стислість стане в пригоді в листуванні й на інтерв’ю: почитайте про робочий чат англійською та англійську для співбесіди в Big Tech.

Контакти

Натисніть месенджер, відкриється чат

Або телефонуйте: +38 050 23 77 000

Запис на заняття

Залиште контакт. Дмитро напише, запитає про мету й зручний для Вас час занять