87

البرمجة ليست للجميع

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

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

هل مازال أحدكم يظن أن البرمجة للجميع؟


التعليق السابق
27

أحترم وجهة نظرك. لكن أرى أنها شيئ مكتسب عبر التجربة والقرائة وليست موهبة.

اذا قرأت عن coding standard والتزمت بها فسوف يتحسن طريقة كتابة الكود.

اذا تعلمت عن design pattern سوف تكتب كود أفضل وقابل للصيانة والتطوير.

اذا تعلمت algorithm & data structure سوف تكتب كود يعمل بكفائة أفضل.

كلما تعلم الشخص أكثر ، كلما تطورت لديه القدرة على كتابة كود أفضل.

18

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

31

ألن كاي يخالفك الرأي هنا، إن ولد طفل هندي في فرنسا وتبنته من أول يوم عائلة فرنسية سيتكلم الفرنسية، لكن أقرانه في الهند إن لم يتعلموا الفرنسية بعد سنوات قد ينعتون بالفشل في تعلمها وربما لأنهم لا يملكون موهبة تعلمها، وهذا غير منطقي، ضع طريقة فعالة لتعليم أي شيء لأي شخص ويمكن أن يتعلمه، شخصياً كنت أظن أنني فاشل في الرياضيات - وقد كنت في المدرسة - لكنني أدرك الآن أن من فشل في تعليمي هو السبب، الآن أتعلم الرياضيات بنفسي وأستمتع بذلك، كذلك الحال معك، ربما لم تجد الوسيلة المناسبة لتعلم الرياضيات.

تعلم شيء في رأيي لا يتعلق بالموهبة، قد يمتلك بعض الناس مواهب مسبقاً لكن لا يعني أن من لا يملكها لا يمكن أن يتعلم ويتقن ويمتلك الموهبة بالممارسة، الأمر صعب ومتعب لكنه ليس مستحيلاً، هناك كتب وأبحاث وأمثلة تثبت ذلك.

ولكن ألا يوجد فرق بين مهارات العيش التي "يجب تعلمها" من أجل التعامل مع المجتمع وبين المهارات التي ليس لها علاقة بهذا الشيء؟

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

يبدو أننا نختلف على مسميات لا أكثر، هناك أمثلة كثيرة لأناس فشلوا في طفولتهم في مجالات مختلفة ثم نجحوا لاحقاً عندما تعلموا بأنفسهم، فهل اكتسبوا موهبة لم تكن لديهم في طفولتهم؟ الإنسان ليس كائن ثابت لا يتغير، بإمكانه أن يتعلم إن أراد ووجد الطريقة المناسبة، لا أظنك تخالفني هنا.

اكتسبوا ام اكتشفوا :P

انت تفترض تساوي القدرات بين الافراد، و الفرق هو الرغبة و الاصرار إلخ؟

يعني الكل يستطيع ان يلعب كرة السلة لو وجدت الرغبة عند الكل؟

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

طيب لنغير من "التحليل المنطقي" التي نختلف عليها هنا كموهبة ام مكتسبة إلى "قوة الذاكرة" هل تستطيع ان تفترض ان قوة الذاكرة متساوية عند الكل و الفرق هو التنمية او الضعف الذي يحصل لها؟

هل هي (قوة الذاكرة) موهبة ام ممكن اكتسابها.

لن نصل لاتفاق ولا يجب أن نتفق، دعنا نتفق على أننا نختلف في الرأي هنا، ألخص رأيي: المرء أدرى بنفسه، إن وجد طريقة تناسبه لتعلم أي شيء وحاول بجدية وبطرق مختلف ففي الغالب سينجح في تعلم أي شيء، قصة وتجارب الأفراد لا تعني الكثير ما لم تصبح دراسة علمية على آلاف الناس لنعرف بشكل نهائي ما هو موهبة لا يمكن اكتسابها أو مهارة يمكن تعلمها واكتسابها.

أتفق معك أنه يمكنك تعلم أي شيء و اتقانه أيضا ..لكن أن تصبح مبدعا فيه تحتاج لمواهب فطرية ... فالقدرات متفاوتة بين الأشخاص فمثلا ليس كل الأطباء و لا المهندسين ولا العلماء بنفس الدرجة ... الموهبة ربما تأخذ وحدها نسبة 30 في المائة و الباقي بين التعلم و المثابرة و غيرها من العوامل

لا لايوجد فرق، ولكن تختلف رغبة التعلم وسرعته علي عوامل كثيرة

الضرورة قد تكون احد دوافع التعلم الكثيره، لذلك نتعلم اللغات اسرع من تعلم البرمجة،

طريقة تعلم الناس والسرعة اجد له شرح جميل في كتاب بعنوان " *Design For How People Learn "


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

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

صحيح عند وجود الارادة، لكن الحقيقة مع وجودها يمكن ان يفشل، مثل المطرب ذو الصوت البشع، لن يستطيع ان يغني مهما كان عنده اراده.

الفكرة صعب علي ان اثبت انا هنالك شيء في المخ يدعم تعلم البرمجة، هذا الشيء له ارتباط بالتحليل المنطقي، اتحدث عن تجارب طويلة فعلية، تغلب الشكل النظري.

الصعوبات التي قد تواجهها في الرياضيات مثلا قد تكون صعوبة ذاكرة لا فكر رياضي تحليلي (هذا ما حدث معي ايضا).

نفس الشيء في البرمجة قد يكون النقص في امور اخرى قد يستطيع تعويضها بوسائل اخرى معتمد على الاصرار.

لكن اذا كان عنده مشكلة في المنطق، لا اتوقع ولو انفق على نفسه الكثير.

كل شخص يستطيع أن يتعلم الرسم إلى درجة معينة لكن ليس كلهم نستطيع أن نقول عنه رسام فنان .... أنت تنكر وجود الموهبة تماما ...فبالموهبة مثلا ما تتعلمه أنت و أنا في شهر يستطيع أن يستوعبه شخص موهوب في مجال معين في يوم أو يومين

18

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

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

في الجامعة اﻷشخاص الذين تحصلوا على درجات عالية (المرتبة اﻷولى) لم يصبحوا مبرمجين في النهاية، مع أنهم كانو يفهمون جميع لغات البرمجة، بل أحياناً يقومون بتدريسها، لكنهم فشلوا في الواقع العملي، ومنهم من عملت كسرتيرة بعد أن كانت اﻷولى على دفعتها.

وكان لي صديق خريج هندسة إلكترونية وكان اﻷول على دفعته، طلب منه أحدهم أن يقوم بإصلاح تلفازه المعطل، فأعتذر له أنه لا يستطيع اصلاح التلفاز لكن إذا كانت عنده مسألة فسوف يحلها.

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

لا اتكلم عن تجربة واحدة بل تجارب عديدة في تعليم الآخرين، جربها بنفسك نفس المنهاج و نفس العناية، المعالجة المنطقية تختلف، منهم من يتعلم و يبدع و منهم يبقى علمه روتينيا.

حتى الفرق ملموس في الحياة اليومية بدون برمجة.