كمبرمجين ينبغي أن نهتم بفهم المفاهيم الأساسية للمجال، بغض النظر عما إذا كان ال ai سيتولى تفاصيل التنفيذ أم لا..
قد يكتب ال ai الكود نيابة عنا، لكن هذا لا يلغي حاجتنا إلى فهم ما نبنيه، ولماذا نبنيه أصلا، وما الذي يمكن أن يحدث بشكل خاطئ، و ما يجب أن نصححه، و ننقحه.
وهذا لا يتوقف عندما تصبح senior developer.. الامر مستمر.
ما زالت مراجعة معارفنا، والعودة إلى الأساسيات، والاستمرار في التعلم، ضرورة. إضافة الى تنميتها.
قد يكتب ال ai الكود نيابة عنا، لكن هذا لا يلغي حاجتنا إلى فهم ما نبنيه، ولماذا نبنيه أصلا، وما الذي يمكن أن يحدث بشكل خاطئ، و ما يجب أن نصححه، و ننقحه.
وهذا لا يتوقف عندما تصبح senior developer.. الامر مستمر.
ما زالت مراجعة معارفنا، والعودة إلى الأساسيات، والاستمرار في التعلم، ضرورة. إضافة الى تنميتها.
❤1👍1
ال ai tools بأقواها، ك Claude Code مثلا لا تستطيع ان تخرج product مثالي end-to-end،، المطور لازال دوره مهم في ال SDLC لكن بكتابة كود أقل.
و هذا عن تجربة في بناء مشروع بإستخدام ال Agentic Development الأمر ممتع، لا أخفيكم، لكن دوري فيه كمطور ضرورة قصوى.
نصيحتي لنفسي و لكم، التعلم المستمر في المجال و استخدام الأدوات المتاحة من أدوات ال ai لانه لا هروب منها.
و الله أعلى و أعلم.
و هذا عن تجربة في بناء مشروع بإستخدام ال Agentic Development الأمر ممتع، لا أخفيكم، لكن دوري فيه كمطور ضرورة قصوى.
نصيحتي لنفسي و لكم، التعلم المستمر في المجال و استخدام الأدوات المتاحة من أدوات ال ai لانه لا هروب منها.
و الله أعلى و أعلم.
إحرص على ما ينفعك، و إستعن بالله، و تقبل أن تكون غير كامل.. ولن تخيب.. في كل أمور حياتك.
لله الأمر من قبل و من بعد.
لله الأمر من قبل و من بعد.
❤4
حول مسألة البرمجة، و التفكير البرمجي، كتابة الكود والتفكير و التعلم كمهندس برمجيات.
https://www.linkedin.com/posts/mohcin-bounouara-31697b69_software-softwaredevelopment-softwareengineering-activity-7507638490801770496-M_8R?utm_source=share&utm_medium=member_android&rcm=ACoAAA6PPwIBAQxRqfCnsX6egpCWC4PgEE1omkI
https://www.linkedin.com/posts/mohcin-bounouara-31697b69_software-softwaredevelopment-softwareengineering-activity-7507638490801770496-M_8R?utm_source=share&utm_medium=member_android&rcm=ACoAAA6PPwIBAQxRqfCnsX6egpCWC4PgEE1omkI
LinkedIn
Software Engineering Skills Over Coding Skills | Mohcin Bounouara posted on the topic | LinkedIn
I've always known that learning and thinking like a software engineer is more important than focusing only on coding, because coding is just a small part of the software development lifecycle.
But honestly, i got too focused on coding, i spent a lot of time…
But honestly, i got too focused on coding, i spent a lot of time…
تكلم بصراحة في عملك؛
- قمت بكذا، و تأخرت في كذا، بفعل كذا، و هكذا...
الرزاق هو الله، فإحوص على ما ينفعك و اطلب الله التوفيق والفتح.. غير هذا،، كلها مخاوف بعيدة عن وضع الله اولا، في مسألة الرزق هنا، و في مسائل أخرى.
وهذا كلام أذكر به نفسي اولا قبل غيري.
و الله ولي التوفيق.
- قمت بكذا، و تأخرت في كذا، بفعل كذا، و هكذا...
الرزاق هو الله، فإحوص على ما ينفعك و اطلب الله التوفيق والفتح.. غير هذا،، كلها مخاوف بعيدة عن وضع الله اولا، في مسألة الرزق هنا، و في مسائل أخرى.
وهذا كلام أذكر به نفسي اولا قبل غيري.
و الله ولي التوفيق.
❤3👍2
الحمد لله حمدا كثرا، و مابكم من نعمة فمن الله..
إستشعر هذه الآية في كل نجاح، في كل خطوة لم تسقط فيها..
و تذكرها ايضا في لحظات السقوط، فبدونها لن تكون هنالك لحظات نهوض..
هي مجاهدة، و كلها نعم من عند الخالق الجبار.
الحمد لله.
إستشعر هذه الآية في كل نجاح، في كل خطوة لم تسقط فيها..
و تذكرها ايضا في لحظات السقوط، فبدونها لن تكون هنالك لحظات نهوض..
هي مجاهدة، و كلها نعم من عند الخالق الجبار.
الحمد لله.
❤4
هذا منشور رائع لمهند البرمجيات المرموق هذا.. من أفضل المنشورات التي قرأتها على لينكدإن منذ مدة طويلة..
يُسلط الضوء على أمور قد لا تواجهها في بداية مسيرتك المهنية، وفهمها مبكرا قد يوفر عليك سنوات من الجهد.
فقط أريد أن أضيف شيئا مهما إلى النقطة الرئيسية التي ذكرها "وهي أهمية بناء عادات جيدة كمبرمج ومطور"،، لا تعتمد كثيرا على الشغف، دخلتُ هذا المجال بدافع الشغف، وعندما كان الشغف هو الدافع الرئيسي. بالنسبة لي، تعلمتُ أقل بكثير مما أتعلمه الآن بفضل الله عز وجل،، لقد تعلمتُ، وما زلتُ أتعلم، الكثير منذ أن بدأتُ في بناء عادات جيدة كمطور.. لا عندما كنت اتخدث و اتحرك بمفهوم الشغف.
يُسلط الضوء على أمور قد لا تواجهها في بداية مسيرتك المهنية، وفهمها مبكرا قد يوفر عليك سنوات من الجهد.
فقط أريد أن أضيف شيئا مهما إلى النقطة الرئيسية التي ذكرها "وهي أهمية بناء عادات جيدة كمبرمج ومطور"،، لا تعتمد كثيرا على الشغف، دخلتُ هذا المجال بدافع الشغف، وعندما كان الشغف هو الدافع الرئيسي. بالنسبة لي، تعلمتُ أقل بكثير مما أتعلمه الآن بفضل الله عز وجل،، لقد تعلمتُ، وما زلتُ أتعلم، الكثير منذ أن بدأتُ في بناء عادات جيدة كمطور.. لا عندما كنت اتخدث و اتحرك بمفهوم الشغف.
❤3🔥2😇1
اللحظات التي تشعر فيها أنك ضعيف تقنيا، أمام أناس آخرين.. هنا تعرف أنك يجب ان تستمر في التعلم "الفعال".
و هنا ربما أفضل الأوقات التي ستعلمك الكثير.
فاللهم علمنا و إنفعنا بما علمتنا.
و هنا ربما أفضل الأوقات التي ستعلمك الكثير.
فاللهم علمنا و إنفعنا بما علمتنا.
❤2🔥1
قمت بمراجعة بسيطة لطريقة عملي باستخدامي لل ai في عملي اليومي كمطور برمجيات.
وإذا أردت أن ألخّص أهم الأمور التي أريد أن أستمر عليها خلال السنوات الخمس القادمة، إن شاء الله، فستكون تقريبا كالتالي:
- سأستمر في استخدام ال ai بشكل كبير.
لأنه ببساطة ممتع ومفيد جدا أثناء بناء البرمجيات، يجعلني أكثر حماسا إتجاه المجال، ولل building، ولتقديم أشياء ذات قيمة للمستخدمين، ال ai أداة قوية، ولا أريد أن أفوّت هذه المرحلة بإذن الله.
- سأستمر في طرح الأسئلة والتعلّم من الأشخاص الذين أثق بهم تقنيا.
زملاء أكثر خبرة، أصدقاء، instructors، أو أي شخص أثق بحكمه و تفكيره الهندسي،، أحيانًا تصل إلى طريق مسدود، ومن السهل جدًا أن تتبع ما يقترحه ال ai دون أن تفهم المشكلة أو الحل بشكل كامل، خبرة المطور هما ما زالت مهمة.. و إن لم. تكن لذيك يجب أن تبحث و تسأل و الا ستتبع ال ai دون فهم.
- سأحاول دائمًا مقاومة ال over-engineering في هندسة الحلول.
ال ai يمكن أن يكون وحشا في إنتاج حلول معقدة ومبالغ في تصميمها،، إبقاء الأمور بسيطة أصعب بكثير من جعلها معقدة،
Keep it simple, stupid, too stupid.
- سأحافظ على طريقة التعلّم القديمة في البرمجة وهندسة البرمجيات.
مهما كان مستواك أو عدد سنوات خبرتك، أريد أن أحافظ على 30 دقيقة يوميًا على الأقل للتفكير والتعلّم والممارسة دون أن يقوم ال ai بالتفكير أو التنفيذ نيابة عني، أُحلّل، أبحث في التوثيقات الرسمية، أكتب الكود، أُصحح الأخطاء، وأحاول الوصول إلى الحل بالطريقة القديمة..
ال ai يمكن أن يجعلنا أكثر إنتاجية بشكل مذهل، لكنني لا أريد أن تأتي هذه الإنتاجية على حساب همي للحلول.
فالهدف ليس الاختيار بين ال ai وطريقة التعلّم القديمة،، بل الإستمرار في أستخدم ال ai بكثافة، وفي الوقت نفسه أحافظ على قدرتي على التفكير والفهم وال building وتصحيح الأخطاء بدونه..
هذا هو التوازن الذي أريد أن أعمل عليه خلال السنوات القادمة، إن شاء الله.
ربما تكون هذه الأفكار مفيدة لشخص آخر أيضًا، لذلك قررت مشاركتها..
والله ولي التوفيق.
#coding #softwaredevelopment #AI #softwareengineering
وإذا أردت أن ألخّص أهم الأمور التي أريد أن أستمر عليها خلال السنوات الخمس القادمة، إن شاء الله، فستكون تقريبا كالتالي:
- سأستمر في استخدام ال ai بشكل كبير.
لأنه ببساطة ممتع ومفيد جدا أثناء بناء البرمجيات، يجعلني أكثر حماسا إتجاه المجال، ولل building، ولتقديم أشياء ذات قيمة للمستخدمين، ال ai أداة قوية، ولا أريد أن أفوّت هذه المرحلة بإذن الله.
- سأستمر في طرح الأسئلة والتعلّم من الأشخاص الذين أثق بهم تقنيا.
زملاء أكثر خبرة، أصدقاء، instructors، أو أي شخص أثق بحكمه و تفكيره الهندسي،، أحيانًا تصل إلى طريق مسدود، ومن السهل جدًا أن تتبع ما يقترحه ال ai دون أن تفهم المشكلة أو الحل بشكل كامل، خبرة المطور هما ما زالت مهمة.. و إن لم. تكن لذيك يجب أن تبحث و تسأل و الا ستتبع ال ai دون فهم.
- سأحاول دائمًا مقاومة ال over-engineering في هندسة الحلول.
ال ai يمكن أن يكون وحشا في إنتاج حلول معقدة ومبالغ في تصميمها،، إبقاء الأمور بسيطة أصعب بكثير من جعلها معقدة،
Keep it simple, stupid, too stupid.
- سأحافظ على طريقة التعلّم القديمة في البرمجة وهندسة البرمجيات.
مهما كان مستواك أو عدد سنوات خبرتك، أريد أن أحافظ على 30 دقيقة يوميًا على الأقل للتفكير والتعلّم والممارسة دون أن يقوم ال ai بالتفكير أو التنفيذ نيابة عني، أُحلّل، أبحث في التوثيقات الرسمية، أكتب الكود، أُصحح الأخطاء، وأحاول الوصول إلى الحل بالطريقة القديمة..
ال ai يمكن أن يجعلنا أكثر إنتاجية بشكل مذهل، لكنني لا أريد أن تأتي هذه الإنتاجية على حساب همي للحلول.
فالهدف ليس الاختيار بين ال ai وطريقة التعلّم القديمة،، بل الإستمرار في أستخدم ال ai بكثافة، وفي الوقت نفسه أحافظ على قدرتي على التفكير والفهم وال building وتصحيح الأخطاء بدونه..
هذا هو التوازن الذي أريد أن أعمل عليه خلال السنوات القادمة، إن شاء الله.
ربما تكون هذه الأفكار مفيدة لشخص آخر أيضًا، لذلك قررت مشاركتها..
والله ولي التوفيق.
#coding #softwaredevelopment #AI #softwareengineering
❤4🔥1👌1
لا تتعلق باي لغة برمجة أو إطار عمل، خصوصا مع ال ai.
إفهم التفكير الهندسي، و ال trade-offs و إبني الأشياء لكي تتعلم كثيرا من التفكير الهندسي و النقدي في بناء النظم.
و الله ولي التوفيق.
إفهم التفكير الهندسي، و ال trade-offs و إبني الأشياء لكي تتعلم كثيرا من التفكير الهندسي و النقدي في بناء النظم.
و الله ولي التوفيق.
❤2
👍1
ال ai لديه ما يسمى confirmation bias؛ أي أنه قد يساير الطرح أو المسار الذي توجهه إليه، لهذا ترى كثيرا من عبارات:
You are right!.
You're absolutely correct!.
وهذا لا يعني بالضرورة أن ما اقترحته صحيح فعلًا.
لهذا، في عصر ال ai، من المهم جدا أن ننمي المعرفة الحقيقية في الهندسة، البرمجة، وال System Design.
ليس الهدف أن تعرف كل تفاصيل ال implementation، فال ai يستطيع مساعدتك كثيرا فيها.
لكن يجب أن تكون لديك المعرفة الكافية لتسأل أسئلة من قبيل؛
هل هذا الحل صحيح؟
هل هناك حل أبسط؟
ما ال trade-offs هنا؟
ما الذي قد يفشل هنا؟
هل ال architecture مناسبة فعلًا؟
وهل ال ai يوافقني لأن الفكرة صحيحة، أم لأنه يتبع المسار الذي أعطيته له.. ؟
استخدام ال ia بكفاءة لا يعني أن نجعله يفكر بدلا عنا، بل أن نستخدمه كأداة قوية، مع الاحتفاظ بالقدرة على التفكير، التشكيك، والمراجعة.. وهذا جد صعبببب الان.
كلما أصبح ال ai أقوى، أصبحت حاجتنا إلى الفهم الحقيقي أهم، وليس العكس..
فالتعلم ضرورة قصوى الان.
#software #AI #SoftwareEngineering #programming
You are right!.
You're absolutely correct!.
وهذا لا يعني بالضرورة أن ما اقترحته صحيح فعلًا.
لهذا، في عصر ال ai، من المهم جدا أن ننمي المعرفة الحقيقية في الهندسة، البرمجة، وال System Design.
ليس الهدف أن تعرف كل تفاصيل ال implementation، فال ai يستطيع مساعدتك كثيرا فيها.
لكن يجب أن تكون لديك المعرفة الكافية لتسأل أسئلة من قبيل؛
هل هذا الحل صحيح؟
هل هناك حل أبسط؟
ما ال trade-offs هنا؟
ما الذي قد يفشل هنا؟
هل ال architecture مناسبة فعلًا؟
وهل ال ai يوافقني لأن الفكرة صحيحة، أم لأنه يتبع المسار الذي أعطيته له.. ؟
استخدام ال ia بكفاءة لا يعني أن نجعله يفكر بدلا عنا، بل أن نستخدمه كأداة قوية، مع الاحتفاظ بالقدرة على التفكير، التشكيك، والمراجعة.. وهذا جد صعبببب الان.
كلما أصبح ال ai أقوى، أصبحت حاجتنا إلى الفهم الحقيقي أهم، وليس العكس..
فالتعلم ضرورة قصوى الان.
#software #AI #SoftwareEngineering #programming
👍2👏1
لمستخدمي تويتر X، بفضل الله انا موجود هناك، و ساعززي تواجدي و اركز كثيرا على النشر في تلك البقعة من الأنترنيت.
https://x.com/BN_Geek
https://x.com/BN_Geek
X (formerly Twitter)
Mohcin Bounouara (@BN_Geek) on X
Software engineering & continues learning
كثيرا ما صرنا نسمع مصطلح "MCP" في مجال تطوير البرمجيات اليوم.
وبعيدا عن التعريف الأكاديمي، يعني هذا المصطلح أن مشروعك - أو ال codebase الخاصة بك - يجب أن يكون قابلاً للفهم والاستخدام من قِبَلِ وكلاء ال ai.
و هنا، عندما تحتاج إلى دمج ميزات ال ai في مشروعك، وتريد بماء ميزة تعتمد على ال ai تصبح هذه العملية سهلة ومجرد تفصيل تقني يتعلق بالتنفيذ فقط.
وبعيدا عن التعريف الأكاديمي، يعني هذا المصطلح أن مشروعك - أو ال codebase الخاصة بك - يجب أن يكون قابلاً للفهم والاستخدام من قِبَلِ وكلاء ال ai.
و هنا، عندما تحتاج إلى دمج ميزات ال ai في مشروعك، وتريد بماء ميزة تعتمد على ال ai تصبح هذه العملية سهلة ومجرد تفصيل تقني يتعلق بالتنفيذ فقط.
❤1
الأمر يتعلق بالمشاركة في مجال تطوير الويب و البرمجيات، بداعي كسب الرزق و تقديم الاضافة، وترك الاثر، وليس مجرد كتابة الكود بحد ذاته، حتى وإن كانت كتابة الأكواد هي السبب الذي دفعنا لدخول هذا المجال في المقام الأول،، على الأقل، هكذا كان الحال بالنسبة لي..
#AI #SoftwareDevelopment
#AI #SoftwareDevelopment
❤1
قد نعلم جميعا أن السبب الجوهري وراء استخدام ال UUID هو تجنب التكرار عبر الأنظمة و قواعد البيانات المستقلة؛ أما إخفاء ال IDs في عناوين URLs، فهو مجرد فائدة جانبية لل UUID، وليس السبب في وجودها اصلا.
شخصيا أرى أن هذه الفائدة الجانبية أي الجانب الأمني في عدم نشر المعرفات publicly أكثر أهمية من الغرض الأساسي..
#softwareengineering
شخصيا أرى أن هذه الفائدة الجانبية أي الجانب الأمني في عدم نشر المعرفات publicly أكثر أهمية من الغرض الأساسي..
#softwareengineering
السلام عليكم ورحمة الله وبركاته.
أبذل جهدا للمحافظة على النشر باللغة العربية، أولا بسبب حبي لها، وثانيا لمحاولة التأثير إيجابياً في الشباب العربي في مجال البرمجيات،إنطلاقا من تجربتي المستمرة - إن شاء الله وبتوفيق منه - ونيتي لله أولا قبل كل شيء..
لهذا، فمن يجد أو وجد في هذه المجموعة شيئا يفيده، أرجو منه مشاركتها مع غيره، فهذا يشجعني على الاستمرار وبذل المزيد من الجهد.
فهمي ليس جمع المتابعين أو الإعجابات بقدر ما هو محاولة إحداث تأثير إيجابي، تقنيا ودينيا، قبل أي شيء آخر..
ولا أخفي أنني لا أمانع أن يكون للنشر عائد مادي مستقبلا، سواء من خلال مشاريع أو تعاون مع شركات أو غير ذلك، لكن هدفي الحالي هو محاولة تقديم شيء نافع وترك أثر إيجابي، بإذن الله.
فساعدوني على ذلك، وكونوا جزءاً من هذه الرحلة. ❤️
وفقني الله و إياكم.
أبذل جهدا للمحافظة على النشر باللغة العربية، أولا بسبب حبي لها، وثانيا لمحاولة التأثير إيجابياً في الشباب العربي في مجال البرمجيات،إنطلاقا من تجربتي المستمرة - إن شاء الله وبتوفيق منه - ونيتي لله أولا قبل كل شيء..
لهذا، فمن يجد أو وجد في هذه المجموعة شيئا يفيده، أرجو منه مشاركتها مع غيره، فهذا يشجعني على الاستمرار وبذل المزيد من الجهد.
فهمي ليس جمع المتابعين أو الإعجابات بقدر ما هو محاولة إحداث تأثير إيجابي، تقنيا ودينيا، قبل أي شيء آخر..
ولا أخفي أنني لا أمانع أن يكون للنشر عائد مادي مستقبلا، سواء من خلال مشاريع أو تعاون مع شركات أو غير ذلك، لكن هدفي الحالي هو محاولة تقديم شيء نافع وترك أثر إيجابي، بإذن الله.
فساعدوني على ذلك، وكونوا جزءاً من هذه الرحلة. ❤️
وفقني الله و إياكم.
❤12👍2🔥1🫡1
أحياناً أترك ال ai agent يتولى صياغة ال commits عندما أكون في عجلة من أمري؛ لكن بخلاف ذلك، أفضل كتابتها بنفسي وبأسلوبي الخاص.
هذا يساعدني ذلك على ترسيخ التغييرات التي أجريتها في ذهني.
هذا يساعدني ذلك على ترسيخ التغييرات التي أجريتها في ذهني.