أحمد حايس
الرئيسيةمن أناالدوراتالمدونةالعروض
أحمد حايس

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

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

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

المنصة

  • الرئيسية
  • من أنا
  • الدورات
  • العروض
  • المدونة

الدعم

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

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

الرئيسيةالدوراتالعروضالمدونةالدخول

المدونة

مقالات ودروس مجانية تساعدك في رحلتك التعليمية — من أساسيات البرمجة إلى أحدث التقنيات.

الكلDevOps بالعربيHow To Make ItOptimizing بالعربيأحدث أخبار التكنولوجياالأوتوميشنالبرمجة بالعربيالذكاء الاصطناعي
Trie بالعربي: autocomplete على مليون كلمة بـ O(L) بدل O(N)
١٩ أبريل ٢٠٢٦

Trie بالعربي: autocomplete على مليون كلمة بـ O(L) بدل O(N)

لو عندك search box بيقترح كلمات من قاموس مليون كلمة، Array.filter بياخد 180ms في كل ضغطة. Trie بيعمل نفس النتيجة في 0.4ms، لكن بياكل ذاكرة 4× أكتر. كود JavaScript شغّال، قياس حقيقي، وحالات ما ينفعش فيها.

⏱ 4 دقائق قراءة
Go Channels بالعربي: تواصل بين Goroutines من غير Mutex ولا Race Conditions
١٩ أبريل ٢٠٢٦

Go Channels بالعربي: تواصل بين Goroutines من غير Mutex ولا Race Conditions

في Go، لما تحتاج أكتر من goroutine تشتغل على نفس البيانات، الـ mutex مش دايمًا الحل. Channels بتخلّيك تنقل الملكية بدل ما تقفل — بأرقام، وكود worker pool شغّال، وحالات الـ mutex فيها أسرع بـ 4 أضعاف.

⏱ 5 دقائق قراءة
Bloom Filters بالعربي: اعرف لو العنصر موجود في مليون سجل بـ 1MB بس
١٩ أبريل ٢٠٢٦

Bloom Filters بالعربي: اعرف لو العنصر موجود في مليون سجل بـ 1MB بس

لو عندك مليون email مسجل ومحتاج تشيك كل طلب جديد هل موجود قبل كده، hash table هتاكل 75MB ذاكرة. Bloom Filter بيعملها بـ 1MB، ومع ذلك في trade-off محدد لازم تعرفه قبل ما تستخدمه في production.

⏱ 5 دقائق قراءة
TypeScript Discriminated Unions: امنع bugs الـ runtime بخانة tag
١٩ أبريل ٢٠٢٦

TypeScript Discriminated Unions: امنع bugs الـ runtime بخانة tag

لو عندك response بيرجّع success أو error والـ TypeScript مش بيميز بينهم، المشكلة في شكل الـ type مش في الـ compiler. Discriminated unions بتحلها بخانة tag بنوع literal. كود شغّال، مقارنة مع optional properties، exhaustiveness check، وحالات ما تنفعش فيها.

⏱ 4 دقائق قراءة
Python match/case: امتى يستحق إنه يستبدل if/elif في كودك
١٩ أبريل ٢٠٢٦

Python match/case: امتى يستحق إنه يستبدل if/elif في كودك

Python 3.10 جاب match/case من 4 سنين، ولسه أغلب الكود العربي بيكتب if/elif في حالات match فيها بيوفّر 30 سطر فعلًا. المقال يديك بالظبط امتى تستخدمه وامتى لأ، بكود webhook حقيقي وtrade-offs لازم تعرفها.

⏱ 5 دقائق قراءة
Event Loop في JavaScript: ليه setTimeout(fn, 0) بيشتغل بعد Promise
١٩ أبريل ٢٠٢٦

Event Loop في JavaScript: ليه setTimeout(fn, 0) بيشتغل بعد Promise

لو كتبت setTimeout بصفر ميلي ثانية مع Promise.resolve، الـ Promise هو اللي بيشتغل الأول. المقال يفك ترتيب التنفيذ بين Macrotasks وMicrotasks بأمثلة شغالة، رقم قياس فعلي، وإمتى الفهم ده بيمنع bug في production.

⏱ 5 دقائق قراءة
Web Workers في JavaScript: شغّل حسابات ثقيلة بدون ما تجمّد الـ UI
١٩ أبريل ٢٠٢٦

Web Workers في JavaScript: شغّل حسابات ثقيلة بدون ما تجمّد الـ UI

لو الـ UI بيجمّد لما المستخدم يضغط زرار حساب، المشكلة مش في الكود — المشكلة إن JavaScript بتشتغل على thread واحد. Web Workers بتنقل الشغل لـ thread موازي، وبترجّع النتيجة بـ message. كود شغّال، قياسات حقيقية، وحالات ما تنفعش فيها.

⏱ 4 دقائق قراءة
JavaScript Proxy: اعمل Reactive State بـ 20 سطر بدل Vue
١٩ أبريل ٢٠٢٦

JavaScript Proxy: اعمل Reactive State بـ 20 سطر بدل Vue

لو عايز state object بيعيد render لوحده لما يتغير من غير ما تجيب Zustand أو Vue كاملة، الـ Proxy في JavaScript بيعمل ده في 20 سطر بس. هنفك إزاي بيشتغل، قياسات performance حقيقية، وإمتى المكتبات الكبيرة هتبقى أفضل.

⏱ 4 دقائق قراءة
AbortController: إلغاء طلبات fetch قبل ما تأكل ذاكرة المتصفح
١٩ أبريل ٢٠٢٦

AbortController: إلغاء طلبات fetch قبل ما تأكل ذاكرة المتصفح

لما المستخدم يغيّر الصفحة وسط fetch شغّال، الطلب بيفضل يستهلك ذاكرة ويحاول setState على مكون اتشال. AbortController بيوقفه فورًا. كود React جاهز، أرقام قياس حقيقية، وtrade-offs لازم تعرفها قبل ما تستخدمه في POST.

⏱ 4 دقائق قراءة

عرض 181 - 189 من 197 مقال

السابق
1
…20
21
22
التالي

مدونة أحمد حايس

💡

ملخص سريع

مدونة أحمد حايس تجيب عن أسئلة مثل كيف أتعلم البرمجة أو التكنولوجيا أو الذكاء الاصطناعي، وتحوّل المفاهيم التقنية إلى مقالات عربية عملية واضحة.

الأسئلة الشائعة