مع الحب من Stepik: منصة تعليمية Hyperskill

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

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



انحدار غنائي


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

  • يمكن للأنابيب الموجودة أسفل الحوض أن تستريح وتلتف بشكل مستقل ؛
  • يقع أقرب متجر للسباكة على بعد كيلومتر ونصف من شقة السيارة.

على الأرجح ، لم تلاحظ ماشا حتى كم جديد تعلمته وما تعلمته ، لأنها كانت قلقة بشأن راحتها في المستقبل ، وفي الوقت نفسه عرض فيلم وتفاحة مغسولة. في المرة القادمة ، عندما تنشأ مشكلة مماثلة ، ستحلها الفتاة أسرع عدة مرات. في الحقيقة ، ماشا لم يعيد العالم إلى حالته المعتادة فحسب ؛ درست بشكل حثيث ، أي في المناسبات الخاصة ، والموجهة نحو الممارسة ، أي القيام بالأشياء ، وليس دراستها بالتفصيل والمقدّم.

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

إذن ما هو النهج الأفضل؟ في حالة الحوض والانسداد - الأول ، وهنا للأسباب:

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

دعونا نترك الفقراء ماشا وحده والانتقال إلى عملية التعلم على هذا النحو.

البرمجة: دراسة أم تفعل؟


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

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

"لكن انتظر!" ، أنت تعترض ، "يبدو جميلًا - خذها وقم بها! لا أستطيع بسهولة كتابة برنامج لنفسي إذا لم أبرمجه من قبل (أ)! من المهم بالنسبة لي أن أفهم مكان الكتابة ، وكيفية التحدث بلغة البرمجة مع المترجم المبدئي من حيث المبدأ إنه ليس هاتف سباكة في جوجل لإيجاده. "

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

Hyperskill: لقد بنينا وبنا وأخيراً صُنعنا


فكرنا في هذه المشكلة لفترة طويلة. حول المدة التي فكرنا فيها ، يتحدث ببلاغة عن تاريخ آخر مشاركة على مدونتنا. بعد كل النقاش ومحاولات دمج النهج الجديد في Stepik ، حصلنا على ... موقع آخر. ربما تكون قد سمعت عنه بالفعل كجزء من أكاديمية JetBrains. أطلقنا عليها اسم Hyperskill ، الذي بني في التعلم القائم على المشاريع هناك ، وربطنا به قاعدة معرفة Java ، وحصلنا على دعم فريق EduTools. والآن بمزيد من التفاصيل.

صورة

غرض محدد. نحن نقدم "قائمة" بالمشاريع ، أي البرامج التي يمكنك الكتابة مع مساعدتنا. من بينها تيك تاك تو ، مساعد شخصي ، بلوكشين ، محرك بحث ، إلخ. مشاريع تتكون من 5-6 مراحل. نتيجة كل مرحلة هو برنامج الانتهاء. "لماذا إذن بقية المراحل ، إذا كانت المرحلة الأولى قد وضعت كل شيء بالفعل؟" شكرا على السؤال مع كل خطوة ، يصبح البرنامج أكثر وظيفية أو أسرع. في البداية ، يأخذ الكود 10 خطوط ؛ في النهاية ، قد لا يصلح إلى 500 سطر.

قليلا من الناحية النظرية. من المستحيل الجلوس ، وبدون معرفة كلمة واحدة عن البرمجة ، اكتب حتى Hello World. لذلك ، في كل مرحلة من مراحل المشروع ، ترى الأساسيات النظرية التي يجب عليك إتقانها ، والأهم من ذلك ، أين يمكن الحصول عليها. توجد الأساسيات أيضًا في Hyperskill في قسم "خريطة المعرفة". إذا كان في المرحلة الأولى من المشروع ، فلن يُطلب من الطلاب قراءة البيانات من الملف ، حتى إذا كانوا لا يعرفون كيفية المتابعة. سيتعلمون بعد ذلك أنفسهم ، من أجل التطوير العام ، أو ستكون هناك حاجة في المرحلة التالية.

صورة

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

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



أدوات. من الرائع كتابة أجزاء صغيرة من التعليمات البرمجية في نافذة خاصة على الموقع ، ولكن البرمجة الحقيقية تبدأ بالعمل في بيئة التطوير ( I ntegrated D evelopment E nviroment). لا يعرف المبرمجون المتمرسون فقط كيفية كتابة التعليمات البرمجية ، ولكن أيضًا كيفية إنشاء واجهة رسومية وتجميع ملفات مختلفة في مشروع واستخدام أدوات تطوير إضافية ويتولى IDE الاهتمام ببعض هذه العمليات. لماذا لا تتعلم هذه المهارات بينما تتقن البرمجة؟ هذا هو المكان الذي تأتي به JetBrains من خلال إصدار خاص من IntelliJ IDEA Community Educational مع المكون الإضافي EduTools المثبت مسبقًا. في مثل هذا IDE ، يمكنك أن تأخذ دورات تدريبية وتحقق من المشكلات التي تم حلها وتلقي نظرة خاطفة على نصائح المشروع إذا نسيت شيئًا ما. لا تقلق إذا سمعت أولاً كلمة "plug-in" أو "IDE": سنخبرك بمضمونها وكيفية تثبيتها على جهاز كمبيوتر أو كمبيوتر محمول بأقل قدر من المعاناة. فهم النظرية ، ثم انتقل إلى IDE واستكمل المرحلة التالية من المشروع هناك.

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

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

النتيجة البصرية. إذن ، لقد أنهيت المشروع الأول ، ماذا بعد؟ استخدم ثمار العمل! إلعب tic-tac-toe مع أصدقائك ، وفي الوقت نفسه تباهى بالنجاح. قم بتحميل المشروع إلى جيثب لإظهار صاحب العمل المستقبلي ، اكتب وصفاً بنفسك ، وبيّن المعرفة التي استخدمتها هناك. 4-5 مشاريع معقدة ، والآن ، محفظة متواضعة للمطور المبتدئ جاهزة.

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

مرحبًا: https://hi.hyperskill.org/ هيا ، انظر ، جرب ، أقترح ، مدح و تأنيب. نتعلم أيضا أن يعلمك.

Source: https://habr.com/ru/post/ar447434/


All Articles