Code With Somar
2.71K subscribers
442 photos
4 videos
1 file
812 links
🚀 ريادي أعمال ومطوّر ويب بخبرة واسعة

💻 متخصص بتطوير حلول ويب متكاملة باستخدام Laravel، Django، React، Vue، و Node.js.

🏆 ضمن أفضل 4 صناع محتوى في سوريا وأفضل 3 في المحتوى التقني.

🌟 ناشط في مجتمع برمجة الأطفال، ومساهم في تطوير المحتوى التقني عربياً.
Download Telegram
سلسة نصائح DB
Tip #3

إبعد عن الـ Cursors قد ما فيك، لأنها بتسحب أداء السيرفر لورا.
===================

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
14
رغم ضيق الوقت تم الانتهاء من تسجيل المحاور التالية:
مقدمة الدورة: نستعرض خلالها معلومات عن الدورة و كيفية الاستفادة منها و تجهيز بيئة العمل.

مدخل إلى أمن المعلومات: مفهوم الـ CIA و الفرق بين Secure Code و Secure Infrastructure و غيرها من المعلومات النظرية المهمة.

أساسيات الحماية في Laravel: اهمية ملف الـ env و الـ CSRF و غيرها من ادوات الحماية الاساسية الموجودة داخل Laravel

و يتم الآن العمل على المحور التالي:
📌الهجمات الشائعة وطرق الحماية منها

بإمكانكم الانضمام إلى مجموعة التسجيل المبكر للحصول على دورة بخصم كبير عند انطلاقها و الإجابة على استفساراتكم من خلال الرابط:
https://t.me/+GizVHFz0TYYzNjUy
13👍1
سلسة نصائح DB
Tip #4

حاسس في بطء بالـ Queries؟
راجع مساحة التخزين يلي فيها قاعدة البيانات، لازم تضل فاضية حوالي 30% على الأقل.

===================

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
10
سلسة نصائح DB
Tip #5

بـ SQL Server، المقارنة بين 'A' و 'a' هي نفسها.
يعني ما في داعي تستخدم LOWER() أو UPPER() لما تقارن بين Strings.

لأن SQL Server افتراضيًا بيشتغل بـ Collation غير حساس لحالة الأحرف (Case-Insensitive)،
فالمقارنة:

WHERE name = 'ahmed'


رح ترجع 'Ahmed', 'AHMED', 'ahmed'… بدون مشاكل.

وكمان: استخدام LOWER() أو UPPER() بيمنع استخدام الـ Index، وهاد ممكن يبطّئ الاستعلام كتير خاصة بالجداول الكبيرة.



===================

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
14🔥2👏2
سلسة نصائح DB
Tip #6
الأوبريتورز (Operators) بتأثر بشكل مباشر على أداء الـ query!
= هو الأسرع
بعده >
وبعدين >= و < بيجوا الأبطأ.

ليش؟
لأن المقارنة باستخدام = بتكون مباشرة، أما باقي العمليات بتحتاج فحص أوسع للبيانات.

🔍 مثال:
SELECT * FROM orders WHERE status = 'completed';

أسرع من:
SELECT * FROM orders WHERE amount > 1000;


نصيحة: لما تكتب شروط بـ WHERE، بلّش بأبسط وأسرع شرط، خاصة إذا فيه AND بين الشروط – هيك بتحسّن أداء الـ query وبتخفف الحمل على الـ Query Optimizer



===================

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
🔥11👍3
Media is too big
VIEW IN TELEGRAM
مقدمة دورة Laravel Security Master Class لتتعرفوا اكثر على المحاور المقدمة خلال الدورة
9🔥3
واحدة من أجمل ميزات Laravel يلي يمكن ما بيعرفها الكل هي التحقق القوي والمبني مسبقًا لكلمات السر باستخدام كلاس Password.

شوف هالمثال:
Password::min(8)
->letters()
->mixedCase()
->numbers()
->symbols()
->uncompromised();

شو يعني؟

لازم تكون الكلمة أكتر من 8 حروف

فيها حروف أبجدية

فيها حروف صغيرة وكبيرة

فيها أرقام

فيها رموز

والأهم: ما تكون مسرّبة من قبل! (uncompromised() بتشيّك تلقائيًا على قاعدة بيانات haveibeenpwned.com)

🔥 هالشي بيرفع مستوى الأمان بشكل رهيب وبسطر كود بسيط.

💬 شو رأيك؟ عم تستخدم هالطريقة بكودك؟ ولا لسه بتكتب قواعد التحقق يدويًا؟

===================

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال

