أحمد حايس
الرئيسيةمن أناالدوراتالمدونةالمناهج والباقات
أحمد حايس

دورات عربية متخصصة في التقنية والبرمجة والذكاء الاصطناعي.

المنصة مبنية على الوضوح، التطبيق، والنتيجة النافعة: شرح مرتب يساعدك تفهم الأدوات، تكتب كودًا أفضل، وتستخدم الذكاء الاصطناعي بوعي داخل العمل الحقيقي.

تعلم أسرعوصول مباشر للدورات والمسارات من الموبايل.
تنقل أوضحالروابط الأساسية والدعم في مكان واحد بدون تشتيت.

المنصة

  • الرئيسية
  • من أنا
  • الدورات
  • المناهج والباقات
  • المدونة

الدعم

  • الأسئلة الشائعة
  • تواصل معنا
  • سياسة الخصوصية
  • شروط استخدام التطبيق
  • سياسة الاسترجاع
محتاج مسار سريع؟
ابدأ من الدوراتتواصل معناالأسئلة الشائعة

© 2026 أحمد حايس. جميع الحقوق محفوظة.

الرئيسيةالدوراتالمناهجالمدونةالدخول

المدونة

مقالات عملية مرتبة حسب المجال والمستوى، اختر المجال المناسب واقرأ من مستوى مبتدئ إلى محترف.

المجال
كل المجالات
تكنولوجياDevOps بالعربيHow To Make ItOptimizing بالعربيأحدث أخبار التكنولوجياالأوتوميشنالبرمجة بالعربيالذكاء الاصطناعي
المستوى
كل المستوياتمبتدئمتوسطمحترف
Dataclasses في Python للمبتدئ: استبدل 30 سطر boilerplate بـ 3 سطور
مبتدئ١٠ مايو ٢٠٢٦

Dataclasses في Python للمبتدئ: استبدل 30 سطر boilerplate بـ 3 سطور

لو بتكتب class في Python عشان تخزن بيانات بس، إنت بتعيد كتابة __init__ و __repr__ و __eq__ يدويًا. Dataclasses بـ decorator واحد بتولّد كل ده تلقائيًا، فبتنزّل 20 سطر لـ 4 سطور بدون أي خسارة في الوظيفة. مقال للمبتدئ بمثال نموذج طلب الفيزا، تعريف علمي من PEP 557، كود شغّال على Python 3.12، أرقام مقاسة من codebase 18 ألف سطر (توفير 79.5%)، 4 trade-offs حقيقية، ومتى لا تستخدم dataclass أصلاً.

6 دقائق قراءة
Big O Notation للمبتدئ: ليه دالة بتشتغل في 8ms على ألف صف وفي 78 ثانية على 100 ألف
مبتدئ٨ مايو ٢٠٢٦

Big O Notation للمبتدئ: ليه دالة بتشتغل في 8ms على ألف صف وفي 78 ثانية على 100 ألف

لو الكود بتاعك بيشتغل تمام على بيانات الـ test وبيتعلّق في الإنتاج لمّا الـ DB تكبر، المشكلة مش في السيرفر. اسمها Time Complexity، و Big O Notation هو اللي بيقيسها. مقال للمبتدئ بمثال القاموس وتعريف علمي من Knuth 1976 وكود JavaScript على Node 22 بأرقام مقاسة (الفرق 2,786 ضعف بين O(n²) و O(n))، 3 trade-offs حقيقية، ومتى ما تركّزش على Big O أصلاً.

6 دقائق قراءة
Generators في Python للمبتدئ: اقرا ملف 10GB من غير ما الـ RAM تنفجر
مبتدئ٨ مايو ٢٠٢٦

Generators في Python للمبتدئ: اقرا ملف 10GB من غير ما الـ RAM تنفجر

لو سكربت Python بتاعك بيموت بـ MemoryError لما يجي يقرا ملف لوج 10GB، المشكلة مش في اللاب بتاعك. السبب إنك بتحمّل الملف كله مرة واحدة في الذاكرة بدل ما تقراه سطر ورا سطر. Generators بـ كلمة واحدة (yield) بتنزّل استهلاك الذاكرة من 8.7GB لـ 14MB ثابت. مقال للمبتدئ بمثال عامل فرن العيش، تعريف علمي من PEP 255، كود Python شغّال على 3.12، أرقام مقاسة على ملف CSV 8.4GB، 4 trade-offs، ومتى تختار list عادي بدل Generator.

5 دقائق قراءة
Hoisting في JavaScript للمبتدئ: ليه var شغّال قبل تعريفه و let بيرمي خطأ
مبتدئ٨ مايو ٢٠٢٦

Hoisting في JavaScript للمبتدئ: ليه var شغّال قبل تعريفه و let بيرمي خطأ

