آموزش زبان آلمانی (دورهٔ ۹۰ روزه) · درس ۴۳ از ۹۰

دیپلوی و ریلیز؛ گفتگوهایِ عملیاتیِ آخرِ هفتهٔ اسپرینت

⚡ پاسخ کوتاه

دیپلویِ آلمانی سه لحظهٔ زبانی دارد: قبل (چک‌لیست: „Sind alle Approves da?“)، حین („Wir deployen jetzt auf Production“ + پایش) و بعد („Der Deploy ist durch — alles grün!“). و برای بدترین حالت: „Wir rollen zurück“ (رول‌بک می‌کنیم) — آرام، مستند، بدونِ جست‌وجویِ مقصر!

درس ۴۳ از ۹۰ — دیپلوی و ریلیز؛ گفتگوهایِ عملیاتیِ آخرِ هفتهٔ اسپرینت

جمعه‌بعدازظهرِ آخرِ اسپرینت، اتاقِ چت پر از جمله‌هایِ عملیاتی می‌شود: «فریز شد؟»، «بیلدِ سبز آمد؟»، «دیپلوی رفت؟»، «رول‌بک کنیم؟» — این درس زبانِ همان لحظه‌هاست!

و یک فرهنگِ مهم: در آلمانِ مهندسی، پست‌مورتمِ خرابیِ ریلیز «بدونِ جست‌وجویِ مقصر» است (blameless postmortem) — «قانون شمارهٔ ۱: مقصر پیدا نکن؛ علت پیدا کن». جمله‌هایِ این درس، هم عملیات را می‌سازند هم این فرهنگِ سالم را!

چک‌لیستِ قبلِ دیپلوی؛ پنج سوال

سوال آلمانی جوابِ سبز
همه‌ی ریویوها؟ Sind alle Approves da? „Ja, zwei Approves.“
تست‌ها؟ Ist die Pipeline grün? „Ja, alle Tests grün.“
مهاجرتِ دیتابیس؟ Gibt es eine Migration? „Ja, Ticket 456 — rückwärtskompatibel.“
کی دیپلوی کنیم؟ Wann fahren wir hoch? „Heute 17 Uhr, wenn wenig Traffic.“
پلنِ برگشت؟ Was ist der Rollback-Plan? „Vorheriger Stand ist getaggt.“

دو واژهٔ عملیاتیِ مقدس: hochfahren (بالاآوردن/دیپلوی‌کردن — «Wann fahren wir hoch?» کِی بالا می‌آوریم؟) و der Traffic (ترافیک/بارِ کاربر). زمانِ طلاییِ دیپلویِ آلمانی: کم‌ترافیک — جمعه ۱۷ یا صبحِ زود!

حین و بعد؛ پیام‌هایِ زندهٔ دیپلوی

Wir fahren jetzt die Version 2.5.0 auf Production. Bitte keine Merges bis 18 Uhr!الان نسخهٔ ۲.۵.۰ را روی پروداکشن بالا می‌آوریم. تا ساعت ۱۸ مرج نکنید لطفاً! — درخواستِ freeze = جملهٔ مقدسِ دیپلوی
Der Deploy läuft. Ich beobachte die Logs und die Metriken.دیپلوی در حالِ اجراست. لاگ‌ها و متریک‌ها را می‌پایم. — beobachten = پایش‌کردن؛ فعلِ عملیاتی!
Der Deploy ist durch! Alles grün — die Fehler-Rate ist normal. 🎉دیپلوی انجام شد! همه‌چیز سبز — نرخِ خطا عادی است. — پیامِ پیروزیِ استاندارد + ایموجیِ جشن!
Die Latenz ist leicht erhöht — wir beobachten es noch 30 Minuten.تأخیر کمی بالاست — سی دقیقهٔ دیگر هم می‌پایمش. — هشدارِ نرم: نه پانیک، نه بی‌خیالی!

گفتگو: خرابیِ ریلیز و رول‌بکِ آرام

Sarah: Die Fehler-Rate ist nach dem Deploy hoch gegangen. 5 Prozent der Logins schlagen fehl!نرخِ خطا بعد از دیپلوی بالا رفته. ۵٪ لاگین‌ها شکست می‌خورند! — گزارشِ دقیق با عدد!
Du: Ich sehe es auch. Betrifft es nur den neuen Endpunkt? — Nein, auch den alten!من هم می‌بینم. فقط اندپوینتِ جدید است؟ — نه، قدیمی را هم! — eingrenzen در اوجِ بحران!
Teamlead: OK, keine Panik. Wir rollen zurück. Ali, machst du das?باشه، پانیک نکنید. رول‌بک می‌کنیم. علی، انجامش می‌دهی؟ — keine Panik: جملهٔ فرماندهِ آرام!
Du: Ja, Rollback läuft. … Der Rollback ist durch, die Rate normalisiert sich.بله، رول‌بک اجراست. … رول‌بک تمام شد، نرخ نرمال می‌شود. — گزارشِ مرحله‌به‌مرحله!
Teamlead: Gut gemacht. Fehleranalyse morgen früh — blameless. Wir suchen die Ursache, nicht den Schuldigen.خوب بود. تحلیلِ خطا فردا صبح — بدونِ جست‌وجویِ مقصر. علت را می‌جوییم نه مقصر را. — فرهنگِ مهندسیِ آلمانیِ سالم در یک جمله!