#Laravel #WebSecurity #PasswordValidation #PHP #FormRequest #امن_المواقع #LaravelTips
🔥179👍7
سلسة نصائح DB
Tip #7

EXISTS و NOT EXISTS غالبًا بيقدّموا أداء أفضل من IN و NOT IN، خاصة لما تتعامل مع جداول كبيرة.

ليش؟
لأن EXISTS بيوقف أول ما يلاقي نتيجة، بينما IN بيمرّ على كل القيم ويحمّلها بالذاكرة قبل ما يقارن، وهاد الشي بيستهلك وقت وموارد أكتر.

SELECT * FROM orders 
WHERE EXISTS (
SELECT 1 FROM customers WHERE customers.id = orders.customer_id
);


هاد أسرع من:
SELECT * FROM orders 
WHERE customer_id IN (
SELECT id FROM customers
);


📌 كمان BETWEEN بيقدّم أداء أفضل من IN لما تقارن على مدى رقمي متسلسل:
-- أفضل:
WHERE price BETWEEN 100 AND 500

-- أبطأ:
WHERE price IN (100, 101, 102, ..., 500)


الخلاصة:
إذا كنت بتشتغل على conditions بتعتمد على مجموعة قيم أو subqueries، فكّر دائمًا بـ EXISTS أو BETWEEN بدل IN.


===================

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
9🔥2👍1
بـ PHP 7.4 وفوق، فيك تحط قيمة افتراضية بهالطريقة إذا المتغيّر طالع فاضي أو null:

===================

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
14👍2
سلسة نصائح DB
Tip #8

ترتيب الشروط بـ AND و OR بيفرق!
حط الشرط يلي ممكن يكون false أول بـ AND
وحط يلي ممكن يكون true أول بـ OR



===================

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
9
أذكى وأجرأ قرار أخدوه تيم React؟ مو الـHooks ولا الـServer Components، ولا حتى الـJSX!

خليني خبركن عن قرار قديم صار بـ2015، ولسا لهلأ عم يغير شكل تطوير الواجهات 👇

بوقتها، قرروا يفصلوا React عن React-DOM
يعني خلّوا React عبارة عن "عقل" ومنطق عام لإدارة الـUI
وخلّوا التّصيير (Rendering) مسؤولية أدوات تانية حسب المنصة

والنتيجة؟
صار فيك تستخدم React بكل مكان تقريبًا:

🔹 react-dom للويب
🔹 react-native للموبايل
🔹 ink للـTerminal (نعم، CLI!)
🔹 react-three-fiber لعوالم 3D
🔹 وغيرهم كتار...

نفس المفاهيم اللي بتحبها بـReact:
state, components, props, hooks...
بس تقدر تستخدمها على أي منصة!

القرار هاد عمل نقلة نوعية، وخلى React تتحول من "مكتبة للويب" لـ"منصة عالمية لبناء الواجهات" 🎯

والأجمل؟ إنو هالقرار من 2015 ولسا لهلأ عم يفتح أبواب جديدة للمطورين!

📌 اللي كتب الوثائق لهالنسخة كانت Sophie Alpert

لو حبيتوا هيك محتوى تقني وتاريخي، لا تنسوا تشاركوه مع المهتمين 💙

#React #WebDev #OpenSource #TechHistory
32👍2
سلسة نصائح OOP

قبل ما ندخل بعالم الـ Object-Oriented Programming، لازم نتفق على أهم نقتطين لازم تهتم فيهم بأي كود بتكتبه:

الـ Readability:
يعني الكود لازم يكون سهل القراءة والفهم لأي مبرمج ممكن ييجي بعدك.
الكود مو معمول بس للكمبايلر، معمول لزملاءك المطورين كمان.

🧠 "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." – Martin Fowler

الـ Reusability
ما في داعي تكرر نفس الكود أكتر من مرة.
إذا عندك قطعة كود عم تتكرر بنفس الطريقة أكتر من مرة، لازم تعيد تنظيمه بطريقة قابلة لإعادة الاستخدام، وهاد بالضبط من أهم أهداف OOP.

===================

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
14❤‍🔥4🔥4👍3👏1
سلسة نصائح OOP

هلا لازم نفهم شو يعني Programming Paradigm.

🔸 هو باختصار "نمط برمجي" أو "أسلوب كتابة كود".
كل لغة برمجة بتدعم واحد أو أكتر من الـ paradigms، وهي الاستراتيجيات الأساسية لكتابة الكود.

🔹 بنقسم الـ paradigms لقسمين كبار:

Imperative Paradigm – النمط التعليمي

Declarative Paradigm – النمط التصريحي (رح نحكي عنه لاحقًا)

