مقالات ودروس مجانية تساعدك في رحلتك التعليمية — من أساسيات البرمجة إلى أحدث التقنيات.
لو المستخدم بيكتب بسرعة في search box، ممكن طلب قديم يرجع بعد الطلب الجديد ويعرض بيانات غلط. AbortController بيوقف الطلبات القديمة بدل ما تسيبها تتسابق على الواجهة.
لو بتخزن metadata لكل request أو DOM node في Map عادية، ممكن تسيب آلاف الكائنات عايشة بعد ما شغلها خلص. WeakMap بتحل المشكلة لما المفتاح نفسه يختفي.
لو السيرفر وقع ثانيتين، كل الـ clients بتعمل retry في نفس اللحظة لما يرجع، فبتوقّعه تاني. Exponential Backoff + Jitter بيوزّع الطلبات على الزمن بدل ما تتكدّس. شرح بمثال بسيط، ثم الصيغة الرياضية من ورقة AWS، كود JavaScript شغّال، قياس فعلي على 10,000 client، وحالات ما تنفعش فيها.
لو عندك API بيخدم 10K مستخدم، ومستخدم واحد بيبعت 500 طلب في الثانية، ممكن يقفل السيرفر كله. Token Bucket بيوقّفه ويسيب الباقي شغّال بسلاسة. شرح بمثال تانك المياه، بعدها التعريف العلمي الدقيق، كود Node.js + Redis شغّال من 30 سطر، مقارنة مع Fixed Window، قياس فعلي، ومتى لا تستخدمه — بمصادر من Stripe وCloudflare وويكيبيديا.
لو المستخدم ضغط زر الدفع، النت قطع قبل ما يشوف الرد، ضغط تاني، النظام ممكن يسحب منه الفلوس مرتين. Idempotency Key بيحل المشكلة دي في 20 سطر. شرح بمثال ATM بسيط، ثم تعريف علمي دقيق، كود Node.js + Redis شغّال، قياس فعلي على 100K طلب/يوم، وحالات ما تنفعش فيها.
لو الـ search box بتاعك بيبعت طلب مع كل حرف، هتولّد 15–20 طلب زيادة في كل كلمة. المقال يشرح الفرق بمثال المصعد والمدخّن، كود JavaScript من الصفر، قياس فعلي، ومتى تستخدم كل واحد منهم.
لو بتحل مسألة على array بـ nested loop، Two Pointers في 30% من الحالات هيخلّيها O(N) بدل O(N²) في 6 سطور. مثال بسيط جدًا، كود Python وJavaScript شغّال، قياس فعلي 800 ضعف فرق، وحالات ما تنفعش فيها.
لو بتستخدم hash(key) % N لتوزيع المفاتيح، لما سيرفر يقع بتنقل 99% من البيانات. Consistent hashing بيحرّك 1/N بس. شرح بمثال رفوف المكتبة، ثم التفسير العلمي، كود Python شغّال من الصفر، قياس فعلي على 10,000 مفتاح، virtual nodes، ومتى ما تنفعش مع مصادر رسمية.
سطر regex واحد ممكن يستهلك 100% CPU على input طوله 30 حرف. ده اللي حصل لـ Cloudflare في 2 يوليو 2019 وفصل جزء كبير من الإنترنت 27 دقيقة. المقال يشرح Catastrophic Backtracking بمثال بسيط لأي مبتدئ، بعدها التفسير العلمي الدقيق، كود JavaScript و Python شغّال يقيس الفرق، قصة حادثة Cloudflare بالتفاصيل، و4 طرق علاج موثّقة من OWASP ومصادر رسمية.
مدونة أحمد حايس تجيب عن أسئلة مثل كيف أتعلم البرمجة أو التكنولوجيا أو الذكاء الاصطناعي، وتحوّل المفاهيم التقنية إلى مقالات عربية عملية واضحة.