<?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-05-03T09:52:24.773Z</lastmod>
<changefreq>weekly</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/courses</loc>
<lastmod>2026-05-03T09:52:24.773Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/offers</loc>
<lastmod>2026-05-03T09:52:24.773Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog</loc>
<lastmod>2026-05-03T09:52:24.773Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/about</loc>
<lastmod>2026-05-03T09:52:24.773Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/faq</loc>
<lastmod>2026-05-03T09:52:24.773Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/contact</loc>
<lastmod>2026-05-03T09:52:24.773Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/privacy</loc>
<lastmod>2026-05-03T09:52:24.773Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/terms</loc>
<lastmod>2026-05-03T09:52:24.773Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/refund-policy</loc>
<lastmod>2026-05-03T09:52:24.773Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/category/devops-%D8%A8%D8%A7%D9%84%D8%B9%D8%B1%D8%A8%D9%8A</loc>
<lastmod>2026-04-24T03:19:21.134Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/category/how-to-make-it</loc>
<lastmod>2026-04-25T08:34:07.716Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/category/optimizing-%D8%A8%D8%A7%D9%84%D8%B9%D8%B1%D8%A8%D9%8A</loc>
<lastmod>2026-04-24T16:23:01.072Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/category/%D8%A3%D8%AD%D8%AF%D8%AB-%D8%A3%D8%AE%D8%A8%D8%A7%D8%B1-%D8%A7%D9%84%D8%AA%D9%83%D9%86%D9%88%D9%84%D9%88%D8%AC%D9%8A%D8%A7</loc>
<lastmod>2026-04-18T12:30:40.092Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/category/%D8%A7%D9%84%D8%A3%D9%88%D8%AA%D9%88%D9%85%D9%8A%D8%B4%D9%86</loc>
<lastmod>2026-04-20T00:15:59.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/category/%D8%A7%D9%84%D8%A8%D8%B1%D9%85%D8%AC%D8%A9-%D8%A8%D8%A7%D9%84%D8%B9%D8%B1%D8%A8%D9%8A</loc>
<lastmod>2026-04-19T00:10:22.713Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/category/%D8%A7%D9%84%D8%B0%D9%83%D8%A7%D8%A1-%D8%A7%D9%84%D8%A7%D8%B5%D8%B7%D9%86%D8%A7%D8%B9%D9%8A</loc>
<lastmod>2026-04-21T03:09:22.099Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/embeddings-للمبتدئ-ازاي-الكمبيوتر-بيفهم-إن-دكتور-قريبة-من-مستشفى-3</loc>
<lastmod>2026-05-03T05:22:23.042Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/parallel-tool-use-في-claude-api-للمحترف-نفذ-5-أدوات-في-12-ثانية-بدل-6-3</loc>
<lastmod>2026-05-03T00:38:15.660Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/sealed-secrets-في-kubernetes-للمبتدئ-ازاي-تحط-الباسوردات-في-git-بأمان-2</loc>
<lastmod>2026-05-02T20:25:07.392Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/stale-while-revalidate-قدم-استجابة-في-12ms-وحدث-الكاش-في-الخلفية-2</loc>
<lastmod>2026-05-02T15:24:58.129Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/python-slots-ازاي-توفر-60-من-ذاكرة-الـ-instances-بسطر-واحد-2</loc>
<lastmod>2026-05-02T10:18:30.708Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/temperature-في-ai-ليه-claude-بيغير-إجابته-كل-مرة-على-نفس-السؤال-3</loc>
<lastmod>2026-05-02T09:18:54.846Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/distroless-images-للمبتدئ-نزل-ثغرات-صورة-docker-من-312-لـ-12-في-5-سطور-3</loc>
<lastmod>2026-05-02T00:42:07.034Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/idempotency-keys-في-apis-ليه-الدفع-بيتم-مرتين-لما-الإنترنت-يقطع-3</loc>
<lastmod>2026-05-01T20:14:51.852Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/closures-في-javascript-للمبتدئ-ليه-الدالة-الجوانية-بتفتكر-متغيرات-خرجت-من-النطاق-3</loc>
<lastmod>2026-05-01T15:35:35.184Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/streaming-في-claude-api-خلي-الرد-يظهر-فورا-بدل-ما-المستخدم-يستنى-12-ثانية-3</loc>
<lastmod>2026-05-01T10:20:58.482Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/prompt-injection-ازاي-تحمي-تطبيق-claude-من-هجمات-بتختطف-التعليمات-2</loc>
<lastmod>2026-05-01T05:47:26.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/http-cache-control-بالعربي-خلي-المتصفح-يحفظ-ملفاتك-ووفر-87-من-الطلبات-2</loc>
<lastmod>2026-04-30T15:35:12.198Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/model-context-protocol-mcp-اربط-claude-بأدواتك-في-30-سطر-بايثون-2</loc>
<lastmod>2026-04-30T12:15:09.391Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/event-loop-في-javascript-ليه-promise-بيتنفذ-قبل-settimeout0-3</loc>
<lastmod>2026-04-30T11:32:20.261Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/heap-بالعربي-للمستوى-المتوسط-لاقي-أعلى-100-سعر-من-مليون-منتج-في-18ms-2</loc>
<lastmod>2026-04-30T10:26:46.014Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/promiseallsettled-في-javascript-ليه-طلب-واحد-بيفشل-بيقع-dashboard-كامل-3</loc>
<lastmod>2026-04-30T09:13:35.167Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/prompt-caching-في-claude-قلل-تكلفة-الـ-system-prompt-90-بكود-شغال-2</loc>
<lastmod>2026-04-30T08:10:15.925Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/generators-في-python-ازاي-تقرأ-ملف-10gb-بـ-12mb-ذاكرة-بدل-10gb-3</loc>
<lastmod>2026-04-30T07:19:06.612Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/recursion-للمبتدئ-ليه-الدالة-بتنده-نفسها-مش-حلقة-لا-نهائية-2</loc>
<lastmod>2026-04-30T05:21:56.031Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://lms.ahmedhaies.com/blog/context-window-في-الذكاء-الاصطناعي-ليه-ai-بينسى-أول-الكلام-2</loc>
<lastmod>2026-04-30T03:09:03.303Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.75</priority>
</url>
</urlset>