===================

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
9
تحياتي لكم جميعاً
اتمنى لكم بداية اسبوع موفقة و خالية من الـ Bugs و الـ Meeting

نتلقى اسئلتكم عبر ستوري انستغرام من هنا
14
سلسة نصائح OOP

الـ Imperative Paradigm وأنواعه
:

الـ Imperative Paradigm بيعتمد على إنك تعطي الكمبيوتر سلسلة أوامر خطوة بخطوة، ولازم تهتم بترتيبها.
وهو بينقسم لعدة أنماط فرعية، أهمها:

Procedural Programming
Object-Oriented Programming
Parallel Processing

===================

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
10👍1
هل في حدا بيشتغل متاجر على shopify ياريت يتواصل معي لسلمه شغل
1
سلسة نصائح OOP

الـ
Procedural Programming هو تطوير للـ imperative paradigm، بحيث يسمحلك تقسّم الكود لإجراءات (procedures) تنفذ مهام محددة.

⚠️ ملاحظة: فيه فرق بين procedure و function

الـ function بترجع قيمة

الـ procedure ما بترجع

🔍 مثال تقليدي:
int sum = 0;
for(int i = 1; i <= 10; i++) {
sum += i;
}
cout << "The sum is: " << sum;


هون استخدمنا loop و procedure بسيطة بدل ما نكتب sum += x عشر مرات، فدخلنا بعالم "تنظيم الكود".



===================

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
9👍2
سلسة نصائح OOP
النوع التاني من الـ Imperative Paradigm هو Object-Oriented Programming – أو ببساطة OOP.

OOP مش لغة، هي أسلوب كتابة كود، بنظّم الكود بطريقة بتشبه الحياة الواقعية:

بتتعامل مع أي كائن على إنه Object

والكائن إله خصائص (Attributes) و سلوكيات (Behaviors)

🧠 مثال:
Car → هي object
خصائصها: model, color, engine
وظائفها: تمشي، توقف، تزمّر

أي كائن تاني من نوع "Vehicle" ممكن يكون إله خصائص متشابهة ووظائف متقاربة.

وهون بيظهر جمال الـ OOP:

إعادة استخدام الكود (Reusability)
قابلية التوسعة والتعديل بدون فوضى (Maintainability)
تنظيم وهيكلية واضحة


===================

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
3👍1
وصلني من أحد الأصدقاء:

We are seeking an experienced Senior Backend Developer to design, develop, and maintain high-quality backend solutions for our online E-commerce company.

Key Responsibilities:
Backend Development: Architect, design, and develop scalable, secure, and high-performance backend systems.
API Development & Integration: Build and integrate RESTful APIs and GraphQL services.
Database Management: Work with MySQL and Elasticsearch, handling complex queries and indexing strategies.
Code Quality & Reviews: Write clean, maintainable, and testable code while ensuring best practices through code reviews.
DevOps & CI/CD: Implement and maintain CI/CD pipelines, automate deployment processes, and manage cloud infrastructure.
Troubleshooting & Debugging: Identify and resolve complex issues in production environments.

Required Skills & Qualifications:
Experience: 4+ years in backend development, with a strong portfolio of successful projects.
Frameworks: Proficiency in Django or Laravel (or both).
Databases: Strong experience with relational databases (MySQL) and NoSQL databases (Elasticsearch, Redis).
API Development: Expertise in building and consuming RESTful APIs and GraphQL.
DevOps & Cloud: Familiarity with Docker, CI/CD tools, and cloud infrastructure.
Version Control: Proficiency in Git.
Agile Methodologies: Experience working in Agile/Scrum environments.
Communication: Strong verbal and written communication skills.

Additional Information:
Location: Based in Damascus, Syria (Onsite Work)
Competitive compensation package with attractive benefits.
To apply, please send your resume to Bana@wonderbeauties.com

———————————————————-
ملاحظة هامة:
ماعندي اي معلومات اضافية تتعلق بفرصة العمل هي فقط قمت بنشرها بنية مساعدة الاشخاص اللي عم تبحث عن عمل تلاقي شغل و بالتوفيق للجميع
6🔥5👍1
سلسة نصائح OOP

شو يعني Parallel Processing؟
Parallel Processing هو نوع من الـ paradigms بيمكّنك تشغل أكتر من مهمة بنفس الوقت، بتقسيم العمليات على أكتر من processor أو thread.

بيستخدموه بالمشاريع يلي فيها heavy computation أو real-time processing، مثل تحليل البيانات أو التعامل مع الصور والفيديوهات أو حتى الألعاب.

أسرع من التنفيذ المتسلسل
بس بيعتمد على المعالجة المتوازية ونظام التشغيل

===================

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
9👍2