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

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

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

🌟 ناشط في مجتمع برمجة الأطفال، ومساهم في تطوير المحتوى التقني عربياً.
Download Telegram
هذه ليست المرة الأولى؛ فقد شهدنا خلال الأشهر الماضية هجمات مشابهة استهدفت مكتبات مثل eslint-config-prettier وغيرها من مكتبات JavaScript واسعة الاستخدام.

يفضل أن:
- تتحقق من package-lock.json.
- تحديث الحزم المتأثرة.
- مراقبة أي نشاط غير طبيعي في المشاريع التي اعتمدت على الإصدارات الخبيثة.
5
المكتبات المصابة (تنزيلات أسبوعية):

backslash (0.26M)

chalk-template (3.9M)

supports-hyperlinks (19.2M)

has-ansi (12.1M)

simple-swizzle (26.26M)

color-string (27.48M)

error-ex (47.17M)

color-name (191.71M)

is-arrayish (73.8M)

slice-ansi (59.8M)

color-convert (193.5M)

wrap-ansi (197.99M)

ansi-regex (243.64M)

supports-color (287.1M)

strip-ansi (261.17M)

chalk (299.99M)

debug (357.6M)

ansi-styles (371.41M)
2
أعلنت Cloudflare عبر فريق أبحاث الأمان عن تحقيقها في اختراق استهدف حزم npm يديرها المطور ~qix.
بعد المراجعة، أكدت الشركة أنه لا يوجد أي أثر سلبي على عملاء خدمة Page Shield حتى الآن.

🔒 شو هيي Page Shield؟
هي خدمة من Cloudflare بتحمي مواقع الشركات وزوارها من هجمات JavaScript supply chain (مثل حقن سكربتات خبيثة لسرقة بطاقات الدفع أو كلمات المرور). الخدمة بتراقب السكربتات اللي تشتغل على صفحات الموقع وبتكشف أي تغيير مشبوه.

⚡️ الخطوة الجديدة:
Cloudflare نشرت آلية كشف إضافية لتصنيف أي محاولات مستقبلية مشابهة على أنها Malware، وبالتالي تعزيز الحماية لعملائها.
3
2. Anti-Pattern #2: The Empty Catch

المشكلة:
تعمل catch وما تكتب شي!
النتيجة: بيانات تالفة + “ghost” failures بلا أي أثر.

الحل:
يا بتفشل بسرعة (throw) يا بتتعامل معها بشكل منطقي (مثلاً deactivate بدل delete إذا في FK violation).

———————————-

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
👌2
Anti-Pattern #3: Log & Forget

المشكلة:
Log::error("Order failed") … بدون أي تفاصيل.
النتيجة: لوجات عديمة الفائدة.

الحل:
سجّل السياق: order_id، user_id، payload … وحتى stack trace (بالdevelopment).

———————————-

Linkedin |Instgram | YouTube

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

أعلنت شركة Proton (خدمة البريد الإلكتروني والـVPN الآمن) أنها عطلت مجموعة من الحسابات بعد أن تلقت إنذاراً من فريق الاستجابة لطوارئ الحاسوب (CERT) حول إساءة استخدامها من قبل قراصنة، في خرقٍ لشروط الخدمة.

بروتون أوضحت أن فريقها بدأ بمراجعة هذه الحالات بشكل فردي لتحديد الحسابات التي يمكن استعادتها لمستخدميها الشرعيين.

على ما يبدو الشركة عم تحاول توازن ما بين الأمن و حقوق المستخدمين
1
Anti-Pattern #4: Transaction Abuse

المشكلة:
تجمع كل العملية (DB + إيميل + side effects) داخل transaction.
النتيجة: locks طويلة + rollback بعد إرسال إيميل + مشاكل performance.

الحل:
خلي الـtransaction خاص بالداتا فقط، والـside-effects (مثل الإيميل) خليها برّا.

———————————-

Linkedin |Instgram | YouTube

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

يشاركنا تجربته و الـ Flow تبع العمل و الشروط و غيره.

و شكراً لكم
👍7
تحياتي للجميع
تمنياتي لكم بأسبوع عمل موفق و بدون meetings او Bugs
موجود للإجابة عن اسئلتكم عبر instgram من خلال الرابط: هنا
🔥61🙏1
Anti-Pattern #5: Controller Try/Catch Bloat

