DevGuide – Telegram
11.1K subscribers
2.94K photos
19 videos
135 files
3.62K links
Level up daily with insider dev hacks, smart career tips, and real talk! 🚀

⚡️ Stay connected with me: linktr.ee/AliSamir

📍 To advertise on the channel: https://telega.io/c/the_developer_guide
Download Telegram
أهم 7 أخطاء ممكن تقع فيها في الفرونت إند 💡
.
.
في عالم الفرونت إند غالبًا شوفت أو تعاملت مع كود كتير شكله مريب وخلاك تحس إن في حاجة غلط بس مش عارف تقول إيه هي بالضبط.

في المقال ده، هتتعرف على 7 حاجات (Code Smells) في مشروع الفرونت إند ممكن تبان بسيطة، بس في الحقيقة بتأثر على أداء المشروع، وقابلية الصيانة، وتجربة الفريق كله. المقال بيشرح كل نقطة بشكل واضح، وبيقولك ليه تعتبر مشكلة، وإزاي تصلحها.

———

7 Front-End Code Smells You Should Fix Right Now ⚡️


As a front-end developer, you’ve likely encountered code that feels wrong — hard to read, tricky to maintain, or just plain chaotic.

These are code smells, subtle signs that your codebase needs a refactor. Left unchecked, they can slow development, introduce bugs, and frustrate your team.

In this article, we’ll dive into 7 front-end code smells you should spot and fix immediately to keep your projects clean, scalable, and developer-friendly.

———

https://medium.com/gitconnected/7-front-end-code-smells-you-should-fix-right-now-6286ce16b539
6👏3
مبادرة الرواد الرقميون
.
.
تهدف مبادرة الرواد الرقميون (Digilians) إلى تأهيل وتدريب الشباب في مجالات الاتصالات، تكنولوجيا المعلومات، والبرمجيات، وذلك لتعزيز دورهم في عملية التحول الرقمي ودعم نمو الصادرات الرقمية، بما يسهم في تحقيق أحد المحاور الرئيسية لتنمية الاقتصاد الوطني.

تمنح المبادرة كلًا من الدراسة العلمية والتدريب العملي للمتميزين من مختلف المؤهلات العلمية ومن جميع المحافظات حيث تستهدف التعاون مع الجهات المتخصصة محليًا ودوليًا في العلوم التكنولوجية المختلفة لتغطية النواحي العلمية والتعليمية، ذلك بالإضافة الى تنمية المهارات اللغوية والحياتية والقيادية.

———

مزايا المبادرة

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

———

البرامج التدريبية

تقدم المبادرة مجموعة واسعة من البرامج الاكاديمية المتنوعة التي تم تصميمها بعناية لتلبية احتياجات سوق العمل المتنوعة والمتغيرة. نهدف الى تزويد الطلاب بالمهارات والمعرفة اللازمة للتفوق في مجالاتهم المهنية المختلفة، مما يضمن لهم فرصًا واسعة في سوق العمل العملي. ابدأ رحلتك في عالم التكنولوجيا..حيث يلتقي الشغف بالإبداع!

- برنامج الدبلوم المكثف
- برنامج الدبلوم المتخصص
- برنامج الماجستير المهني
- برنامج ماجستير العلوم

———

الموقع الرسمي للتسجيل في المبادرة:

https://www.digilians.gov.eg
3👍1
DevGuide pinned «مبادرة الرواد الرقميون . . تهدف مبادرة الرواد الرقميون (Digilians) إلى تأهيل وتدريب الشباب في مجالات الاتصالات، تكنولوجيا المعلومات، والبرمجيات، وذلك لتعزيز دورهم في عملية التحول الرقمي ودعم نمو الصادرات الرقمية، بما يسهم في تحقيق أحد المحاور الرئيسية لتنمية…»
إيه الفرق بين الـ JWT والـ Sessions؟ 🤔
.
.
الاتنين بيستخدموا علشان نعرف المستخدمين اللي دخلوا على الموقع، بس كل واحد له طريقة مختلفة تمامًا في التعامل.

