Skip to content
L-SYSTEM

Anatomy of a Conditional: Two Clauses, One Sentence

Preview unit: this one is open without enrolling. The rest open after you enrol.

Анатомия условного предложения

Условное предложение состоит из двух частей — клауз:

  • if-клауза — условие;
  • главная часть (result clause) — то, что из условия следует.
If the migration fails,        we roll back automatically.
└──── if-клауза ────┘          └──── главная часть ────┘

Ни одна часть не живёт отдельно. If the migration fails оставляет читателя в ожидании; we roll back automatically грамматически самостоятельна, но ничего не говорит о том, когда.

Порядок можно поменять

Оба порядка верны и значат одно и то же. Меняется акцент: то, что стоит первым, и есть то, на что вы обращаете внимание.

Порядок Пример Акцент
Сначала условие If the migration fails, we roll back automatically. на риске
Сначала результат We roll back automatically if the migration fails. на защите

В статусе для команды вы напишете первое. В документации, описывающей функцию, — второе.

Правило запятой

Правило одно, и его стоит выучить, потому что оно механическое:

if-клауза первой → запятая. Главная часть первой → запятой нет.

  • ✅ If the build is red, don't merge.
  • ✅ Don't merge if the build is red.
  • ❌ Don't merge, if the build is red.
  • ❌ If the build is red don't merge.

Опора на русский. Русская пунктуация ставит запятую перед «если» всегда: «Не мержи, если сборка красная». Английская — нет: когда условие стоит вторым, слово if само отмечает границу, и запятая лишняя. Эта ошибка держится у сильных учеников дольше всех — именно потому, что русское правило срабатывает автоматически.

q Что стоит первым? a if-клауза If the build is red, don't merge. q->a условие b главная часть Don't merge if the build is red. q->b результат ca ставим запятую a->ca cb запятой нет — не переносите русское правило b->cb
FigureСхема: ставить ли запятую — зависит от того, что стоит первым
Description

Ромб с вопросом «Что стоит первым?». Стрелка «условие» ведёт к блоку «if-клауза: If the build is red, don't merge.», под ним — «ставим запятую». Стрелка «результат» ведёт к блоку «главная часть: Don't merge if the build is red.», под ним — «запятой нет — не переносите русское правило». Схема сводит правило к одному вопросу о порядке частей.

Время глагола — не время события

Это одна мысль, которая открывает весь курс.

Время глагола (tense) — форма: fails, failed, had failed. Время события (time) — когда это происходит: сейчас, вчера, в следующий вторник.

В условных предложениях они расходятся:

  • If it rains tomorrow, the outdoor stand-up is cancelled. — present (rains), а время — будущее.
  • If we had more staging capacity, we would test this properly. — past (had), а время — настоящее. Речь о сегодняшних мощностях, а не о прошлогодних.

Что же тогда выражает сдвиг времени назад? Дистанцию от реальности. Present — реально возможное. Past — воображаемое сейчас. Past perfect — воображаемое в прошлом, то, чего уже не было.

Разворот скетчбука: слева в акварели инженер за рабочим столом, справа бледным карандашом — она же на пляже
FigureРазворот скетчбука: слева в акварели инженер за рабочим столом, справа бледным карандашом — она же на пляже
Description

Раскрытый старый скетчбук на грубом деревянном столе. Левая страница в тёплой акварели: молодая женщина в зелёном джемпере сидит за рабочим столом с ноутбуком и кружкой, за окном дождь. Правая страница нарисована только бледным карандашом, без цвета: та же женщина отдыхает в шезлонге у моря под зонтом, рядом на песке лежит закрытый блокнот. Это ключ ко всему курсу: акварель — реальность («сейчас я работаю»), голый карандаш — воображаемое («If I had a week off, I would be at the sea»). Past simple had здесь про сегодня, а не про прошлое. Рисунок не показывает саму форму глагола — только, что реально, а что нет.

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

Четыре традиционных типа

Вы их, скорее всего, встречали. Это удобные ярлыки для четырёх частых случаев, курс ими пользуется, но система ими не исчерпывается.

Название Схема Пример
Zero if + present, present If the cache key is missing, the service queries the database.
First if + present, will + infinitive If we merge today, we will ship on Friday.
Second if + past simple, would + infinitive If we had a second reviewer, the queue would move faster.
Third if + past perfect, would have + past participle If we had pinned the version, the build would not have broken.

А теперь четыре обычных предложения из рабочей недели в ENGAGE, которые ни в один тип не влезают:

  • If the retry succeeded, the alert must have been noise. (вывод о прошлом — u08)
  • If the load test passes, deploy to production. (инструкция — u03)
  • If you assess the data thoroughly, you might find the root cause. (ослабленный прогноз — u07)
  • If we had pinned the version, the build would not be broken right now. (причина в прошлом, следствие сейчас — u06)

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

Что на самом деле меняется

Три вещи, и меняются они почти независимо:

  1. Насколько реально условие? — факт, вероятное будущее, маловероятная гипотеза или невозможное.
  2. Что делает говорящий? — утверждает, прогнозирует, делает вывод, советует, распоряжается, сожалеет.
  3. Насколько он уверен? — will / should / might в одном и том же месте дают очень разную степень уверенности.

Дальше курс проходит по этим трём осям по очереди.

Practice

Checking here changes nothing: answers start counting once you enrol on the course.

  1. We escalate to the on-call lead if the error rate stays above two percent for five minutes. Какая часть — if-клауза?

  2. If you had joined the call, you would have heard the client's actual deadline. Какая часть — главная (result clause)?

  3. Переставьте части так, чтобы главная часть стояла первой, и расставьте знаки. Напишите предложение целиком, с заглавной буквы и точкой в конце: If the pipeline is green, the artefact is published automatically.

  4. Переставьте части так, чтобы if-клауза стояла первой, и расставьте знаки. Напишите предложение целиком, с заглавной буквы и точкой в конце: The scheduler drops the job if the worker does not respond within thirty seconds.

  5. Переставьте части так, чтобы главная часть стояла первой, и расставьте знаки. Напишите предложение целиком, с заглавной буквы и точкой в конце: If we had known about the rate limit, we would have batched the requests.

  6. Какое предложение пунктуировано верно?

  7. Какое предложение пунктуировано верно?

  8. Вы переводите фразу из раннбука: «Откатываем релиз, если падает больше 1 % запросов». Какой перевод пунктуирован верно?

  9. If the disk filled up, the log rotation was misconfigured. К какому времени относится это предложение, если не смотреть на форму глагола?

  10. If I had root access, I would check that myself. К какому времени относится это предложение?

  11. If the release is signed off today, QA starts tomorrow. К какому времени относится условие?

  12. If we had pinned the version, the build would not be broken right now. Как распределено время?

  13. Посмотрите на разворот с инженером: слева — рабочий стол в цвете, справа — пляж бледным карандашом. Что на рисунке реально?

  14. Какое предложение точнее всего подходит к развороту с инженером?

  15. If the cache key is missing, the service queries the database. Какой ярлык подходит?

  16. If the retry succeeded, the alert must have been noise. Какой ярлык подходит?

  17. Возьмите систему, которую хорошо знаете (фреймворк, пайплайн CI, свой проект). Напишите два условных предложения о её поведении: одно с if-клаузой в начале, другое — с главной частью в начале.

    This one is judged by the author’s rubric — your assistant does that, not the site.