11.1K subscribers
3.12K photos
19 videos
138 files
3.66K 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
🎯 الفرق بين الـ 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 عشان تأمن نفسك وتحافظ على السيرفر والداتا بتاعتك.

———

#دقيقة_برمجة
6
Server Actions in Next.js ⚡️

You can skip API routes and write server-side logic right inside your components with Server Actions in Next.js!
4
دردشة سريعة عن مفهوم Agile 💯
.
.
الـ Agile ببساطة هو طريقة تفكير وإدارة لمشاريع البرمجة (أو أي مشاريع تانية) هدفها الأساسي إنك تطور المنتج بشكل سريع ومرن، وتعدل عليه بسهولة حسب احتياجات العميل أو السوق.

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

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

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

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

———

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

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

———

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

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

———

#دقيقة_برمجة
10
CSS Conditional Rules 💯

Write smarter CSS. Use @if rules to switch themes and variants cleanly.
1
AI Prompting for Everyone 💯

———

Whatever your current skill level, this course will help you become an AI power user

• Find information: Get accurate, well-sourced answers using AI web search and deep research modes.

• Brainstorm & Write: Use AI as a thought partner to get honest feedback and write natural-sounding text.

• Create & Build: Generate images and build simple websites and apps with no coding required.

———

• Beginner
• 3h4m
• Instructor: Andrew Ng

———

https://learn.deeplearning.ai/courses/ai-prompting-for-everyone/information
3
How to Detect orientation in CSS
4