برنامج ممتاز بستخدمه بشكل يومي 💯
لو بتواجه مشكلة في الأداء بسبب الرامات المخزنة مؤقتًا "Cached" على جهازك، فيه حل عبقري من Microsoft. البرنامج اسمه RAMMap وبيساعدك في حذف الرامات المؤقتة بكل سهولة.
تقدر تحمّل البرنامج من هنا 🔻
https://learn.microsoft.com/en-us/sysinternals/downloads/rammap
طريقة الاستخدام بسيطة جدًا:
1- افتح البرنامج واضغط على زر Empty.
2- هتظهر لك قائمة، اختار منها Empty Standby List.
———
وفقكم الله لكل خير 🌿
❤4
مفهوم الـ Edge Computing 🔻
.
.
لو سألتك: كل مرة بتفتح فيها أي تطبيق أو تعمل سيرش على جوجل، إيه اللي بيحصل عشان يوصلك النتيجة بسرعة؟ الإجابة ببساطة: البيانات بتتنقل من سيرفرات بعيدة (Cloud) لجهازك، وده بياخد وقت وممكن يحصل فيه مشاكل لو الشبكة ضعيفة.
هنا بقى بييجي دور الـ Edge Computing 🔄
———
🧠 يعني إيه Edge Computing؟
ببساطة هو معالجة البيانات قرب مكان استخدامها بدل ما تتنقل لسيرفرات بعيدة. بمعنى تاني: بدل ما البيانات تروح لمركز بيانات (Data Center) في أمريكا مثلًا، تتم المعالجة على جهاز أو سيرفر قريب منك (زي الراوتر أو موبايلك نفسه).
———
💡 طب ليه نستخدم الـ Edge Computing؟
1- سرعة أعلى (Latency أقل):
تخيل إنك بتلعب لعبة أونلاين والقرار بيستنى يوصل لسيرفر في بلد تانية وبعدين يرجع لجهازك. الـ Edge Computing بيقلل الزمن ده عشان كل العمليات بتحصل قريب منك.
2- توفير الـ Bandwidth:
بدل ما تستهلك إنترنت في نقل بيانات كتير للسيرفرات، البيانات بتتعامل محليًا (Locally).
3- أمان أكتر:
لأن البيانات مش بتخرج من حدود المكان اللي أنت فيه، ففرصة اختراقها بتقل.
4- حل لمشاكل الشبكات الضعيفة:
في الأماكن اللي الشبكة فيها ضعيفة أو مش مستقرة، الـ Edge Computing بيكون حل مثالي عشان يقلل الاعتماد على الإنترنت السريع.
———
🔍 أمثلة واقعية:
- سيارات تسلا: العربية الذكية بتحتاج تتصرف في أقل من ثانية لو فيه أي خطر في الطريق، فمش هتعتمد على Cloud، كل الحسابات بتحصل على جهاز داخل العربية نفسها.
- المستشفيات الذكية: أجهزة متابعة المرضى بتحتاج تعمل تحليل سريع لأي تغيرات، فبدل ما تبعت البيانات لسيرفر بعيد، بتتعامل على طول.
- الكاميرات الذكية: زي كاميرات المراقبة اللي بتتعرف على الوجوه أو الحركات الغريبة مباشرة.
———
🌐 إيه الفرق بين Edge Computing والـ Cloud؟
- الـ Cloud: بيعمل معالجة البيانات على سيرفرات بعيدة ومناسبة لتخزين كميات ضخمة من البيانات.
- الـ Edge: بيعتمد على المعالجة السريعة والمباشرة جنب الأجهزة، مش مناسب لكل التطبيقات لكن ضروري للحاجات اللي بتحتاج رد فعل فوري.
———
وفقكم الله لكل خير 🌿
.
.
لو سألتك: كل مرة بتفتح فيها أي تطبيق أو تعمل سيرش على جوجل، إيه اللي بيحصل عشان يوصلك النتيجة بسرعة؟ الإجابة ببساطة: البيانات بتتنقل من سيرفرات بعيدة (Cloud) لجهازك، وده بياخد وقت وممكن يحصل فيه مشاكل لو الشبكة ضعيفة.
هنا بقى بييجي دور الـ Edge Computing 🔄
———
🧠 يعني إيه Edge Computing؟
ببساطة هو معالجة البيانات قرب مكان استخدامها بدل ما تتنقل لسيرفرات بعيدة. بمعنى تاني: بدل ما البيانات تروح لمركز بيانات (Data Center) في أمريكا مثلًا، تتم المعالجة على جهاز أو سيرفر قريب منك (زي الراوتر أو موبايلك نفسه).
———
💡 طب ليه نستخدم الـ Edge Computing؟
1- سرعة أعلى (Latency أقل):
تخيل إنك بتلعب لعبة أونلاين والقرار بيستنى يوصل لسيرفر في بلد تانية وبعدين يرجع لجهازك. الـ Edge Computing بيقلل الزمن ده عشان كل العمليات بتحصل قريب منك.
2- توفير الـ Bandwidth:
بدل ما تستهلك إنترنت في نقل بيانات كتير للسيرفرات، البيانات بتتعامل محليًا (Locally).
3- أمان أكتر:
لأن البيانات مش بتخرج من حدود المكان اللي أنت فيه، ففرصة اختراقها بتقل.
4- حل لمشاكل الشبكات الضعيفة:
في الأماكن اللي الشبكة فيها ضعيفة أو مش مستقرة، الـ Edge Computing بيكون حل مثالي عشان يقلل الاعتماد على الإنترنت السريع.
———
🔍 أمثلة واقعية:
- سيارات تسلا: العربية الذكية بتحتاج تتصرف في أقل من ثانية لو فيه أي خطر في الطريق، فمش هتعتمد على Cloud، كل الحسابات بتحصل على جهاز داخل العربية نفسها.
- المستشفيات الذكية: أجهزة متابعة المرضى بتحتاج تعمل تحليل سريع لأي تغيرات، فبدل ما تبعت البيانات لسيرفر بعيد، بتتعامل على طول.
- الكاميرات الذكية: زي كاميرات المراقبة اللي بتتعرف على الوجوه أو الحركات الغريبة مباشرة.
———
🌐 إيه الفرق بين Edge Computing والـ Cloud؟
- الـ Cloud: بيعمل معالجة البيانات على سيرفرات بعيدة ومناسبة لتخزين كميات ضخمة من البيانات.
- الـ Edge: بيعتمد على المعالجة السريعة والمباشرة جنب الأجهزة، مش مناسب لكل التطبيقات لكن ضروري للحاجات اللي بتحتاج رد فعل فوري.
———
وفقكم الله لكل خير 🌿
❤8
دليل بسيط وسهل لفهم الـ Sitemaps 🔻
يعني إيه Sitemap؟ وليه وجودها مهم لموقعك؟ وإزاي تعملها بالطريقة الصح؟
———
📍 Dev Community:
https://dev.to/alisamir/understanding-sitemaps-the-simple-guide-4gmo
📍 Medium:
https://medium.com/@dev.alisamir/understanding-sitemaps-the-simple-guide-143457c8decb
يعني إيه Sitemap؟ وليه وجودها مهم لموقعك؟ وإزاي تعملها بالطريقة الصح؟
———
Understanding Sitemaps: The Simple Guide 💯
📍 Dev Community:
https://dev.to/alisamir/understanding-sitemaps-the-simple-guide-4gmo
📍 Medium:
https://medium.com/@dev.alisamir/understanding-sitemaps-the-simple-guide-143457c8decb
❤5
11 GitHub Repositories to learn Node.js 🚀
- Node.js Best Practices
https://github.com/goldbergyoni/nodebestpractices
- Learn Node.js by Building 10 Projects
https://github.com/MAshrafM/NodeJS_Projects
- Node.js Design Patterns
https://github.com/PacktPublishing/Node.js-Design-Patterns-Third-Edition
- The Node.js Master Class
https://github.com/pirple/The-Nodejs-Master-Class
- TypeScript Node Starter
https://github.com/microsoft/TypeScript-Node-Starter
- Express.js Boilerplate
https://github.com/hagopj13/node-express-boilerplate
- Node.js API Starter Kit
https://github.com/kriasoft/graphql-starter-kit
- Learn You The Node.js for Much Win
https://github.com/workshopper/learnyounode
- Real World Example App (Node.js + Express)
https://github.com/gothinkster/node-express-realworld-example-app
- Node.js Starter Kit
https://github.com/verekia/js-stack-from-scratch
- Node.js Sample Application
https://github.com/heroku/node-js-sample
- Node.js Best Practices
https://github.com/goldbergyoni/nodebestpractices
- Learn Node.js by Building 10 Projects
https://github.com/MAshrafM/NodeJS_Projects
- Node.js Design Patterns
https://github.com/PacktPublishing/Node.js-Design-Patterns-Third-Edition
- The Node.js Master Class
https://github.com/pirple/The-Nodejs-Master-Class
- TypeScript Node Starter
https://github.com/microsoft/TypeScript-Node-Starter
- Express.js Boilerplate
https://github.com/hagopj13/node-express-boilerplate
- Node.js API Starter Kit
https://github.com/kriasoft/graphql-starter-kit
- Learn You The Node.js for Much Win
https://github.com/workshopper/learnyounode
- Real World Example App (Node.js + Express)
https://github.com/gothinkster/node-express-realworld-example-app
- Node.js Starter Kit
https://github.com/verekia/js-stack-from-scratch
- Node.js Sample Application
https://github.com/heroku/node-js-sample
🔥4
إزاي الـ Code Splitting ممكن ينقذ مشروعك؟ 🤔
.
.
تخيل لو بتدخل على موقع ويب، وتلاقيه بياخد وقت طويل جدًا علشان يفتح، وكل اللي كنت محتاجه صفحة واحدة! الموقف ده بيخلّي المستخدمين يقفلوا الموقع من قبل ما يشوفوه.
وهنا بييجي دور Code Splitting...
———
📍 LinkedIn
https://www.linkedin.com/posts/dev-alisamir_softwaredevelopment-softwaredeveloper-performance-activity-7286297075607113729-5Ioy
📍 Qabilah
https://qabilah.com/posts/IFUQPPSlhag
———
وفقكم الله لكل خير ☘️
.
.
تخيل لو بتدخل على موقع ويب، وتلاقيه بياخد وقت طويل جدًا علشان يفتح، وكل اللي كنت محتاجه صفحة واحدة! الموقف ده بيخلّي المستخدمين يقفلوا الموقع من قبل ما يشوفوه.
وهنا بييجي دور Code Splitting...
———
https://www.linkedin.com/posts/dev-alisamir_softwaredevelopment-softwaredeveloper-performance-activity-7286297075607113729-5Ioy
📍 Qabilah
https://qabilah.com/posts/IFUQPPSlhag
———
وفقكم الله لكل خير ☘️
❤4
مفهوم الـ Performance Test ⚡️
.
.
تخيل معايا إنك عملت Website أو Mobile App شكله تحفة، الـ UI مفيش بعد كده، والـ Features اللي فيه طلعت عينك وأنت بتعملها علشان تبقى حاجة محترمة. كل حاجة تمام لحد هنا...
لكن فجأة، بعد ما تعمل Release، أول ما يجيلك 1000 مستخدم في نفس الوقت… الـ App يبدأ يهنج، الـ API ترد متأخر جدًا، والـ Pages تاخد وقت طويل عشان تفتح.
وقتها مهما كان التصميم أو الـ Features قوية مش هيفرقوا مع المستخدم...
وهنا ييجي دور الـ Performance Test...
———
⚡️ يعني إيه Performance Test؟
ببساطة هو نوع من أنواع الـ Testing اللي بيركز على إنك تقيس أداء السيستم بتاعك تحت ظروف مختلفة. يعني بدل ما تشوف بس هل السيستم بيشتغل ولا لا (اللي هو Functional Testing)، هنا إحنا بنشوف:
- السيستم هيقدر يتعامل مع عدد كبير من الـ Users في نفس الوقت ولا لا.
- سرعة استجابة الـ API أو الـ Backend قد إيه.
- الـ Database بتتعامل مع الـ Queries بشكل سلس ولا بيحصل Bottlenecks.
- هل الموارد (CPU – Memory – Network) بيتم استهلاكها صح ولا لا.
———
🚀 أنواع الـ Performance Testing:
1- الـ Load Testing
بنقيس ازاي السيستم بيتصرف لما يكون عليه عدد Users كبير، مثلًا 10K User شغالين في نفس الوقت. الهدف إننا نشوف أقصى عدد Users يقدر السيستم يستحمله من غير ما يقع.
2- الـ Stress Testing
بنزود الضغط لحد ما السيستم ينهار فعلًا. الهدف هنا نعرف الـ Breaking Point فين.
3- الـ Spike Testing
بنختبر إيه اللي هيحصل لو فجأة حصل Increase ضخم في عدد الـ Users في وقت قصير جدًا، زي مثلاً Black Friday أو إعلان Viral.
4- الـ Endurance (Soak) Testing
بنخلي السيستم شغال بضغط متوسط أو عالي لفترة طويلة (ساعات أو أيام) ونشوف هل هيبقى ثابت ولا هيبدأ يبطأ مع الوقت بسبب Memory Leaks أو مشاكل تانية.
5- الـ Scalability Testing
بنقيس هل السيستم يقدر يتوسع (Scale Up أو Scale Out) عشان يتعامل مع الـ Growth ولا لا.
———
🔍 أدوات بتستخدم في الـ Performance Testing:
- الـ JMeter: من أشهر وأقوى الأدوات للـ Load Testing.
- الـ Locust: أداة قوية مكتوبة بـ Python وبتديك Flexibility.
- الـ k6: أداة كويسة وسهلة وسريعة جدًا وبتكتب الـ Scripts فيها بـ JavaScript.
- الـ Gatling: بتستخدم Scala ومفيدة في الـ Continuous Testing.
———
وفقكم الله لكل خير 🌿
.
.
تخيل معايا إنك عملت Website أو Mobile App شكله تحفة، الـ UI مفيش بعد كده، والـ Features اللي فيه طلعت عينك وأنت بتعملها علشان تبقى حاجة محترمة. كل حاجة تمام لحد هنا...
لكن فجأة، بعد ما تعمل Release، أول ما يجيلك 1000 مستخدم في نفس الوقت… الـ App يبدأ يهنج، الـ API ترد متأخر جدًا، والـ Pages تاخد وقت طويل عشان تفتح.
وقتها مهما كان التصميم أو الـ Features قوية مش هيفرقوا مع المستخدم...
وهنا ييجي دور الـ Performance Test...
———
⚡️ يعني إيه Performance Test؟
ببساطة هو نوع من أنواع الـ Testing اللي بيركز على إنك تقيس أداء السيستم بتاعك تحت ظروف مختلفة. يعني بدل ما تشوف بس هل السيستم بيشتغل ولا لا (اللي هو Functional Testing)، هنا إحنا بنشوف:
- السيستم هيقدر يتعامل مع عدد كبير من الـ Users في نفس الوقت ولا لا.
- سرعة استجابة الـ API أو الـ Backend قد إيه.
- الـ Database بتتعامل مع الـ Queries بشكل سلس ولا بيحصل Bottlenecks.
- هل الموارد (CPU – Memory – Network) بيتم استهلاكها صح ولا لا.
———
🚀 أنواع الـ Performance Testing:
1- الـ Load Testing
بنقيس ازاي السيستم بيتصرف لما يكون عليه عدد Users كبير، مثلًا 10K User شغالين في نفس الوقت. الهدف إننا نشوف أقصى عدد Users يقدر السيستم يستحمله من غير ما يقع.
2- الـ Stress Testing
بنزود الضغط لحد ما السيستم ينهار فعلًا. الهدف هنا نعرف الـ Breaking Point فين.
3- الـ Spike Testing
بنختبر إيه اللي هيحصل لو فجأة حصل Increase ضخم في عدد الـ Users في وقت قصير جدًا، زي مثلاً Black Friday أو إعلان Viral.
4- الـ Endurance (Soak) Testing
بنخلي السيستم شغال بضغط متوسط أو عالي لفترة طويلة (ساعات أو أيام) ونشوف هل هيبقى ثابت ولا هيبدأ يبطأ مع الوقت بسبب Memory Leaks أو مشاكل تانية.
5- الـ Scalability Testing
بنقيس هل السيستم يقدر يتوسع (Scale Up أو Scale Out) عشان يتعامل مع الـ Growth ولا لا.
———
🔍 أدوات بتستخدم في الـ Performance Testing:
- الـ JMeter: من أشهر وأقوى الأدوات للـ Load Testing.
- الـ Locust: أداة قوية مكتوبة بـ Python وبتديك Flexibility.
- الـ k6: أداة كويسة وسهلة وسريعة جدًا وبتكتب الـ Scripts فيها بـ JavaScript.
- الـ Gatling: بتستخدم Scala ومفيدة في الـ Continuous Testing.
———
وفقكم الله لكل خير 🌿
❤12👍1
How to Design APIs Like a Senior Engineer (REST, GraphQL, Auth, Security)
https://youtu.be/7iHl71nt49o
https://youtu.be/7iHl71nt49o
YouTube
How to Design APIs Like a Senior Engineer (REST, GraphQL, Auth, Security)
Become a Remote Senior Software Engineer with a Job Guarantee: https://hayksimonyan.com/?utm_source=youtube&utm_medium=video&utm_campaign=134-api-design-masterclass&utm_content=august-2025
Learn how to design APIs like a senior engineer with real-world examples…
Learn how to design APIs like a senior engineer with real-world examples…
❤7
CI/CD Pipeline Explained 💯
A CI/CD pipeline is a tool that automates the process of building, testing, and deploying software.
It integrates the different stages of the software development lifecycle, including code creation and revision, testing, and deployment, into a single, cohesive workflow.
The diagram below illustrates some of the tools that are commonly used.
A CI/CD pipeline is a tool that automates the process of building, testing, and deploying software.
It integrates the different stages of the software development lifecycle, including code creation and revision, testing, and deployment, into a single, cohesive workflow.
The diagram below illustrates some of the tools that are commonly used.
👍5
دردشة سريعة عن الـ Serverless 💯
.
.
خلال رحلتك في عالم البرمجة ممكن سمعت أو هتسمع عن مصطلح الـ "Serverless"، وده مش معناه إن مفيش سيرفرات، بالعكس، السيرفرات موجودة لكن مش أنت اللي بتديرها.
يعني بدل ما تبقى قاعد ماسك السيرفرات بتاعتك، بتضيف رامات هنا، تشيل داتا من هناك، تشغل حاجات معينة، الكلام ده كله بيتعمل أوتوماتيك عن طريق شركة كبيرة زي أمازون (AWS)، جوجل (Google Cloud)، أو مايكروسوفت (Azure).
---
ليه نستخدم الـ Serverless؟ 🤔
واحدة من أكبر الفوائد إنك بتبقى مركز على الكود بتاعك بس. بدل ما تضيع وقتك في إدارة السيرفرات، الصيانة، والتحديثات، أنت كل اللي عليك تكتب الكود بتاعك، والسيرفر بتاع الخدمة اللي أنت مشترك فيها هو اللي هيهندل الباقي.
وده بيوفر عليك وقت ومجهود كبيير.
⏳ طب لو السيرفر هو اللي بيهندل كله، ده معناه إن كل حاجة بتحصل وقت ما ييجي طلب للتطبيق (Request)؟
بالضبط، أنت لما تكتب كود وتعمله Deploy على منصة Serverless، الكود ده مش هيشتغل إلا لما يجي طلب من المستخدم، زي لما حد يدخل على اللينك بتاع التطبيق أو يستخدم API معينة.
فبالتالي أنت بتدفع بس على الاستخدام الفعلي، يعني مفيش فلوس رايحة على سيرفر شغال 24/7 من غير فايدة.
---
💡 أمثلة على خدمات الـ Serverless:
📍 الـ AWS Lambda: واحدة من أشهر الخدمات في العالم اللي تخص ال، Serverless. بتكتب Function صغيرة، ترفعها على AWS Lambda، وخلص الموضوع. هي بقى اللي بتدير الباقي.
📍 الـ Google Cloud Functions: برضو شبيه لـ AWS Lambda، بتكتب الـ Function بتاعتك وهي تشغلها لما يكون في طلب.
📍 الـ Azure Functions: نفس الفكرة مع Microsoft.
---
🔄 من ضمن عيوب الـ Serverless؟
⚡️ التحكم أقل: أنت مش ماسك السيرفر في إيدك، فلو أنت من الناس اللي بتحب تعرف كل صغيرة وكبيرة عن البنية التحتية، ممكن تحس إن ده مش الخيار المثالي ليك.
⚡️ الـ Latency: أحيانًا بيبقى في تأخير بسيط لما الطلب بيوصل لأول مرة لأنه بيبقى فيه وقت بسيط بيضيع في تشغيل الـ Function لأول مرة.
---
وفقكم الله لكل خير 🌿
.
.
خلال رحلتك في عالم البرمجة ممكن سمعت أو هتسمع عن مصطلح الـ "Serverless"، وده مش معناه إن مفيش سيرفرات، بالعكس، السيرفرات موجودة لكن مش أنت اللي بتديرها.
يعني بدل ما تبقى قاعد ماسك السيرفرات بتاعتك، بتضيف رامات هنا، تشيل داتا من هناك، تشغل حاجات معينة، الكلام ده كله بيتعمل أوتوماتيك عن طريق شركة كبيرة زي أمازون (AWS)، جوجل (Google Cloud)، أو مايكروسوفت (Azure).
---
ليه نستخدم الـ Serverless؟ 🤔
واحدة من أكبر الفوائد إنك بتبقى مركز على الكود بتاعك بس. بدل ما تضيع وقتك في إدارة السيرفرات، الصيانة، والتحديثات، أنت كل اللي عليك تكتب الكود بتاعك، والسيرفر بتاع الخدمة اللي أنت مشترك فيها هو اللي هيهندل الباقي.
وده بيوفر عليك وقت ومجهود كبيير.
⏳ طب لو السيرفر هو اللي بيهندل كله، ده معناه إن كل حاجة بتحصل وقت ما ييجي طلب للتطبيق (Request)؟
بالضبط، أنت لما تكتب كود وتعمله Deploy على منصة Serverless، الكود ده مش هيشتغل إلا لما يجي طلب من المستخدم، زي لما حد يدخل على اللينك بتاع التطبيق أو يستخدم API معينة.
فبالتالي أنت بتدفع بس على الاستخدام الفعلي، يعني مفيش فلوس رايحة على سيرفر شغال 24/7 من غير فايدة.
---
💡 أمثلة على خدمات الـ Serverless:
📍 الـ AWS Lambda: واحدة من أشهر الخدمات في العالم اللي تخص ال، Serverless. بتكتب Function صغيرة، ترفعها على AWS Lambda، وخلص الموضوع. هي بقى اللي بتدير الباقي.
📍 الـ Google Cloud Functions: برضو شبيه لـ AWS Lambda، بتكتب الـ Function بتاعتك وهي تشغلها لما يكون في طلب.
📍 الـ Azure Functions: نفس الفكرة مع Microsoft.
---
🔄 من ضمن عيوب الـ Serverless؟
⚡️ التحكم أقل: أنت مش ماسك السيرفر في إيدك، فلو أنت من الناس اللي بتحب تعرف كل صغيرة وكبيرة عن البنية التحتية، ممكن تحس إن ده مش الخيار المثالي ليك.
⚡️ الـ Latency: أحيانًا بيبقى في تأخير بسيط لما الطلب بيوصل لأول مرة لأنه بيبقى فيه وقت بسيط بيضيع في تشغيل الـ Function لأول مرة.
---
وفقكم الله لكل خير 🌿
❤12👍3