گرامرِ عمیق‌تر: «بالا و پایین» — hochfahren و runterfahren

زبانِ عملیاتیِ آلمانی، جهت‌محور است: hochfahren (بالاآوردن: سرویس/سرور/نسخه)، runterfahren (پایین‌آوردنِ تمیز)، abschalten (خاموش‌کردن)، zurückrollen (رول‌بک‌کردن). و برای وضعیت‌ها: online gehen (آنلاین شدن)، ausfallen (قطع‌شدن: „Der Service fällt aus!“). نکتهٔ جدانشدنی: «Ich fahre die neue Version hoch» — پیشوند آخر؛ و فعلِ fahren با مفعولِ دقیق: نسخه/سرویس/سرور را بالا می‌آوریم، نه «دیپلوی را»!

اشتباه‌های رایجِ فارسی‌زبان‌ها در همین درس

این بخش را با یک قرارداد بخوان: هر ❌ یعنی «مغزِ فارسی‌زبانت این را می‌سازد و طبیعی است»، و هر ✅ یعنی «این همان چیزی است که گیرندهٔ آلمانی‌زبان می‌شنود». با هر جفت بلند تکرار کن تا شکلِ درست در گوشت نشست کند.

❌ Wir machen Deploy. (جملهٔ نصفه)❌ فعلِ دقیق و جهتش را بگو: بالا می‌آوریم/اجرای دیپلوی می‌رود!
✅ Wir fahren die neue Version hoch. / Der Deploy läuft.✅ شکل درست را دو بار بلند بگو؛ حالا یک بار در یک جملهٔ خودت.
❌ Der Server ist kaputt! (در اوجِ بحران)❌ «خراب» حکمِ نهایی است؛ در لحظهٔ دیباگ: وضعیت را دقیق بگو!
✅ Der Server antwortet nicht / ist nicht erreichbar.✅ شکل درست را دو بار بلند بگو؛ حالا یک بار در یک جملهٔ خودت.
❌ Ali hat den Bug verursacht! (در پست‌مورتم)❌ فرهنگِ blameless: فعل را با کد/پروسه صرف کن نه با نامِ آدم!
✅ Die Ursache war die fehlende Migration-Prüfung.✅ شکل درست را دو بار بلند بگو؛ حالا یک بار در یک جملهٔ خودت.

تمرین‌های این درس — چهار قدم، بی‌عجله

تمرین: یک دیپلویِ خیالی را از چک‌لیست تا جشن اجرا کن:

  1. پنج‌سوالِ چک‌لیست را با جواب‌های سبز بگو — به‌عنوانِ مسئولِ ریلیز.
  2. سه پیامِ چتِ دیپلوی را بنویس: شروع، حینِ پایش، پیامِ پیروزی.
  3. دیالوگِ رول‌بک را اجرا کن — با آرامشِ فرمانده! هر سه نقش.
  4. یک پست‌مورتمِ سه‌جمله‌ایِ blameless بنویس: چه شد، علت، چه یاد گرفتیم.

پاسخ تمرین‌ها — اول خودت جواب بده، بعد باز کن

پاسخ تمرین ۱
„Sind alle Approves da? — Ja. Pipeline grün? — Ja. Migration? — Ticket 456, abwärtskompatibel. Wann? — 17 Uhr. Rollback-Plan? — Vorheriger Stand ist getaggt.“ — پنج‌پرسش‌وپاسخ = مجوزِ پروازِ ریلیز!
پاسخ تمرین ۲
„Wir fahren jetzt v2.5.0 hoch. Keine Merges bis 18 Uhr!“ · „Deploy läuft, ich beobachte Logs und Metriken.“ · „Deploy durch — alles grün! 🎉“ — سه پیام = روایتِ کاملِ یک دیپلویِ سالم!
پاسخ تمرین ۳
اجرای رول‌بک با ریتم: کشف (با عدد!) → eingrenzen → تصمیم → اجرا → گزارش. آخرِ جملهٔ تیم‌لید را با لحنِ واقعی بگو: „Wir suchen die Ursache, nicht den Schuldigen“ — این جمله را هرگز فراموش نکن!
پاسخ تمرین ۴
„Was passierte: Nach dem Deploy stieg die Fehler-Rate auf 5 Prozent. Ursache: Die Migration lief in der falschen Reihenfolge. Gelernt: Wir ergänzen einen automatischen Check in die Pipeline.“ — سه‌جمله‌ایِ کامل: واقعه + علت + درس. پست‌مورتمِ حرفه‌ای تمام شد!

