Mohcin Bounouara's Space
534 subscribers
104 photos
22 videos
8 files
184 links
{فَأَمَّا الزَّبَدُ فَيَذْهَبُ جُفَاءً ۖ وَأَمَّا مَا يَنفَعُ النَّاسَ فَيَمْكُثُ فِي الْأَرْضِ} [الرعد: 17]

خواطر في الدين و الدنيا و هندسة البرمجيات في محاولة لإصلاح نفسي ولعلني اجعل لنفسي أثرا في إصلاح الاخرين.. على قلتهم، لعلنا نلقى الله بهذا.
Download Telegram
كنتُ بحاجة إلى بناء حقلٍ مضادٍّ للروبوت (Anti-robot) في موقعي الشخصي،، الموقع مبنيٌّ باستخدام woordpress مع theme مخصّص قمتُ بتطويره بنفسي.

أول ما قد يخطر في البال، وقد فكّرتُ فيه أيضًا.. هو استخدام plugin تضيف حقلًا إلى نموذج ال comments form، بحيث يُطلب من المستخدم إدخال نصٍّ معيّن، أو استخدام Google reCAPTCHA.

لكنني لا أرغب في الاعتماد على عدد كبير من الإضافات،، وهذا لا يعني أن استخدام الإضافات أمرٌ سيئ، لكن في كثير من الأحيان يمكن بناء حلٍّ بسيط دون الحاجة إلى إثقال الموقع بعدد كبير من الإضافات.

لذلك قمتُ بإضافة حقلٍ جديد إلى نموذج التعليقات، مع إمكانية إدخال حروفٍ وأرقام، ثم التحقق منها باستخدام ال global wordpress session بعد إرسال ال form. فإذا كانت القيم متطابقة، يُضاف التعليق، وإذا لم تكن كذلك، تظهر رسالة خطأ.

في الواقع، تعتمد هذه الفكرة على function بسيطة التي في الصورة، ومع ذلك فهي فعّالة فكثيرٌ من الحلول يمكن تنفيذها بقليلٍ من الكود.

والله أعلى و أعلم.
لأكون صريحا، المجتمع البرمجي الغربي، يتفاعل و يناقش و ينشر ما يتعلمه في البرمجيات، نحن اقل من ذلك، و لا اتكلم بدافع نقص او مركب اعجاب بالغرب..

من بتعلم شيئا عندنا يتركه لنفسه، ونحن اولى بالنشر.. لدواعي دينية اولا.

سواءا باثمنة رمزية او بالمجان..

لكن الله غالب، اللهم انا نسألك الصلاح و الإصلاح.
❤4
ابحث عن اراء و تقيمات صادقة و بناءة في ما انشره، بطريقة دورية؛

- هنا على تيليگرام،

- هنا على فيسبوك: https://www.facebook.com/share/1EW3dXpzzH/

- هنا على يوتيوب: https://youtube.com/@mohcinbounouara_coding?si=nzFak51408qsll_w

- هنا على لينكدإن: https://www.linkedin.com/in/mohcin-bounouara-31697b69?utm_source=share_via&utm_content=profile&utm_medium=member_android

أكون شاكرا لأي شخص يمنحني قليلا من وقته لإعطاء feedback بنائة، أسال الله التوفيق لي ولكم.
❤1
التاريخ ليس مجرد ماضٍ ندرسه، بل هو أداة "إن صح التعبير" لفهم الحاضر وبناء المستقبل.

وينطبق هذا المفهوم أيضًا على تطوير البرمجيات.

فمعرفة تاريخ تنفيذٍ معيّن تضيف قيمة للكود، لأنها تمنحك السياق؛ لماذا تم بناء هذا الحل بهذه الطريقة؟ ما هي القيود في ذلك الوقت؟ ما هي المدة الزمنية المتاحة؟ وما مستوى خبرة المطوّر آنذاك؟..

عندما تفهم هذه الأمور، تتوقف عن الحكم السريع على الكود… وتبدأ في فهمه لهدف جعله أفضل.

لهذا أحرص على كتابة التعليقات داخل الكود، وبكثافة مؤخرا.

أفعل ذلك لسببين:

- لنفسي في المستقبل، حتى أتذكر لماذا اتخذت هذه القرارات.
- ولغيري، لتسهيل العمل الجماعي وتقليل الغموض.

قد لا تكون التعليقات مثالية، وقد لا يكون التنفيذ الأفضل دائمًا.. لكن لا بأس بذلك.

تدوين الأفكار يحفظ الهدف والمعنى وراء الكود.

ومع الوقت، هذه العادة لا تُحسّن الشيفرة فقط… بل تُحسّنك أنت كمطوّر.

والله أعلى و أعلم.
❤3
بعد إستخدامي لل ai في عملي لأكثر من عام، الفترة أدركت شيئًا مهمًا؛ لا توجد طريقة واحدة "صحيحة" لاستخدامه.. فالسياق هو ما يحدد ذلك.

