C1 · Юнит 25 · 38 слов, 2 текста с переводом
Попросить помощи у программистов
Прод упал в пятницу вечером: форум программистов советует, шутит и спорит.
Тексты юнита
Грамматика юнита
Давно мучаюсь: «I've been staring at this for hours»
Вы уже знаете: have been + -ing — действие началось в прошлом и идёт до сих пор (B1, юнит 11), а How long have you been waiting? отличается от How many times have you written? (B2, юнит 7). Здесь — три новых случая.
1. Жалоба и видимый след. have been + -ing говорит не только «сколько длится», но и «вот почему я такой»: глаза устали, нервы кончились. По-русски — настоящее время: «два часа пялюсь».
2. В комментарии I have выпадает: Been staring at the logs since lunch. Так пишут в ленте и в чате; вслух так говорят только с друзьями.
3. had been + -ing в отчёте — то же самое, но до момента в прошлом: длилось месяцами и к пятнице ещё шло.
| Форма | Когда | Пример |
|---|---|---|
I've been staring | идёт до сих пор, видно по мне | I've been staring at the logs for two hours. |
Been staring | то же в комментарии | Been staring at this since lunch. |
it had been working | шло до момента в прошлом | it had been working close to its limits for months |
Примеры:
- Dinner has been waiting since seven. — Ужин ждёт с семи.
- That old system has been taking orders for twelve years. — Эта старая система принимает заказы уже двенадцать лет.
- Jonas had been staring at the screen for three hours when Emma knocked. — Йонас уже три часа смотрел в экран, когда Эмма постучала.
Глаголы состояния (know, want, understand) так не ставят: I've known about this bug for a week, а не I've been knowing.
Совет на форуме: «You might want to…», «Whatever you do, don't…»
На форуме советуют чужому человеку, поэтому прямое Do this звучит грубо. Носители выбирают ступеньку — от осторожного совета до строгого предупреждения.
| Ступенька | Форма | Как звучит |
|---|---|---|
| мягко | You might want to + глагол | «возможно, стоит…» — не про желание! |
| мягко | It might be worth + -ing | «может, есть смысл…» |
| вопросом | Have you tried + -ing? | «а ты пробовал…?» |
| твёрже | I'd hold off on + -ing | «я бы повременил с…» |
| строго | Whatever you do, don't + глагол | «что бы ни было, только не…» |
Ловушка: You might want to check the cache — это не «ты, может, захочешь», а вежливое «проверь кэш». Носитель поймёт как совет, а не как догадку о вашем желании.
После worth — всегда -ing: worth tracking down, а не worth to track down.
Примеры:
- You might want to fill the cache by hand first. — Возможно, сначала стоит заполнить кэш вручную.
- It might be worth tracking down on Monday. — В понедельник, может, стоит в этом покопаться.
- Have you tried explaining it to a rubber duck? — А ты пробовал объяснить это резиновой уточке?
- Whatever you do, don't start a rewrite tonight. — Что бы ни было, только не начинай сегодня всё переписывать.
- I'd hold off on the upgrade until Monday. — Я бы повременил с обновлением до понедельника.
Поговорка наполовину: «If it ain't broke…», «Famous last words»
Носители часто говорят только начало поговорки: конец все и так знают. Русский делает так же: «работает — не трогай», «знаменитые последние слова».
| Говорят | Целиком | Смысл |
|---|---|---|
If it ain't broke… | If it ain't broke, don't fix it. | работает — не трогай |
Famous last words. | (это и есть вся фраза) | ответ на самоуверенное «да что тут может сломаться» |
No need to reinvent the wheel. | There's no need to reinvent the wheel. | не изобретай велосипед |
Works on my machine. | It works on my machine. | «а у меня работает» — вечная отговорка |
Про ain't и broke. В поговорке они нарочно просторечные (по правилам было бы isn't broken). Поговорку повторяют как есть, а в своей речи так не говорят: ain't звучит как деревенское или очень разговорное.
Интонация. Famous last words и What could possibly go wrong? — это ирония: говорящий уверен, что всё пойдёт не так. В комментарии иронию иногда подчёркивают знаком /s.
Примеры:
- "It's only one line," he said. Famous last words. — «Там всего одна строчка», — сказал он. Знаменитые последние слова.
- If it ain't broke, don't fix it. — Работает — не трогай.
- Why reinvent the wheel when the old solution works? — Зачем изобретать велосипед, если старое решение работает?
Слова юнита
legacy code — старый код, доставшийся от других; легаси
Jonas spends half his week fixing legacy code. — Йонас полнедели чинит старый код.
technical debt — технический долг
Every quick fix adds a little technical debt. — Каждое быстрое исправление добавляет немного технического долга.
workaround — обходной путь, временное решение
There's no fix yet, but there is a workaround. — Исправления пока нет, но есть обходной путь.
edge case — крайний, редкий случай (который не предусмотрели)
The bug only appears in one edge case. — Ошибка появляется только в одном редком случае.
deprecated — устаревший (не рекомендуемый к использованию)
This part of the library is deprecated, so please don't use it. — Эта часть библиотеки устарела, так что, пожалуйста, не используйте её.
roll back — откатить (изменение, версию)
If the update breaks anything, we'll roll back. — Если обновление что-нибудь сломает, откатимся.
deploy — развернуть, выкатить (код на сервер)
We never deploy on Fridays. — По пятницам мы никогда не выкатываем.
over-engineered — переусложнённый
The app is over-engineered: it has twelve settings for one button. — Приложение переусложнено: двенадцать настроек на одну кнопку.
spaghetti code — запутанный код, спагетти-код
Nobody can change this spaghetti code without breaking something. — В этом запутанном коде ничего не поменяешь, чтобы не сломать что-то ещё.
refactor — рефакторить, навести порядок в коде
Let's refactor this file before we add anything new. — Давай наведём порядок в этом файле, прежде чем добавлять что-то новое.
rubber duck — резиновая уточка (которой объясняют ошибку)
Jonas keeps a rubber duck next to his laptop. — Йонас держит рядом с ноутбуком резиновую уточку.
works on my machine — а у меня работает
"It works on my machine," said Jonas, and everyone laughed. — «У меня всё работает», — сказал Йонас, и все засмеялись.
pull request — запрос на слияние кода, пул-реквест
I've opened a pull request; can you have a look? — Я открыл пул-реквест, посмотришь?
patch — исправление (программы), заплатка; залатать
The patch fixed the bug in five minutes. — Патч исправил ошибку за пять минут.
hotfix — срочное исправление, хотфикс
We need a hotfix before the customers wake up. — Нам нужно срочное исправление, пока клиенты не проснулись.
scope creep — расползание задачи (когда объём работ растёт)
Two weeks became two months because of scope creep. — Из-за расползания задачи две недели превратились в два месяца.
reinvent the wheel — изобретать велосипед
Don't reinvent the wheel: someone has already solved this. — Не изобретай велосипед: это уже кто-то решил.
under the hood — внутри, «под капотом»
The app looks simple, but a lot is going on under the hood. — Приложение выглядит просто, но под капотом происходит много всего.
bottleneck — узкое место
The old server is the bottleneck. — Узкое место — старый сервер.
duct tape — серебристый скотч; «на соплях»
The old printer is held together with duct tape. — Старый принтер держится на скотче.
if it ain't broke — работает — не трогай
If it ain't broke, don't fix it. — Работает — не трогай.
famous last words — знаменитые последние слова (о самоуверенной фразе)
"It's only one line of code." Famous last words. — «Там всего одна строчка кода». Знаменитые последние слова.
track down — отыскать, выследить
It took Jonas two hours to track down the bug. — У Йонаса ушло два часа, чтобы отыскать ошибку.
blameless — без поиска виноватых; невиновный
The review is blameless: we look for causes, not for people. — Разбор без поиска виноватых: мы ищем причины, а не людей.
prod — прод, рабочая версия (сайта, системы)
Never test on prod. — Никогда не тестируй на проде.
cache — кэш (временное хранилище данных)
Try clearing the cache and loading the page again. — Попробуй очистить кэш и загрузить страницу заново.
rewrite — переписать; переписывание
Zoe rewrote the first scene three times. — Зои трижды переписала первую сцену.
postmortem — разбор (сбоя, провала) задним числом
We'll write a postmortem on Monday. — В понедельник напишем разбор сбоя.
culprit — виновник; причина (поломки)
The culprit was an old cable. — Виновником оказался старый кабель.
surge — резко вырасти, хлынуть
Prices surged after the news. — После новости цены резко подскочили.
latency — задержка (отклика)
Latency doubled after the update. — После обновления задержка выросла вдвое.
spike — резко подскочить (и упасть)
Traffic spikes every evening at eight. — Каждый вечер в восемь трафик резко подскакивает.
cascade — идти лавиной, разрастаться цепочкой
One small error cascaded into a total outage. — Одна маленькая ошибка лавиной переросла в полный сбой.
tunnel vision — зашоренность, туннельное зрение
Stress gives you tunnel vision. — От стресса видишь только одно.
throttle — ограничивать (скорость, поток)
The provider throttles your speed after 50 gigabytes. — После 50 гигабайт провайдер урезает скорость.
alert — оповещение, тревожный сигнал
I got an alert at three in the morning. — В три часа ночи мне пришло оповещение.
brittle — хрупкий, ломкий
Old plastic gets brittle in the cold. — Старый пластик на холоде становится ломким.
untangle — распутать
It took me an hour to untangle the cables. — У меня ушёл час, чтобы распутать провода.
Выучите эти слова в карточках
В приложении слова юнита приходят в карточки небольшими порциями и повторяются, пока не запомнятся, а тексты показывают их в деле. 15 минут в день.
Начать бесплатноБесплатно открыто всё. Карта для регистрации не нужна.