نصيحة لعلها تنفع؛
حاول أن تكون لك أعمال وأنشطة في يومك دون استخدام الهاتف، أو على الأقل دون أن يكون الهاتف بجانبك طوال الوقت،، فهو مصدر لكثير من الضغط، والمقارنات، وضياع الوقت، وتشتّت الذهن، وفقدان القدرة على التركيز..
وإن كان ولا بد، بسبب ادمانك له، فحاول أن تُنقص جرعة استخدامه شيئا فشيئا بطريقة ذكية،، مثلا؛ إذا كنت تستخدم الهاتف أثناء الأكل، فحاول أن تستبدل ال scrolling العشوائي بفتح فيديو تعليمي في تخصصك، أو في دينك، أو في شيء ينفعك في دنياك..
هنا ستجد الأمر أخف، وستستفيد ولو قليلا، وربما تزيد من تركيزك ولو قليلا أيضا.
لكن الهدف الأسمى في النهاية هو ألا تحتاج إلى إستخدام الهاتف في مثل هذه الأوقات أصلا.
اللهم وفقنا وإياكم لما يحب ويرضى.
في عالم اليرمجيات اليوم، يجب ان تحفظ هذه العبارة، figure things out as you go.. يجب ان تقوم بكل ما تستطيع في أي مكان وضعك الله فيه - في هذا المجال -
و الله ولي التوفيق.
وصلوا و سلموا على أشرف الخلق.
قال صلى الله عليه وسلم: "أكثروا الصلاة عليَّ يوم الجمعة وليلة الجمعة".
Collaboration is more important than looking genuinely good at working alone.
أنت غالبا لن تعمل وحدك في مجال هندسة البرمجيات عموما، وفي تطوير الويب خصوصا.
لذلك، تعلم أن تتقبل الإعتماد على الآخرين داخل الفريق..
قد تحتاج إلى انتظار شخص آخر لينهي جزءا من العمل، أو الاعتماد على قرار اتخذه زميل، أو التنسيق معه قبل أن تتمكن من إكمال مهمتك..
وهذا ليس ضعفا فيك، ولا يعني أنك أقل كفاءة،، هذه ببساطة طبيعة العمل الجماعي.
إن لم تكن معتادا على ذلك، فمن المهم أن تتعلمه وتعتاد عليه؛ لأن تكون Software Engineer جيدا لا يعني أن تكون قادرا على فعل كل شيء بمفردك، بل أن تعرف كيف تعمل بكفاءة مع الآخرين.
ليس بالضرورة ان تفهم كل مسارات النظام الذي تبنيه أو تقوم بصيانته، ابدأ بما تفهمه، و شيئا فشيئا تتضح لك الصورة، و تبدأ في فهم أجزاء من النظام كانت تبدو لك غامضة و صعبة الفهم.
المهم إبدأ، خصوصا الآن مع ال ai.
#softwareengineering #softwaredevelopment
السلام عليكم.
تقيمكم لنا لهذه القناة الشخصية على يوتيوب ونوعية. المقاطع التي أضعها.
أريد feedback تحسن من محتواي، لا تزيينه في نظري فقط.. رغم أن الله يعلم نياتي من القناة اساسا، فلا اطلب اراء الناس لابدو جيدا و جميلا، بل لاحسن مما أقدمه.
شكرا مسبقا لأي شخص سيأخد من وقته لكي يعطيني رأيه.
https://youtube.com/@mohcinbounouara_coding?si=O6eW-8NdZkwWwb9x
كمبرمجين ينبغي أن نهتم بفهم المفاهيم الأساسية للمجال، بغض النظر عما إذا كان ال ai سيتولى تفاصيل التنفيذ أم لا..
قد يكتب ال ai الكود نيابة عنا، لكن هذا لا يلغي حاجتنا إلى فهم ما نبنيه، ولماذا نبنيه أصلا، وما الذي يمكن أن يحدث بشكل خاطئ، و ما يجب أن نصححه، و ننقحه.
وهذا لا يتوقف عندما تصبح senior developer.. الامر مستمر.
ما زالت مراجعة معارفنا، والعودة إلى الأساسيات، والاستمرار في التعلم، ضرورة. إضافة الى تنميتها.
ال ai tools بأقواها، ك Claude Code مثلا لا تستطيع ان تخرج product مثالي end-to-end،، المطور لازال دوره مهم في ال SDLC لكن بكتابة كود أقل.
و هذا عن تجربة في بناء مشروع بإستخدام ال Agentic Development الأمر ممتع، لا أخفيكم، لكن دوري فيه كمطور ضرورة قصوى.
نصيحتي لنفسي و لكم، التعلم المستمر في المجال و استخدام الأدوات المتاحة من أدوات ال ai لانه لا هروب منها.
و الله أعلى و أعلم.
تكلم بصراحة في عملك؛
- قمت بكذا، و تأخرت في كذا، بفعل كذا، و هكذا...
الرزاق هو الله، فإحوص على ما ينفعك و اطلب الله التوفيق والفتح.. غير هذا،، كلها مخاوف بعيدة عن وضع الله اولا، في مسألة الرزق هنا، و في مسائل أخرى.
وهذا كلام أذكر به نفسي اولا قبل غيري.
و الله ولي التوفيق.
الحمد لله حمدا كثرا، و مابكم من نعمة فمن الله..
إستشعر هذه الآية في كل نجاح، في كل خطوة لم تسقط فيها..
و تذكرها ايضا في لحظات السقوط، فبدونها لن تكون هنالك لحظات نهوض..
هي مجاهدة، و كلها نعم من عند الخالق الجبار.
الحمد لله.
هذا منشور رائع لمهند البرمجيات المرموق هذا.. من أفضل المنشورات التي قرأتها على لينكدإن منذ مدة طويلة..
يُسلط الضوء على أمور قد لا تواجهها في بداية مسيرتك المهنية، وفهمها مبكرا قد يوفر عليك سنوات من الجهد.
فقط أريد أن أضيف شيئا مهما إلى النقطة الرئيسية التي ذكرها "وهي أهمية بناء عادات جيدة كمبرمج ومطور"،، لا تعتمد كثيرا على الشغف، دخلتُ هذا المجال بدافع الشغف، وعندما كان الشغف هو الدافع الرئيسي. بالنسبة لي، تعلمتُ أقل بكثير مما أتعلمه الآن بفضل الله عز وجل،، لقد تعلمتُ، وما زلتُ أتعلم، الكثير منذ أن بدأتُ في بناء عادات جيدة كمطور.. لا عندما كنت اتخدث و اتحرك بمفهوم الشغف.
اللحظات التي تشعر فيها أنك ضعيف تقنيا، أمام أناس آخرين.. هنا تعرف أنك يجب ان تستمر في التعلم "الفعال".
و هنا ربما أفضل الأوقات التي ستعلمك الكثير.
فاللهم علمنا و إنفعنا بما علمتنا.
قمت بمراجعة بسيطة لطريقة عملي باستخدامي لل 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.
إفهم التفكير الهندسي، و ال trade-offs و إبني الأشياء لكي تتعلم كثيرا من التفكير الهندسي و النقدي في بناء النظم.
و الله ولي التوفيق.
ال 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
كثيرا ما صرنا نسمع مصطلح "MCP" في مجال تطوير البرمجيات اليوم.
وبعيدا عن التعريف الأكاديمي، يعني هذا المصطلح أن مشروعك - أو ال codebase الخاصة بك - يجب أن يكون قابلاً للفهم والاستخدام من قِبَلِ وكلاء ال ai.
و هنا، عندما تحتاج إلى دمج ميزات ال ai في مشروعك، وتريد بماء ميزة تعتمد على ال ai تصبح هذه العملية سهلة ومجرد تفصيل تقني يتعلق بالتنفيذ فقط.
الأمر يتعلق بالمشاركة في مجال تطوير الويب و البرمجيات، بداعي كسب الرزق و تقديم الاضافة، وترك الاثر، وليس مجرد كتابة الكود بحد ذاته، حتى وإن كانت كتابة الأكواد هي السبب الذي دفعنا لدخول هذا المجال في المقام الأول،، على الأقل، هكذا كان الحال بالنسبة لي..
#AI #SoftwareDevelopment
قد نعلم جميعا أن السبب الجوهري وراء استخدام ال UUID هو تجنب التكرار عبر الأنظمة و قواعد البيانات المستقلة؛ أما إخفاء ال IDs في عناوين URLs، فهو مجرد فائدة جانبية لل UUID، وليس السبب في وجودها اصلا.
شخصيا أرى أن هذه الفائدة الجانبية أي الجانب الأمني في عدم نشر المعرفات publicly أكثر أهمية من الغرض الأساسي..
#softwareengineering