في العمل، أعتمد على ال ai بشكل كبير لتسريع الإنجاز، لكنني لا أقوم بعمل accept للكود كما هو، بل أُكيّفه بما يتناسب مع بنية المشروع، ومعايير الفريق، وفهمي الخاص.. وبعدها أيضا review process صارم.

أما في التعلّم، فأفعل العكس تمامًا.
أحاول بنفسي أولًا، أُخطئ وأُعيد المحاولة مرات عديدة دون استخدام ال ai ، ثم أعود إليه لاحقًا للمقارنة، والتحسين، واكتشاف طرق أفضل... ولا أعتمد على النماذج المدفوعة في التعلم و الإستكشاف.

المهارة الحقيقية ليست في "استخدام ال ai" بل في معرفة متى تستخدمه، ومتى لا.

هذا التوازن ضروري.

#البرمجة #تطوير_البرمجيات #الذكاء_الاصطناعي
❤3
Forwarded from Zoar4
السلام عليكم ورحمة الله، أخي محسن. قمت بتجربة الإضافة التي أصدرتها، على متصفح Firefox فقط "لا أستخدم متصفح كروم Chrome"، لذلك تجربتي هذه خاصة بفايرفوكس فقط.
الإضافة تعمل بصورة ممتازة، وبسيطة وواضحة في تعليمات الإستخدام.
زرين فقط للاختيار بين إخفاء التعليقات، واخفاء التعليقات أثناء البثوث. ويمكن تعطيل عملها تماماً حسب الاختيار.
عند تنصيبها أول مرة، تقوم بتنبيه المستخدم عن الصلاحيات التي تستخدمها، كما أعجبتني الشفافية فيما يتعلق بجمع المعلومات من المستخدم.
بالاجمال الإضافة تعمل حسب المتوقع منها، ولم تظهر لي أخطاء أو مشاكل أثناء الإستخدام.

بارك الله فيك أخي الكريم ونفع بعلمك.
❤2
تعلم أساسيات ال SQL، إنها ضرورة.. و لا تحتاج وقتا طويلا.. خصوصا مع ال AI.
👍2
من أنفع ما قرأت منذ مدة..
❤7
خمس صفحات في اليوم من كتاب تقني (في هندسة البرمجيات عموما، أو في ال stack الذي تريد أن تتعمق فيه) قد تغير طريقة تفكيرك للأفضل.

جربها.

و دعواتكم لنا.
❤6
Starting to explore new things... one step at a time, at my own pace.

Alhamdulillah, I successfully completed the AWS S3 Basics certificate.

#software #softwaredevelopment #backend #cloud

https://coursera.org/share/9614a376d2805789126ff32ca27da097
❤3👍2🔥1
في رأيي، لا تكمن الفائدة الأكبر للذكاء الاصطناعي في تسريع عملية التطوير فقط.

بل في تمكين الراغبين في تطوير مهاراتهم والارتقاء إلى مستوى مهندسين ذوي خبرة عالية بوتيرة أسرع..

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

#AI #SoftwareEngineering
❤2
رحمه الله.
كمهندس برمجيات دورك أكبر من كتابة الكود.. هذا كان أصلا جزءا صغيرا من دورة حياة البرمجيات..
❤3
إن فهم أساسيات ال SQL، ولغة خلفية مثل PHP/Laravel، وJavaScript، إضافة الى إستخدام ال AI، يمكن أن يجعلك أفضل بكثير كمهندس برمجيات..
❤4
في Laravel يمكنك تمرير أكثر من value داخل "with()" عند ال redirect، وليس فقط message واحد..

مثال:

return redirect()
->back()
->with([
'success' => false,
'reason' => 'admin'
]);

هذا مفيد عندما تريد التعامل مع حالات مختلفة داخل ال Blade مثلا:

@if(session('reason') === 'admin')
You can't delete an admin user!
@endif

بدل إنشاء session key لكل حالة، يمكنك تنظيم ال state بشكل أنظف وأسهل للقراءة.

#Laravel #PHP
صراحة انا محتار من نوعية المواضيع التي أريد التركيز علبها سواءا هنا، على لينكدإن أو فيسبوك..

فمن يتابع ما انشر على هاته المنصات أو بعضها، لو استطعتم اعطاء آرائكم سأكون شاكرا.

نغعنا الله و إياكم.
❤2
كنتُ أعرف الكثير من المفاهيم نظريًا.

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

ما يرسّخ المعلومات حقًا في مجال البرمجيات هو بناء مشاريع حقيقية.

قد ننسى ال syntax، وقد ننسى الخطوات بالتفصيل.

لكننا لا ننسى تجربة خوض هذه العملية، ومواجهة المشكلة، والبحث عن الحل الأمثل، والمحاولة، والفشل، والتصحيح، والنجاح....

تبقى هذه العملية راسخة في الذاكرة.

لأن إيجاد ال syntax أو الخطوات أصبح سهلًا الآن، مجرد بحث سريع أو استخدام LLMs.

لكن الفهم الحقيقي يأتي من البناء والتجربة والخطأ..

#learning #coding #BackendDevelopment
❤5