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

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

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

🌟 ناشط في مجتمع برمجة الأطفال، ومساهم في تطوير المحتوى التقني عربياً.
Download Telegram
لحد الان في بعض المقالات و الاراء على الانترنت تصف Laravel بأنه مو "serious framework" ( رغم القفزة الكبيرة اللي شفناها بأحدث أصداراته )

يمكن اكتر شي بتم التدقيق عليه هو طريقة تعريف الـ Routes باستخدام Route::controller()->group(...) و كيف الكود بيمرر Closure ما بترجع شي ومع هيك بتنضاف Routes

و إذا بتلحق الكود من Route لـ Router، لـ RouteRegistrar بتشوف في شوية تعقيد خلف الكواليس يعني:
أمور مثل Facades بتغلف الكلاسات الأساسية
استخدام groupStack لتخزين خصائص مؤقتة
ومرور Closure بين كلاسات بطريقة معقدة شوي

هلا اكيد مافي framework مافيه هيك قصص و لكن اظن في Over باتهامه بالتعقيد او مو "serious framework" اليوم عم نشوف انه المجتمع تبعه كل يوم اكبر و الانترنت حرفياً بحب Laravel و التطور تبعها سريع جداً

بالنهاية ما فيك تحكم على شي بدون ما تشتغل فيه بأيدك لربما نحنا منحكي على frameworks تانية كلام مو صح لان تجربتنا فيها مو غنية كفاية لنفهمها صح

عجبتك المعلومة و استفدت منها؟؟
لا تنسى تشاركها و تتفاعل معها 🔥

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

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
🔥72👌1
لما تكتب Query بـ Django، ما بيتنفذ فوراً متل مو مفكر Django بيشتغل بمبدأ الـ Lazy Evaluation يعني بجهز الـ Query بس ما بيبعتها تتنفذ إلا لما تطلب منه يساوي هاد الشي

طيب ايمتى بيتنفذ؟

بس تعمل شي من هدول:

تمشي على النتائج بحلقة for
تحوّلها لـ list()
تطلب .first() أو .get()
تستخدم .count() أو .exists()

بهاللحظة، Django بيبعت الـ Query فعلاً وبيجيب البيانات.

لازم تنتبه على هي النقطة لانه ممكن تكتب Query وتفكر حالك جبت البيانات بس فعلياً لسا ولا Query تنفذت

إذا كرّرت الوصول لنفس الـ Query بدون ما تخزنها،كل مرة رح يعمل Query جديدة ويضربلك الأداء!

فنصيحتي الك:
استعمل select_related أو prefetch_related من الأول
تابع عدد الاستعلامات بأدوات مثل Django Debug Toolbar
13👍1
انا مو ضد الـ Agile بس انا اكيد ضد الـ Over-Agile

شو بقصد بهالكلام؟؟

من التجربة العملية صار واضح انه الـ Over-Agile و تحويل كل خطوة لـ Ticket على Jira و اجتماع و الخ الخ في أذى واضح للابداع و لجدية العمل و بيبطئ من الشغل بدل ما يسرعه و يوضحه

لما يصير التركيز على الـ planning poker وstory points وburndown charts أكتر من الـ product نفسه
لما تنصرف ساعات من وقت المبرمجين على Doc ومتابعة بدل ما تكون على بناء حلول حقيقية

هون بيصير Agile هو عائق و ليس حل.

بس بنفس الوقت ما منقدر نشتغل بفوضى ولا نلغي أهمية التوثيق بالشغل ولا نخلي التواصل عشوائي.

الفرق الناجحة بتعرف تلاقي التوازن:

بتستخدم Scrum و Agile rituals لما بيكون إلها معنى.
وبتعرف توقف لما تتحول لـ meta-work بيستهلك الطاقات بدون ناتج فعلي.


الرسالة اللي بدي قولها ليس انه لا تستخدموا Agile بل خلونا نشتغل فيها بشكل صحيح

عجبتك المعلومة و استفدت منها؟؟
لا تنسى تشاركها و تتفاعل معها 🔥

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

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
8👍3💯2
الـ v6e-1 TPU (Trillium)!