المشكلة:
كل Controller فيه try/catch مكرر.
النتيجة: فوضى + استجابات HTTP مختلفة.

الحل:
مركّز الـerror handling بـapp/Exceptions/Handler.php وخلي الـcontrollers نظيفة.

———————————-

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
4
مو كل كود يعني منتج. (وجهة نظري الشخصية)
بعد تريند الـAI وخاصةً ChatGPT صار كتير سهل تكتب كود و تطالع Demo بسرعة. بس المنتج اللي بيعيش وبيكبر هو أكبر بكتير من أسطر الكود هو طريقة تفكير كاملة.
خليني أشرحلك وجهة نظري:
التفاصيل من خلال الرابط: هنا
6👍2
بتحديث Laravel تحديداً الإصدار Laravel 12.8 نزلت معها ميزة الـ Automatic Eager Loading

كانت المشكلة انه لما تستدعي علاقة (مثلاً posts->comments) بشكل متكرر، Laravel كان يعمل استعلام جديد كل مرة → هاد اللي اسمه N+1 Query Problem.

الحل كان دائماً انه نتذكر نضيف :
Post::with('comments')->get();


وإذا نسيت؟ الاستعلامات بتنفجر وبيصير عندك بطء كبير.
و لكن من 12.8، Laravel صار يراقب استدعاءات العلاقات. إذا لاحظ إنها عم تتكرر، بيعمل Eager Loading تلقائي بدون ما تضيف with().

تفاصيل اكتر من هنا: الرابط

———————————-

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
22
الصديق علي سلمان رح يكون معكم بورشة مميزة جداً و هي تفاصيلها:
وصلت لآخر سنة جامعة ولسا ما بتعرف تخصصك؟
خليك معنا مشان تعرف شو هو المجال اللي بدك تبني فيه مستقبلك من الـ 7 هدول:
1. مُبرمج؟ اللي بيبني التطبيقات والمواقع.
2. خبير أمن معلومات واختراق؟ اللي بيسكر الثغرات قبل ما حدا يدخل منها.
3. خبير ذكاء اصطناعي؟ اللي بيعمل للآلة عقل.
4. مهندس شبكات؟ الوسيط اللي خلاّك تتصل بصحابك على whatsapp.
5. مصمم تجربة مستخدم ساحر UI/UIX اللي خلاك تحب تستخدم Instagram.
6. مدير مشاريع؟ المسؤول عن فريق المبرمجين.

محتار؟ تعال عالورشة مشان:
- تفهم كل مجال ببساطة.
- تعرف شو اللي بيشتغلوه الناس فيه بالضبط.
- تحدد شو الأنسب لشخصيتك.
والورشة رح تغير منظورك كلو
للتسجيل فيك تبعت على بريد الصفحة او على رقم واتساب +963941313234
تاريخ الورشة: الخميس والجمعة 18 - 17 ايلول
مدة الورشة يوم واحد 3 ساعات
العدد الأقصى للحضور 20 شخص
مكان الورشة: مركز 360 business mentors - الزراعة دخلة الحمصاني 20م على اليمين
سعر الحضور 50000 بتندفع على باب المركز
6😱1
مين انتبه انه صاير في تغييرات بصفحات الخطأ (Error Page) اللي بـ Laravel:
1- بالنسخة Laravel 12.25 صار في خيار النسخ كـ MarkDown كرمال تقدر تتواصل صح مع الـ ai و يكون عنده معلومات عن الخطأ
2- بالنسخة 12.29 صار في تصميم جداد أبسط و أجمل

شو رأيك بهي التعديلات؟ ولا بتفضل التعديلات اللي على مستوى آخر؟

———————————-

Linkedin |Instgram | YouTube

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

رح مون معكم حاوب على اسئلتكم من خلال الرابط:

https://www.instagram.com/stories/code.with.somar/3725063027340091634?utm_source=ig_story_item_share&igsh=MW5uZGJhaDkzOGxicA==
1
كتير مرات منشتغل بمشروع Laravel وبيصير معنا bug غريب لما نتعامل مع APIs خارجية:
📍الـ request بيوصل ناقص؟
📍في headers ما عم تنبعت؟
📍أو الـ payload عم يطلع بطريقة غريبة؟