في المقال ده، هتفهم الفرق بينهم بشكل بسيط وسهل، علشان تعرف تختار الأفضل لمشروعك.

———

JWT vs Sessions: The Real Difference in Simple Words 💡


If you’ve ever built or used a web app, you’ve probably logged in at some point. Maybe you checked your email, browsed Twitter, or paid a bill online. But have you ever wondered how these websites remember who you are?

That’s where authentication comes in. In web development, there are two big players in handling user sessions: JWT (JSON Web Tokens) and Sessions.

This article breaks down the difference between JWT and Sessions in simple, no-fluff words.

———

📍 DEV Community
https://dev.to/alisamir/jwt-vs-sessions-the-real-difference-in-simple-words-51c0

📍 Medium
https://medium.com/@dev.alisamir/jwt-vs-sessions-the-real-difference-in-simple-words-184e1e0d9e8d
9👏1
PREACT RUNS FAST ⚡️


Why Preact is winning:

📦 Only 3kB vs React's 30+kB
🔥 Dramatically faster load times
♻️ Direct DOM connection
⚙️ Works with React libraries


Perfect for:

🚀 Fast PWAs
📱 Mobile-first experiences
🧩 Lightweight components
6👍1
SQL Zero To Hero Mindmap
5
الفرق بين الـ Primary Key والـ Foreign Key
.
.
خلينا نتخيل قواعد البيانات كأنها شيت إكسيل كبير فيه جداول (Tables)، وكل جدول فيه صفوف (Rows) وأعمدة (Columns)، إزاي نقدر نميّز كل صف لوحده؟ أو نربط بين جدول وجدول؟ هنا بقى بييجي دور الـ Primary Key والـ Foreign Key.

———

🔸 أولًا: الـ Primary Key – المفتاح الأساسي


ده زي رقم البطاقة أو رقم الجلوس كده، كل صف في الجدول لازم يكون عنده قيمة مميزة في العمود ده، علشان نعرف نوصله بسهولة من وسط 1000 صف تاني.

- لازم يكون Unique: يعني كل صف له رقم مختلف عن التاني.
- لا يسمح بـ null: يعني لازم تكون القيمة موجودة ومش فاضية.


🎯 مثال بسيط: لو عندك جدول اسمه Students، ممكن تضيف عمود اسمه student_id كـ Primary Key. يعني كل طالب له ID مختلف، ده بيساعدنا نميّزه ونتعامل مع بياناته بسهولة.

———

🔸 ثانيًا: الـ Foreign Key – المفتاح الأجنبي أو المفتاح الرابط


هنا بقى الموضوع له علاقة بالعلاقات (Relationships) بين الجداول.

الـ Foreign Key هو عمود موجود في جدول، بس بيرجع يشاور على الـ Primary Key بتاع جدول تاني.
يعني بيقولك: "القيمة اللي هنا، لازم تكون موجودة هناك"


استخدامه الأساسي:

- بيربط الجداول ببعض.
- بيساعدنا نحافظ على "سلامة البيانات" (Data Integrity)، يعني ميبقاش فيه بيانات ملهاش معنى أو ملهاش علاقة.


🎯 مثال: لو عندنا جدول اسمه Orders، وعايزين نعرف كل أوردر اتعمل من مين، هنضيف عمود اسمه user_id كـ Foreign Key، اللي بيربط الأوردر ده بالمستخدم اللي موجود في جدول Users.

———

🧠 الخلاصة في كلمتين:

- الـ Primary Key: بيميز كل صف في جدول لوحده.
- الـ Foreign Key: بيربط الصف ده بصف تاني في جدول تاني.

الاتنين مع بعض زي المفتاح والباب... واحد يفتحلك الصف، والتاني يخليك توصل لجدول تاني وتربط البيانات ببعضها 💡

———

#دقيقة_برمجة
7👍1
API Design 101: From Basics to Best Practices 💯


In this deep dive, we’ll go through the API design, starting from the basics and advancing towards the best practices that define exceptional APIs.