أقوى accelerator للـ deep learning
أسرع من كل الإصدارات اللي قبله، وبيجي بـ 32GB من الذاكرة السريعة (يعني ضعف v5e-1)
وقوته بتوصل لـ 918 BF16 TFLOPS (يعني تقريباً 3 مرات أقوى من A100!)

إذا كنت عم تشتغل بـ JAX أو Flax، جربه وشوف الفرق بنفسك
فيك تجربه من الـ notebook
4👍1
أوامر الـ SQL الأساسية
12🔥2
هالأيام عم نشوف طلب جديد عم يكون ضمن اعلانات التوظيف اسمه RabbitMQ و خليني اشرحلكم عنه شوي

الـ RabbitMQ هو Message Broker يعني وسيلة بين طرفين ليمرروا رسائل بين بعض بشكل منفصل وآمن ومرن.

ليش منستخدمه؟
تخيل عندك تطبيق فيه:

خدمة بتستقبل طلبات من الزباين (Orders Service)
وخدمة تانية بتعالج الدفع (Payment Service)

بدل ما يخاطبوا بعض مباشرة، كل وحدة منهن بتحكي مع RabbitMQ، وهو بيقوم بدور "ساعي البريد" يلي بيوصل الرسائل بالطريقة الصح.

كيف بيشتغل؟

1️⃣ الـ Producer (المرسل): هو الجزء يلي بيبعت الرسالة (مثل order جديد).
2️⃣ الـ Queue (طابور): الرسائل بتنحط مؤقتًا بطابور.
3️⃣ الـ Consumer (المستقبل): بياخد الرسائل من الـ Queue وبيعالجها.

وكل شي بيصير بشكل Asynchronous، يعني الخدمات ما بتستنى بعض!

شو بفيدني؟

بعزل الخدمات عن بعضها (Decoupling)
بحسن الأداء وقت الضغط العالي (High Load)
بسمح بتنفيذ المهام بالخلفية (Background Tasks)
بمنع ضياع الرسائل إذا السيرفر تعطل (Reliable Messaging)

مثال عملي:
لما المستخدم يطلب منتج من تطبيقك:

الطلب بينبعت على شكل رسالة لـ RabbitMQ.
الخدمة يلي بتعالج الطلب بتسحب الرسالة وقت بتفضى.
وهيك ما بيصير ضغط على النظام حتى لو إجا آلاف الطلبات بنفس الوقت.

RabbitMQ هو برنامج مستقل (service) بينزل عالسيرفر، متل PM2 أو MySQL أو Redis، بس بيشتغل كـ Message Broker.
يعني ما إلو علاقة مباشرة بالفرونت إند… هو أكتر شي بيكون بين خدمات الباك إند.

طبعاً هاد شرح بسيط عنه بهدف تسليط الضوء عليه للاشخاص اللي حابة تتعلمه او تعرف انه في هيك شي موجود

عجبتك المعلومة و استفدت منها؟؟
لا تنسى تشاركها و تتفاعل معها 🔥

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

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
8👍2🔥1
إعلان توظيف – Laravel Developer
تعلن شركة جينيوس جروب عن حاجتها لتوظيف Laravel Developer بدوام كامل (Full-time)، للعمل حصراً من مقر الشركة.
لا تتوفر إمكانية العمل عن بُعد (Remotely).
المتطلبات الأساسية:
خبرة جيدة في تطوير تطبيقات الويب باستخدام Laravel
فهم جيد لهياكل قواعد البيانات (MySQL)
إلمام بـ RESTful APIs وواجهات JSON
مهارات جيدة في كتابة الكود النظيف والموثق
القدرة على العمل ضمن فريق وتحمل المسؤولية
الانضباط والالتزام بالمواعيد والمهام
الأفضلية لمن لديه خبرة في React.js
تفاصيل الوظيفة:
المسمى الوظيفي: Laravel Developer
نوع العمل: دوام كامل (Full-time)
مكان العمل: مقر شركة جينيوس جروب
آخر موعد للتقديم: سيتم التواصل مع المؤهلين فقط
طريقة التقديم:
يرجى إرسال السيرة الذاتية إلى عنوان البريد الإلكتروني التالي:
info@geniusgroup-co.com
ملاحظة هامة:
يُرجى كتابة كود الوظيفة التالي في عنوان الرسالة (Subject):
Laravel25
لن يتم النظر في الطلبات التي لا تتضمن هذا الكود.
👍1
اول 1000 مشترك صار هدف قريب كتير

