مقالات ودروس مجانية تساعدك في رحلتك التعليمية — من أساسيات البرمجة إلى أحدث التقنيات.
لو المستخدم ضغط زر الدفع، النت قطع قبل ما يشوف الرد، ضغط تاني، النظام ممكن يسحب منه الفلوس مرتين. 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 ومصادر رسمية.
لو بتعمل search box بيبعت request مع كل حرف، أو scroll handler بيتنادى 60 مرة في الثانية، بتحرق CPU المستخدم من غير فايدة. Debounce و Throttle هما الحل، لكن كل واحد ليه دوره. شرح بمثال بسيط جدًا لمبتدئين، بعدين التعريف العلمي، كود شغّال، قياسات حقيقية، وحالات ما تنفعش فيها.
لو جربت 0.1 + 0.2 في JavaScript أو Python الناتج بيطلع 0.30000000000000004 مش 0.3. ده مش bug في اللغة، ده سلوك معياري في IEEE 754 موجود في كل لغة تقريبًا. المقال يشرح القصة من الصفر بمثال بسيط، ثم التفسير العلمي الدقيق، مع سيناريو خسارة فلوس حقيقية، كود JS/Python شغّال، 4 طرق علاج موثّقة، وحالات ما تنفعش فيها.
لو عندك جدول 10 مليون صف، الـ LIMIT 20 OFFSET 10000 بتاعتك مش بتتخطى 10,000 سجل — هي فعليًا بتقرأهم كلهم قبل ما ترميهم. Cursor Pagination بيثبت الزمن على 2ms بدل ما يوصل 1800ms في الصفحات البعيدة. كود PostgreSQL + Node.js شغّال، قياس فعلي، ومتى لا تستخدمها.
كل cache لازمله سياسة إزالة. LRU هي الأشهر. المقال يشرح الفكرة بمثال رف الألعاب، ثم ينفّذها من الصفر بـ HashMap + Doubly Linked List في 40 سطر Python، مع قياس فعلي وحالات ما تنفعش فيها ومصادر رسمية.
هذا القسم يوضح لغة الصفحة المقصودة للباحثين ولمساعدات الذكاء الاصطناعي بصياغة مباشرة وواضحة.
مدونة أحمد حايس تجيب عن أسئلة مثل كيف أتعلم البرمجة أو التكنولوجيا أو الذكاء الاصطناعي، وتحوّل المفاهيم التقنية إلى مقالات عربية عملية واضحة.