———

https://levelup.gitconnected.com/api-design-101-from-basics-to-best-practices-a0261cdf8886
6
مفهوم الـ Index في قواعد البيانات 🔍
.
.
تخيل معايا أنك دخلت مكتبة فيها مليون كتاب، والمطلوب تدور على كتاب اسمه "تعلم البرمجة بلغة الجافا"، ومفيش أي ترتيب أو فهرس للمكتبة.

هتحتاج تمسك كتاب كتاب وتشوف عنوانه لحد ما تلاقي اللي أنت عايزه. الموضوع هيبقى بطييييء جدًا، صح؟

طيب، لو المكتبة دي فيها "فهرس" مرتب فيه أسماء الكتب وأرقام كل الرفوف بتاعتها... وقتها تفتح الفهرس، تدور على الاسم، تعرف مكانه، وتروح تاخده في ثواني. 🚀

———

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

الـ Index هو عبارة عن حاجة شبه الفهرس كده، بيخلي قاعدة البيانات تلاقي البيانات اللي أنت طالبها بسرعة من غير ما تضطر تمسك كل صف داخل الجدول وتفتش فيه صف صف.

———

🤔 ليه بنستخدم الـ Index؟


لما بتعمل استعلام (Query) علشان تجيب بيانات معينة، خصوصًا من جداول فيها ملايين الصفوف، الـ Index بيقلل وقت البحث بشكل كبير جدًا. بدل ما يقلب الجدول كله، بيروح يدور داخل الـ Index ويوصلك بالبيانات أسرع.

———

🛠 أنواع الـ Index المشهورة:


- الـ Single Column Index: بيكون معمول على عمود واحد بس.
- الـ Composite Index: بيكون معمول على أكتر من عمود مع بعض.
- الـ Unique Index: بيضمن إن القيم اللي في العمود غير مكررة.
- الـ Full-text Index: بيستخدم للبحث داخل نصوص طويلة زي المقالات.

———

⚠️ ملاحظة مهمة:


استخدام Index بيساعد في تسريع الـ SELECT queries...

لكن خلي بالك، كل ما تعمل Insert أو Update أو Delete في الجدول، قاعدة البيانات لازم تحدث الـ Index كمان، وده معناه شوية تكلفة إضافية. يعني، مينفعش تحط Index على كل الأعمدة وخلاص، لازم تختار على حسب أكتر Queries بتستخدمها.

———

الـ Index = فهرس بيسرع البحث داخل قواعد البيانات.

#دقيقة_برمجة
8👍1
The 2025 Microservices Roadmap for Developers
7👍1
Writing Clean, Secure Node.js APIs – A Checklist You’ll Actually Use


If you’re building APIs with Node.js, you’re not just writing code — you’re shaping the backbone of apps that people trust with their data, their businesses, and sometimes their lives.

We’ve all been there — quick fixes, rushed deadlines, and messy endpoints that haunt us later.

Here’s your essential checklist for writing clean, secure Node.js APIs — the one you’ll want to print out, save, and stick on your second monitor.

———

https://dev.to/alisamir/writing-clean-secure-nodejs-apis-a-checklist-youll-actually-use-3loc
2
🎯 الفرق بين الـ Client-side Validation والـ Server-side Validation
.
.
أول حاجة تعال نتفق إن الـ "Validation" يعني التحقق من صحة البيانات اللي المستخدم بيدخلها، زي مثلًا لما تيجي تسجل في موقع وتدخل الإيميل والباسورد، لازم الموقع يتأكد إن البيانات دي صح ومظبوطة قبل ما يحفظها أو يتعامل معاها.

التحقق ده ممكن يحصل في مكانين:

———

🔹 الـ Client-side Validation (التحقق في المتصفح):


- يعني التحقق بيحصل قبل ما البيانات تروح للسيرفر.
- الكود اللي بيعمل التحقق ده بيكون شغال عند المستخدم نفسه، غالبًا باستخدام JavaScript أو HTML5 Validation.

