<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://lms.ahmedhaies.com</loc>
<lastmod>2026-04-20T02:17:10.220Z</lastmod>
<changefreq>weekly</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/courses</loc>
<lastmod>2026-04-20T02:17:10.220Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/offers</loc>
<lastmod>2026-04-20T02:17:10.220Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog</loc>
<lastmod>2026-04-20T02:17:10.220Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/about</loc>
<lastmod>2026-04-20T02:17:10.220Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/faq</loc>
<lastmod>2026-04-20T02:17:10.220Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/contact</loc>
<lastmod>2026-04-20T02:17:10.220Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/privacy</loc>
<lastmod>2026-04-20T02:17:10.220Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/debounce-vs-throttle-بالعربي-وفر-95-من-طلبات-الـ-api-في-الـ-search-box</loc>
<lastmod>2026-04-19T23:54:58.482Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/two-pointers-بالعربي-نمط-واحد-بيحل-مسائل-الـ-arrays-في-نصف-الوقت</loc>
<lastmod>2026-04-19T22:56:07.196Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/consistent-hashing-بالعربي-وزع-مفاتيحك-على-100-سيرفر-بدون-reshuffle</loc>
<lastmod>2026-04-19T22:55:55.987Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/redos-بالعربي-الـ-regex-اللي-وقف-cloudflare-27-دقيقة</loc>
<lastmod>2026-04-19T22:55:34.337Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/debounce-و-throttle-بالعربي-إمتى-تستخدم-كل-واحد-في-javascript</loc>
<lastmod>2026-04-19T22:54:07.279Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/floating-point-بالعربي-ليه-01-02-03-وإزاي-بتخسر-فلوس</loc>
<lastmod>2026-04-19T21:24:43.178Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/cursor-pagination-بالعربي-ليه-offset-بيبطأ-مع-كل-صفحة-جديدة</loc>
<lastmod>2026-04-19T20:52:46.965Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/lru-cache-بالعربي-نفذها-من-الصفر-في-40-سطر-بـ-o1</loc>
<lastmod>2026-04-19T18:08:51.624Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/hash-collisions-ليه-الـ-hashmap-بيتحول-من-o1-لـ-on-فجأة</loc>
<lastmod>2026-04-19T18:04:24.136Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/python-context-managers-بالعربي-خلي-with-تقفل-الملفات-والاتصالات-بدالك</loc>
<lastmod>2026-04-19T17:25:33.553Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/nodejs-streams-اقرا-ملف-10gb-وذاكرتك-512mb-بس</loc>
<lastmod>2026-04-19T17:08:07.126Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/trie-بالعربي-autocomplete-على-مليون-كلمة-بـ-ol-بدل-on</loc>
<lastmod>2026-04-19T17:07:00.856Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/go-channels-بالعربي-تواصل-بين-goroutines-من-غير-mutex-ولا-race-conditions</loc>
<lastmod>2026-04-19T17:00:46.355Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/bloom-filters-بالعربي-اعرف-لو-العنصر-موجود-في-مليون-سجل-بـ-1mb-بس</loc>
<lastmod>2026-04-19T16:42:52.953Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/typescript-discriminated-unions-امنع-bugs-الـ-runtime-بخانة-tag</loc>
<lastmod>2026-04-19T17:06:01.720Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/python-matchcase-امتى-يستحق-إنه-يستبدل-ifelif-في-كودك</loc>
<lastmod>2026-04-19T16:44:18.878Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/event-loop-في-javascript-ليه-settimeoutfn-0-بيشتغل-بعد-promise</loc>
<lastmod>2026-04-19T11:20:33.484Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/web-workers-في-javascript-شغل-حسابات-ثقيلة-بدون-ما-تجمد-الـ-ui</loc>
<lastmod>2026-04-19T16:44:18.878Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/javascript-proxy-اعمل-reactive-state-بـ-20-سطر-بدل-vue</loc>
<lastmod>2026-04-19T16:42:52.953Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/abortcontroller-إلغاء-طلبات-fetch-قبل-ما-تأكل-ذاكرة-المتصفح</loc>
<lastmod>2026-04-19T10:30:13.480Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
</urlset>