بدعمكم للقناة قادرين نوصله باسرع وقت

و نشالله بعد ضغط الامتحانات في عودة قوية على القناة
12🔥1
هل سنرى MCP in Laravel ؟
4
سلسلة منشورات #DevOps

شو هو الـ Kubernetes باختصار شديد ؟

إذا عندك تطبيق معمول بـ containers، وبدك تشغّله على أكتر من سيرفر بسهولة،
فـ Kubernetes (أو k8s) هو الأداة اللي بتساعدك تنظم وتشغّل كل هالشي.

هو متل "مدير السيرفرات"، بيشغل الـ containers، بيراقبهم، وبيرجّع أي شي بيوقع.

انتظرونا في منشورات قادمة 🔥


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

Linkedin |Instgram | YouTube

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

شو يعني Pod؟

الـ Pod هو أصغر شي بيشغله Kubernetes.
هو متل "علبة" جواها container أو أكتر.
وكل شي جوا نفس الـ Pod بيشتغل سوا وبيشارك نفس المكان.

انتظرونا في منشورات قادمة 🔥


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

Linkedin |Instgram | YouTube

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

الـ Node و Cluster؟
🔹 Node = السيرفر (فعلي أو على cloud).
🔹 Cluster = مجموعة سيرفرات عم تشتغل مع بعض تحت إدارة Kubernetes.

يعني الكلاستر هو دماغ النظام تبعك والنودات هنن العضلات



انتظرونا في منشورات قادمة 🔥


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

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
5👍2
Learn Linux before Learning Cloud
Learn Linux before Learning Docker
Learn Linux before Learning Kubernetes
Learn Linux before Learning Terraform
Learn Linux before Learning Git
Learn Linux before Learning Computer Network
Learn Linux before Learning programming
6👍4
هل فعلاً Git هو وحيد من نوعه ولا في غيره؟

نحنا كمبرمجين صرنا حافظين Git بصم وبالعادة ما منسأل:
"طيب، شو كان قبل Git؟ وهل في شي غيره اليوم ممكن نستخدمو؟"

بالحقيقة في أكتر من نظام Version Control غير Git، وكانو مستخدمين بمشاريع ضخمة، وهي كم مثال:

📌 SVN (Subversion)
كان هو المسيطر قبل Git، ولسا في شركات عم تستخدمو لحد اليوم، متل شركات حكومية أو مؤسسات كبيرة بتحب النموذج المركزي.
مثلاً: شركة Apache بتستخدم SVN للـ source code تبع بعض المشاريع.

📌 Mercurial (hg)
كان محبوب من كتير مطورين بسبب بساطتو، وBitbucket كانت تعتمد عليه قبل ما تتحول بالكامل لـ Git.
وحتى مشروع Mozilla Firefox كان يستخدم Mercurial!

📌 Perforce (Helix Core)
هدا النظام بيستخدموه كتير باستوديوهات الألعاب، متل Ubisoft و Epic Games، لأنو بيتعامل منيح مع ملفات ضخمة (3D, فيديو, الخ...).

📌 Bazaar، Fossil
هذول أقل شهرة، بس إلهم جمهور صغير. مثلاً Fossil بيستخدمو مطور SQLite لأنو بيجي معاه Wiki و bug tracker built-in.

خلاصة القصة؟
Git هو الأشهر، بس مو الوحيد.

في حدا منكن اشتغل قبل بـ SVN أو Mercurial؟
ولا كلنا بلشنا على Git وخلص؟

عجبتك المعلومة و استفدت منها؟؟
لا تنسى تشاركها و تتفاعل معها 🔥

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

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
8
| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|
|Don'tPushToProductionOnFriday|
|________________|
\ (•◡•) /
\ /
——
| |
|_ |_
👍11👾1
فيديوهات تستحق وقتك!