مثلًا لو أنت بتدخل بياناتك في فورم تسجيل، والمتصفح طلع لك رسالة بتقولك "الإيميل مش مكتوب بطريقة صحيحة" أو "الباسورد قصير"، قبل حتى ما تضغط على Submit... ده كده Client-side Validation.

ولكن النوع ده مش آمن بنسبة ١٠٠٪، ومينفعش نعتمد عليه لوحده.

———

🔹 الـ Server-side Validation (التحقق عند السيرفر):


- هنا التحقق بيحصل بعد ما البيانات تتبعت للسيرفر.
- السيرفر هو اللي بيتأكد بنفسه من كل حاجة: الإيميل صح؟ الباسورد قوي؟ وهكذا.

بغض النظر المستخدم عمل إيه على جهازه، السيرفر بيستلم الداتا ويتأكد منها بنفسه.

النوع ده ممكن يحميك من هجمات زي SQL Injection وغيرها، ولكن ده بيزود الحمل على السيرفر.

———

إيه الصح؟


الصح والمُتبع في أي مشروع محترم إنك تستخدم النوعين مع بعض:

- تعمل Client-side Validation عشان تحسن تجربة المستخدم وتظهر له Feedback سريع.
- وتعمل كمان Server-side Validation عشان تأمن نفسك وتحافظ على السيرفر والداتا بتاعتك.

———

#دقيقة_برمجة
9
يعني إيه Agile؟ 📈
.
.
الـ Agile ببساطة هو طريقة تفكير وإدارة لمشاريع البرمجة (أو أي مشاريع تانية) هدفها الأساسي إنك تطور المنتج بشكل سريع ومرن، وتعدل عليه بسهولة حسب احتياجات العميل أو السوق.

زمان كان الشغل في البرمجة بيتم بطريقة اسمها Waterfall، يعني نمشي خطوة خطوة بالترتيب (نخطط، نصمم، نبرمج، نختبر، نسلم)، ولو حصلت مشكلة وإحنا في النص، بنضطر نرجع للخطوة دي ونخسر وقت ومجهود كتير.

لكن الـ Agile قالك: بدل ما نعمل كل ده مرة واحدة ونخاطر، نشتغل بطريقة تانية:

- نقسم المشروع لأجزاء صغيرة اسمها Sprints (مدة الـ Sprint بتكون غالبًا من أسبوعين لشهر).
- في كل Sprint، نخلص جزء صغير شغال فعليًا من المشروع (ممكن صفحة، ميزة، أو وظيفة معينة).
- كل Sprint بيخلص، بنعرض اللي عملناه على العميل أو التيم، ونشوف رأيهم.
- بناءً على الفيدباك ده، نعدّل ونكمل Sprint جديد.

بدل ما نشتغل شهور وبعدين نكتشف إن العميل عايز حاجة تانية أو السوق اتغير.

———

📌 طيب ليه الـ Agile مهم؟


- بيخليك تتعامل مع التغييرات اللي بتحصل في المشروع بسهولة وبشكل مرن.
- بيقلل احتمالية إن المشروع كله يفشل.
- بيخلي العميل شايف كل حاجة شغالة خطوة بخطوة.

———

💯 أشهر الطرق اللي بتطبق الـ Agile:


- الـ Scrum: ودي عبارة عن طريقة منظمة أكتر فيها أدوار زي Scrum Master و Product Owner.
- الـ Kanban: ودي نظام بيعتمد على بورد فيه مهام تتحرك ما بين To do → Doing → Done.

———

#دقيقة_برمجة
7👏4👍1
This media is not supported in your browser
VIEW IN TELEGRAM
مسار تعلم Spring Boot لعام 2025 🔥

Spring Boot Roadmap 2025: The Complete Guide for Backend Developers 🚀


Learn how to master Spring Boot in 2025 with this complete roadmap covering Java fundamentals, REST APIs, Spring Security, Data Access, and more.

https://www.amigoscode.com/blogs/spring-boot-roadmap-2025
4👍2