لو console.log(x) قبل var x = 5 بيرجّع undefined بدون خطأ، ولو غيّرت var لـ let الكود بيقع بـ ReferenceError. الفرق ده اسمه Hoisting. مقال للمبتدئ بمثال حقيبة السفر، تعريف علمي من ECMA-262، كود JavaScript شغّال على Node 22 يوضّح الفرق بين var و let و const و Function Declaration vs Expression، أرقام من فريق حقيقي قلّل bugs الـ scope 41%، 4 trade-offs، ومتى لا تركّز على Hoisting أصلاً.

5 دقائق قراءة
Floating Point للمبتدئ: ليه 0.1 + 0.2 مش بيساوي 0.3 في كل لغات البرمجة
مبتدئ٨ مايو ٢٠٢٦

Floating Point للمبتدئ: ليه 0.1 + 0.2 مش بيساوي 0.3 في كل لغات البرمجة

لو كتبت 0.1 + 0.2 في JavaScript أو Python أو Java وطلعلك 0.30000000000000004، ده مش bug في اللغة. ده سلوك معتمد في معيار IEEE 754 من 1985 وموجود في كل المعالجات. مقال للمبتدئ بمثال قسمة الكيكة، شرح علمي للـ binary representation، ثلاث طرق عملية للتعامل (Decimal، tolerance، integer cents)، حالة إنتاج خسرت 120 جنيه شهرياً، 4 trade-offs حقيقية، ومتى تتجاهل الموضوع أصلاً.

5 دقائق قراءة
Recursion للمبتدئ: ازاي دالة تنادي نفسها بدون ما تعلق في لوب لا نهائي
مبتدئ٨ مايو ٢٠٢٦

Recursion للمبتدئ: ازاي دالة تنادي نفسها بدون ما تعلق في لوب لا نهائي

لو شفت كود فيه دالة جوّاها بتنادي نفس الدالة، أول إحساس بييجيلك إن ده هيدخل في لوب أبدي. لكن دي تقنية اسمها Recursion، وبتحلّ مشاكل زي ترافيرس الشجرة وقراءة فولدرات متداخلة والتعامل مع JSON معقّد في 8 سطور بدل 50. مقال للمبتدئ بمثال دمى ماتريوشكا، تعريف علمي للـ call stack من توثيق ECMAScript و Python، كود JavaScript و Python شغّال، أرقام مقاسة من V8 (حد الـ stack 10,416 frame)، 4 trade-offs حقيقية، ومتى تستخدم لوب عادي بدلاً منها.

6 دقائق قراءة
Closures في JavaScript للمبتدئ: ازاي دالة بتفتكر متغيرات بعد ما الـ scope خلص
مبتدئ٨ مايو ٢٠٢٦

Closures في JavaScript للمبتدئ: ازاي دالة بتفتكر متغيرات بعد ما الـ scope خلص

لو شفت كود فيه دالة بترجّع دالة تانية ولسه فاكرة متغيرات الأولى، اللي بتشوفه ده اسمه Closure. شرح للمبتدئ بمثال خزنة البنك، تعريف علمي من ECMAScript spec، كود JavaScript شغّال يبني عدّاد آمن بـ private state في 12 سطر، الفخ الكلاسيكي var داخل for loop، أرقام مقاسة من Chrome DevTools، 4 trade-offs حقيقية، ومتى لا تستخدم Closure أصلاً.

5 دقائق قراءة
Debounce و Throttle للمبتدئ: ليه search box بيرسل 87 طلب من كلمة واحدة
مبتدئ٨ مايو ٢٠٢٦

Debounce و Throttle للمبتدئ: ليه search box بيرسل 87 طلب من كلمة واحدة

لو search box بتاعك بيرسل طلب لكل حرف بيكتبه المستخدم، تطبيقك بيدفع 9x من الـ bandwidth والـ DB بتسخن من غير سبب. Debounce و Throttle بـ 6 سطور JavaScript بيخفّضوا الطلبات 92%. مقال للمبتدئ بمثال حارس البنك، تعريف علمي دقيق، كود قابل للنسخ، أرقام مقاسة من إنتاج (4.1M طلب يومي → 66K، توفير $298 شهرياً)، 4 trade-offs حقيقية، ومتى لا تستخدم أي منهم.

6 دقائق قراءة
Trie للمبتدئ: ابني autocomplete على 100 ألف كلمة في 50 سطر Python
مبتدئ٨ مايو ٢٠٢٦

Trie للمبتدئ: ابني autocomplete على 100 ألف كلمة في 50 سطر Python

لو search box عندك بياخد 80ms يكمل كلمة على قائمة كبيرة، المشكلة مش في السيرفر — الخوارزمية بتدور بكل كلمة. Trie بيبحث على مستوى الحروف، فالنتيجة بترجع في أقل من 1ms مهما كان حجم القاموس. مقال للمبتدئ بمثال دفتر التليفون، تعريف علمي للـ Prefix Tree، كود Python شغّال في 50 سطر، أرقام مقاسة على 100,000 كلمة عربية، 4 trade-offs، ومتى لا تستخدمه أصلاً.

5 دقائق قراءة

عرض 28 - 36 من 62 مقال

السابق
1
2
3
4
5
6
7
التالي