و لحل هي المشكلة قرأت من فترة عن بكج اسمها Laravel Spy فكرتها ظريفة بتعملك log لأي outgoing HTTP request من مشروعك يعني أي طلب بتبعتو عبر Laravel HTTP client.

ميزاتها:
📌 رح تعطيك كل التفاصيل: URL, method, headers, payload وحتى response.
📌 بيشتغل من أول ما تنزلو (zero-config).
📌 بتقدر تعمل exclude لبعض الـ URLs.
📌 بيخفي الحقول الحساسة (obfuscate).
📌 فيك تنظّف اللوجات عالـ production باستخدام php artisan spy:clean.

ممكن تستخدمها إذا:
📌 بدك تعمل debug لطلبات API وتفهم شو عم ينرسل فعلياً
📌 بدك تعمل monitoring داخلي وتشوف شو عم يطلع من المشروع
📌 بحالات الintegration مع خدمات خارجية (مثلاً: بوابة دفع، خدمة شحن، أو أي third-party API) وما عم تفهم وين المشكلة.

بيشتغل مع Laravel 10 وفوق، وبيوفرلك راحة و وقت لما تحاول تكتشف مشاكل خارجية مو واضحة.

خطر ببالك شي مشروع رح تجربها فيه؟ خبرني تجربتك عنها بالتعليقات.

———————————-

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
15👍1
أول ما بيخطرلنا نعمل Role & Permission Management بـ Laravel عم نروح باتجاه spatie/laravel-permission و اللي هيي بكج رائعة جداً و انا من المستخدمين الها و لكن هالاسبوع قرأت مقال عن بكج جديدة اسمها Porter عم تقدم حل بديل خفيف نظيف لـ Spatie بهاد الموضوع و الفكرة تبعها انه عم تقدم نفس الفكرة و لكن بطريقة ابسط و اخف

ليش ممكن تعطي Porter فرصة؟

خفة وأداء: بيعمل أقل تداخل مع قاعدة البيانات + built-in caching ➝ أسرع بكتير.
Minimal Architecture: 3 مكونات أساسية بس بدل الكود المعقد.
Business Logic First: بيعتبر الـ roles جزء من الـ business logic مو جداول مجردة.
سهولة بالتوسيع: كل role class مستقل وواضح.
تكامل كامل مع Laravel (Blade directives, Middleware, Gates, Policies).

باختصار: إذا Spatie مناسب أكتر للمشاريع الكبيرة اللي بدها layers واضحة، Porter ممكن يكون خيار ممتاز للمشاريع اللي بدها simplicity + performance بنفس الوقت.

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

و انت ممكن تجربها و تعطينا رأيك بالتعليقات.

———————————-

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
10
سابقاً بـ PHP 8.4 وتحت إذا صار Fatal Error كنت تشوف بس رسالة عامة مثل:
Fatal error: Cannot declare class...

وتضل محتار: مين استدعى هاد الملف؟ وليش صار الخطأ؟

لكن بالـ PHP 8.5 إنو صار في fatal_error_backtraces يعني لما يوقع الخطأ تلقائياً بيطلعلك stack trace كامل يوضح التسلسل: أي ملف نادَى التاني، وأي method وصلتك للمشكلة.

يعني لو أخدنا مثال بـ Laravel:
📍 لو autoload جاب class مكرر من service أو package ➝ رح تشوف المسار كامل بدل ما تضيع وقتك.
📍 الـ debugging لمشاريع كبيرة (مع Octane أو Horizon) بصير أسرع وأوضح.
📍 بتفهم الـ context تبع الخطأ فوراً بدل ما تشوف سطر غامض وتدوّر بالسورس كله.

———————————-

Linkedin |Instgram | YouTube

أنا Somar Kesen أعمل كـ Full Stack Developer أنشر بشكل شبه يومي منشورات تحتوي على العديد من المعلومات عن تطوير البرمجيات و سوق العمل مستخلصة من خبرة سنين في العمل مع العديد من الشركات في الشرق الأوسط و أوروبا ضمن هذا المجال
8
Which of the following is NOT a magic method in PHP?
Anonymous Quiz
8%
__construct
35%
__callStatic
42%
__start
14%
__invoke