من دروس تقنية عملية، إلى حلقات بودكاست غنية بالنقاشات... كل شيء صار جاهز على قناتي في يوتيوب!👇

🔹 اختبر الـ APIs باحتراف باستخدام Postman
https://youtu.be/5S_NYaHFpGk

🔹 راقب تغييرات الكود مع DevTools باحتراف
https://youtu.be/Di7zJTdVcEU

🔹 طريقة تثبيت WordPress على cPanel خطوة بخطوة
https://youtu.be/LJ3dO2hYkxo

🔹 كيف غيّرت OpenAI قواعد اللعبة عبر Chat.com؟
https://youtu.be/VTngsh_SGVU

سلسلة Laravel للمطورين المحترفين:
🔸 تعلم الـ Validation باحتراف: https://youtu.be/waslz6jcGKs
🔸 أسرار Cron Jobs في Laravel: https://youtu.be/M6PEvSIAdBE
🔸 دعم تعدد اللغات بدون باكجات: https://youtu.be/-SwibEJ0tWg

🛡 أمن المعلومات - Cyber Security:
🔸 خطورة أسماء الملفات: https://youtu.be/TivSFthbjOM
🔸 رفع الملفات بأمان في Laravel: https://youtu.be/xtw_1p3sQhs
🔸 حماية المواقع الصغيرة: https://youtu.be/_ZaPm6S_QYA

🎙 بودكاست With Somar - نقاشات تقنية معمّقة:
1️⃣ تحليل النظم مع سارة قطف: https://youtu.be/iaMCgJegdn8
2️⃣ رحلة في الذكاء الاصطناعي - أشرف قاسم: https://youtu.be/glHdkn_QWlY
3️⃣ حلول برمجية لملايين المستخدمين - أنس الطرزي: https://youtu.be/dS2a62OqV-k
4️⃣ التحول الرقمي و Salesforce - ألكساندر الرهب: https://youtu.be/bTGhwthdWsk
5️⃣ الأمن السيبراني - علي سلمان: https://youtu.be/2iCI4iz9HFQ
6️⃣ الـ WordPress بعيون مختلفة - عبد اللطيف المهيوب: https://youtu.be/HmbK3rux3uo
7️⃣ ريادة الأعمال والمنهجيات الحديثة - رازق داؤد: https://youtu.be/jkgkfKBxjsQ

📌 اشترك بالقناة وفعل الجرس ليصلك كل جديد!

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

Linkedin |Instgram | YouTube

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

كما جرت العادة نستقبل اسئلتكم على الـ store في Instagram من خلال الرابط: هنا
4
المصيبة اللي لحد الان عم تتكرر
عم نشوف لهلا login Route عم يكون بدون Rate Limiting؟

يعني أي حدا بيقدر يجرب سكربت brute-force و لحق على مشاكل

الحل:
فعل 2FA/ MFA
حط CAPTCHA بعد عدد محاولات فاشلة
فرض كلمات سر قوية
و أكيد تفعيل الـ Rate Limiting

عجبتك المعلومة و استفدت منها؟؟
لا تنسى تشاركها و تتفاعل معها 🔥

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

تابعني على YouTube

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

في واحد شاف الرسالة و ما اشترك راح نهاره بين ميتينغ و Bugs 😅

يتم الان العمل على الموسم الثاني من الـ Podcast بعنوان Code Beyond Borders 🙏🏻
6👍3😎3🔥1
لا تفضح حالك برسائل الخطأ!

تخيل تفتح صفحة وبدل ما تطلعلك "حدث خطأ"، بيطلعلك:
SQL syntax error on line 57

هي هدية للهاكرز ليعرفوا شو نوع قاعدة البيانات أو هيكلية التطبيق.

نصيحة:

لا تعرض stack trace أبداً بالبيئة الحية
سجل الأخطاء داخلياً
طفي debug mode وقت الـ Production

عجبتك المعلومة و استفدت منها؟؟
لا تنسى تشاركها و تتفاعل معها 🔥

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

تابعني على YouTube

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