چالشِ امروز

🎯 امروز واژه‌نامهٔ عملیاتیِ شخصی‌ات را بساز: پنج جملهٔ دیپلویِ این درس را با نسخه/تاریخِ واقعیِ پروژهٔ خودت بازنویسی کن و در آپ‌ورد ذخیره کن. دیپلویِ بعدی، به آلمانیِ کامل گزارش می‌شود!

نکات مکالمهٔ واقعی که کتاب‌ها کم می‌گویند

  • «Deploy-Fenster» و «Freeze» را جدی بگیر — پنجرهٔ دیپلوی (معمولاً سه‌شنبه-چهارشنبه!) و فریزِ کد (آخرِ هفتهٔ قبلِ ریلیزِ بزرگ) در فرهنگِ آلمانیِ عملیاتی قوانینِ خانه‌اند. جملهٔ فرهنگی: „Vor dem Release ist Code-Freeze — bitte nichts mehr mergen!“ (قبل از ریلیز فریز است — دیگر چیزی مرج نشود!)
  • جمعه‌عصرِ دیپلوی، شوخیِ قدیمیِ هر تیمِ آلمانی است — «Niemals am Freitag deployen!» (هرگز جمعه دیپلوی نکن!) — می‌شنوی، می‌خندی، و بعد خودت هم به آن می‌رسی! قانونِ طلاییِ واقعی: دیپلویِ بزرگ = صبحِ روزِ کاریِ میانه.
  • پس از هر خرابی: «Ohne Schuldzuweisung» — بدونِ انتسابِ تقصیر. این عبارت را در دعوت‌نامهٔ پست‌مورتم می‌بینی و باید باورش کنی: هدف، سیستمِ بهتر است نه شخصِ سرخورده. تو هم وقتی خطا کردی، همین قالب را بگو: „Ich habe den Fehler verursacht — hier ist, was wir daraus lernen“ (من خطا را باعث شدم — این چیزی است که می‌توانیم یاد بگیریم) — صراحتِ مسئولانه، بلندترین امتیازِ فرهنگِ آلمانی است!
🔑 جمع‌بندی این درس

دیپلوی با چک‌لیستِ پنج‌سوالی شروع می‌شود، با «Wir fahren hoch — keine Merges!» اجرا و با «Alles grün! 🎉» جشن می‌شود. خرابی؟ «Keine Panik — wir rollen zurück» و پست‌مورتمِ «Ohne Schuldzuweisung»: علت می‌جوییم نه مقصر. hochfahren/runterfahren/ausfallen — جهت‌ها را با فعل بگو!

پرسش‌های رایج

DevOps و SRE در آلمانی چه می‌گویند؟
خودِ همین عنوان‌ها! DevOps و SRE در آلمانیِ فنی انگلیسی می‌مانند. نقش‌هایِ پیرامون: der Betrieb (عملیات)، der On-Call-Dienst (شیفتِ آماده‌باش)، die Störung (اختلال). جملهٔ واقعیِ شیفت: „Ich bin diese Woche On-Call — erreichbar unter …“ (این هفته اون‌کال هستم — زیرِ شمارهٔ … در دسترسم.)
اعلامِ خرابیِ بزرگ به کاربران (Status-Page)؟
قالبِ سه‌جمله‌ایِ محترمانه: „Wir wissen von dem Problem und arbeiten an einer Lösung. Voraussichtlich bis 20 Uhr. Updates folgen hier.“ (از مشکل باخبریم و روی راه‌حل کار می‌کنیم. تخمیناً تا ۲۰. به‌روزرسانی‌ها همین‌جا می‌آیند.) — شفافیت + زمان + کانالِ خبر — این سه‌جمله‌ای، کلِ مدیریتِ بحرانِ ارتباطیِ آلمانی است!

آلمانی را همین امروز در گوشی‌ات تمرین کن

واژه‌های این درس را هر جا که دیدی با منوی «ذخیره در آپ‌ورد» به فلش‌کارت‌هایت اضافه کن؛ الگوریتم مرور فاصله‌دار سرِ موعد یادآوری‌شان می‌کند، تلفظ‌شان را با صدای آلمانی می‌شنوی و در مکالمهٔ هوش مصنوعی همان‌جا که لازم است استفاده‌شان می‌کنی.