عندما زرت المدرسة الأسطورية 42: "تجمع" ، القطط والإنترنت بدلاً من المعلمين. الجزء 2


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


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


يتم فحص المهام المكتملة من 3 إلى 4 مرات من قبل طلاب آخرين ، بحيث يمكن للجميع أن يكونوا طالبًا ومعلمًا. لا توجد تقييمات أيضًا - تحتاج فقط إلى إكمال المهمة بشكل صحيح وكامل. حتى لو تم إنجازه بنسبة 90٪ ، فسيتم اعتباره فشلًا.


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


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


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


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



الزجاج والأدميرال. تحتوي المدرسة على قسمين رئيسيين - بوكال (الفنيون) و الإدارة (الإدارة). Glass - يتعامل مع المشكلات الفنية والمكون التربوي ، بينما Adm - مع المسائل الإدارية والتنظيمية. يتم تجديد احتياطي الموظفين في Glass / Adm على حساب الطلاب المتدربين في المدرسة.


كيف وما يتم تدريسها هنا


كل هذا يبدأ بـ "C". تستخدم المدرسة Unix فقط ، معتبرة أن Windows ليس هو الخيار الأفضل. يتم تدريس الكود من الأساسيات ذاتها ، مما يجبر على فهم منطق البرمجة ذاته. في المستويات القليلة الأولى ، يتم تنفيذ جميع المشاريع فقط في C و C ++ ، لا يتم استخدام IDE. يستخدم الطلاب برنامج التحويل البرمجي gcc ومحرر نص vim.


"في الدورات الأخرى ، ستحصل على وظائف ، وسيُطلب منك إكمال مشروع ، وعندها فقط سيتم شرح كيفية برمجتها. هنا لا يمكنك استخدام الوظيفة حتى تكتبها بنفسك. في البداية ، بينما كنت لا أزال في "التجمع" ، لم أفهم لماذا احتجت إلى هذا malloc ، لماذا يجب أن أقوم بتخصيص الذاكرة بنفسي ، ولماذا لم أتعلم Python و Javascript. ثم فجأة يتعلق الأمر بك ، وتبدأ في فهم كيف يفكر الكمبيوتر. "


Normineyt. بعد الحماية الناجحة ، يتم تحميل جميع المشاريع إلى نظير جيثب المحلي. ولكن قبل ذلك ، يجب أن يجتازوا اختبار توافق الكود مع برنامج Norminette.


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



أمثلة من المهام


يتم فحص جميع المهام التي يؤديها الطلاب في ثلاث طرق: برمجياً ، من خلال قائمة تدقيق من قبل الطلاب الآخرين وممثلي Glass. فيما يلي بعض المشاريع التي يتم تنفيذها بشكل مستقل ويتم فحصها وفقًا لقائمة تحقق:


Init (إدارة النظام والشبكة) - تحتاج إلى تثبيت نظام التشغيل Debian على الجهاز الظاهري وتهيئته وفقًا للمتطلبات المحددة في المهمة.


Libft - تنفيذ وظائف المكتبة القياسية في C ، مثل: strcmp, atoi, strlen, memcpy, strstr, toupper, tolower ، وما إلى ذلك. تكتب الرؤوس بنفسك ، وتقوم بتنفيذها بنفسك ، Makefile بإنشاء ملف تعريف بنفسك ، وتجميعه بنفسك.


Printf - من الضروري التنفيذ الكامل لوظيفة printf القياسية مع جميع وسائطها في C. هذا أمر صعب للغاية بالنسبة للمبتدئين.


Fillit - كان من الضروري جمع مربع من الحد الأدنى للمساحة من قائمة tetramino القادمة إلى المدخل. في كل خطوة جديدة ، تمت إضافة tetramino جديد. المهمة معقدة بسبب حقيقة أن الحسابات يجب أن تتم في C ولأقل وقت ممكن.


Libls - قم بتطبيق نسختك من ls بكل أعلامها القياسية. يمكنك ويجب عليك استخدام الإنجازات من المهام السابقة.


يندفع


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


Pipex - يقبل برنامج الإدخال أسماء الملفات وأوامر shell التعسفية ، ويجب على الطالب إثبات القدرة على العمل مع الأنابيب على مستوى النظام وتنفيذ وظيفة مماثلة للسلوك المنتظم للنظام في المحطة.


Minitalk - تطبيق تطبيق خادم عميل في C. يجب أن يكون الخادم قادراً على دعم العديد من العملاء وطباعة الرسائل المرسلة من قبل العميل باستخدام إشارات النظام SIGUSR1 و SIGUSR2.


Frozen - اكتب خادم IRC في Golang ، وهو قادر على العمل مع العديد من العملاء في نفس الوقت ، باستخدام التزامن و goroutines. يجب أن يكون العميل قادرًا على تسجيل الدخول باستخدام اسم مستخدم وكلمة مرور. يجب أن يدعم خادم IRC قنوات متعددة.


استنتاج


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

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


All Articles