مقالات عملية مرتبة حسب المجال والمستوى، اختر المجال المناسب واقرأ من مستوى مبتدئ إلى محترف.
لو RAG pipeline بتاعك بيرجّع الإجابة الصح في المركز السابع بدل الأول، المشكلة مش embeddings — المشكلة إنك واقف عند خطوة retrieval. شرح للمستوى المتوسط بمثال المكتبة، تعريف علمي للفرق بين bi-encoder وcross-encoder، كود Python شغّال على pgvector + BGE-reranker، أرقام مقاسة من BEIR-FiQA، trade-offs، ومتى لا تستخدم Reranker.
لو endpoint الـ webhook بتاعك مفتوح من غير verification، أي حد عارف الرابط يقدر يزوّر طلبات ويغيّر حالة الـ DB. مقال للمستوى المتوسط بمثال ختم المخبز للمبتدئ، تعريف علمي دقيق لـ HMAC-SHA256 من RFC 2104، كود Node.js شغّال في 30 سطر مع timingSafeEqual ومنع replay، أرقام قياس فعلية، trade-offs، وحالات لا تستخدمه فيها.
لو محتاج تبعت إشعارات حية للمستخدم في تطبيق Next.js — رد جديد، رسالة، تحديث طلب — مش لازم تركّب WebSocket server. Server-Sent Events بيعمل نفس الشغل بـ Route Handler عادي، بيشتغل خلف أي proxy، وبتقدر تنشره على Vercel أو Cloudflare بدون إعداد إضافي. شرح للمستوى المتوسط بمثال جرس البيت، تعريف علمي دقيق، كود Next.js 15 شغّال، أرقام مقاسة، trade-offs واضحة، وحالات لا تستخدم فيها SSE.
لو بتدفع 30 دولار شهري لـ Statuspage.io أو Better Uptime علشان تعرض حالة خدماتك للعميل، Gatus self-hosted بيرد نفس الفايدة في 15 دقيقة بـ Docker Compose. خطوات قابلة للنسخ، فحوصات HTTP وICMP، تنبيهات Slack، أرقام استهلاك مقاسة، trade-offs، وحالات لا تستخدمه فيها.
لو الـ search box عندك بيرسل طلب لكل حرف والنتايج بترجع متلخبطة لأن الطلب رقم 3 وصل بعد رقم 7، المشكلة مش fetch ولا debounce. الحل اسمه AbortController. مقال للمستوى المتوسط بمثال الطباخ، تعريف علمي دقيق لـ Signal Pattern، كود JavaScript قابل للنسخ، أرقام مقاسة، trade-offs، ومتى لا تستخدمه.
لو endpoint الشراء بتاعك خصم آخر قطعة لاتنين عملاء في نفس الثانية، الكود مش غلط. خيطين تنفيذ قروا الرقم في نفس النانوثانية. شرح Race Conditions للمستوى المتوسط بمثال آخر تذكرة في الحفلة، تعريف علمي لـ Critical Section و Mutual Exclusion، كود Python threading قابل للنسخ يعيد إنتاج المشكلة، 4 حلول عملية مع أرقام مقاسة (Mutex، Atomic، Optimistic، SELECT FOR UPDATE)، trade-offs، وقاعدة قرار سريعة.
لو الـ pod بتاعك في Kubernetes بيتعمله restart بشكل عشوائي والـ logs بترجع Liveness probe failed 503، المشكلة مش في التطبيق. المشكلة إنك خلطت بين Liveness و Readiness و Startup probes. مقال للمستوى المتوسط بمثال البواب والمطعم، تعريف علمي دقيق، YAML قابل للنسخ، أرقام قياس فعلية من cluster إنتاج، trade-offs واضحة، وحالات لا تستخدم فيها Liveness أصلاً.
لو الـ API بيرجّع 502 كل يوم 9 صباحاً، المشكلة مش في الـ backend غالباً. NGINX limit_req بيحمي تطبيقك بـ 10 سطور config، مع شرح Leaky Bucket، أرقام قبل/بعد، trade-offs، ومتى لا تستخدمه.
لو الـ PostgreSQL بتاعك بيرجّع too many clients كل ساعة الذروة، المشكلة مش في عدد المستخدمين. تطبيقك بيفتح اتصال لكل request، والـ DB بتقفل عند الـ 100. شرح مفصّل لـ PgBouncer transaction pooling بمستوى متوسط، مع ini config قابل للنسخ، أرقام قياس فعلية، trade-offs، وحالات لا تستخدمه فيها.