La base de toute programmation sur ... des puzzles

Salutations, Khabrovsk!

Dans cet article, je veux parler de mon expérience en tant que professeur de programmation en C ++ dans un collège d'une université technique. Ce fut une expérience unique dans la vie qui m'a beaucoup appris. Quand il s'agit de faits intéressants du passé personnel, ce passage de la vie vient à l'esprit l'un des premiers.
Allons-y.

D'abord, un peu de toi.
En 2016, je suis diplômé de l'institut avec mention avec un diplôme en sécurité de l'information des systèmes automatisés. Pendant la formation, j'ai réussi à plusieurs reprises à réaliser mon potentiel en écrivant des articles scientifiques, en participant à des concours et à des bourses. En 2015, il m'est arrivé de devenir le gagnant du concours panrusse de jeunes scientifiques «UMNIK». En 2016, avant l'obtention du diplôme, il était déjà employé par une grande organisation municipale pour le poste de «spécialiste de la sécurité de l'information, de la cryptographie et du cryptage».
Quelque chose comme ça en bref. On peut imaginer que j'avais néanmoins une idée de la programmation.

Et voici 2017. École supérieure. On m'a demandé d'enseigner au C ++ College pendant un semestre, pour lequel on m'a promis de bons bonus pour soulager le fardeau d'un étudiant diplômé et rien de plus.

Honnêtement, j'étais sincèrement intéressé à m'essayer dans cette croyance.

Premier couple
Septembre La première semaine scolaire. Les étudiants sont venus vers moi. "Le groupe le plus méchant" - alors ils ont été appelés.
23 personnes. "Programmeurs."

Comme prévu, je me suis présenté en premier. Il leur a dit avec retenue le contenu de la partie "D'abord un peu de moi"
Puis le terrible a commencé. À la question «Que pouvez-vous faire?» Les étudiants (nous les appellerons désormais ainsi) ont répondu qu'ils pouvaient faire un peu plus que rien du tout (enfin, cela signifiait que certains d'entre eux savaient à quoi ressemblait MS VS et pouvaient créer le projet «Hello world» ) ... Programmeurs. Le dernier cours ...

Ensuite, ils ont expliqué en détail, "dans les couleurs" qu'ils n'avaient rien appris et qu'en général ils étaient déçus de la programmation ...

Presque tous les jours avant la prochaine leçon, je suis allé comme ceci:


... mais la veille, il a eu l'idée de faire des efforts pour corriger la situation dans l'esprit et l'esprit de ce jeune. Et puis "Ostap a souffert".

Introduction à la programmation
Dans la leçon suivante, j'ai apporté ... un puzzle.
Oui oui Puzzle "Comment dresser votre dragon." Les règles étaient simples. Le groupe était divisé en 3 équipes. Chaque équipe a récolté sa part. Certains sont la forêt, d'autres la terre, d'autres le dragon au centre de l'image. Pendant qu'ils assemblaient le puzzle à l'ensemble du couple, j'ai dit que collecter le puzzle c'est aussi de la programmation , que les programmeurs utilisent souvent le code de quelqu'un d'autre, que dans chaque projet il y a plusieurs commandes, fonctionnalités, modules différents ...
Progressivement, les étudiants les plus léthargiques ont rejoint le processus.
Quand j'ai fini de frotter l'idée de programmation dans les concepts d'entreprise, de processus et ... d'énigmes, il était temps de fixer les règles de l'apprentissage.
Pour chaque leçon, chaque étudiant devait écrire dans un cahier 10 termes de l'informatique. Tout. Chacun a le sien. Le fait est que j'ai pris un cahier d'un étudiant, trouvé parmi tous les termes les plus appliqués et demandé à un autre étudiant de les utiliser. Quand un autre élève dit "je n'ai pas écrit ce terme", ce n'était pas punissable (à cause du bon sens), mais cet élève devrait écrire les termes "manquants" (comme tous ceux qui n'en avaient pas) et trouver leur signification pour le prochain occupation.

Nous l'avons donc fait. Chaque leçon a commencé avec un caractère aléatoire pour deux à trois élèves. Les gars étaient enthousiastes pour ce processus.

Sujets de la leçon
Il est très important de commencer à apprendre pour donner aux étudiants une bonne littérature. À mon avis, le livre était un guide idéal:


À un moment donné, j'ai dû le lire sournoisement dans une étreinte avec Microsoft Visual Studio. Ensuite, il a été possible de comprendre la programmation à partir de zéro. L'option parfaite.

Vous allez modestement vers les élèves et dites: «Pour devenir programmeurs, il vous suffit de lire et d'essayer tout ce qui est dans ce livre» et de jeter le livre sur la table. L'essentiel est de ne pas mélanger les livres dans votre sac à dos ...

Avant chaque sujet, bien sûr, je devais bien me préparer. J'ai lu le même Laforet et plusieurs autres sources intéressantes sur le Web.
Explain est passé par presque les bases. De plus, comprendre où les élèves ont interrompu les connaissances de base de manière déductive.
Tableaux -> Utilisation de la mémoire (constructeurs) -> Liens -> Fonctionnement de la mémoire -> Périphériques de stockage -> Qu'est-ce qu'un périphérique de stockage physique -> Représentation binaire des données ...


Un très bon crash test de connaissance des faits fondamentaux de la programmation. Je ne suis plus programmeur, je suis historien!

Et donc, cela signifie qu'il y a des batailles historiques pour plusieurs paires d'affilée. Une fois, un secrétaire du département se penche sur notre bureau et voit un groupe, ouvre les yeux, regarde et ferme la porte. Comme j'ai été informé plus tard, elle a été choquée que le groupe ETA soit assis si doucement et m'écoute si attentivement ... Thie, izi.

Travaux de laboratoire
La première information appliquée - les premiers "laboratoires". Au total pour le semestre, le groupe a passé 10 travaux de laboratoire. Dans le premier, ils ont créé la console la plus simple a + b , et dans le second, ils ont écrit, bien que console, mais des applications assez intéressantes, telles que le calcul de la valeur intégrale d'une fonction donnée arbitraire en utilisant l'une des trois méthodes - environ les mêmes tâches étaient sur la certification finale - cours travailler.

C'est juste que l'approche de l'acceptation n'était pas familière. Toutes mes études à l'institut, j'ai été confronté au fait qu'être intelligent et pouvoir passer des rapports ne sont pas la même chose. Cela ne me convenait pas fondamentalement.

- Les gars, je pensais. Construisons une relation «conceptuelle». Si l'un d'entre vous pense qu'il n'a pas besoin de programmation, la porte est là-bas. Je t'apprends gratuitement. J'aimerais voir ici seulement des curieux, des passionnés et des passionnés. Je demande à tout le monde de ne pas perdre tout le temps - j'ai dit le premier jour de recevoir des travaux de laboratoire. Après cela, 5 personnes ont immédiatement cessé de suivre les cours. C'était logique et attendu. Avec le reste, il a été possible d'essayer de faire quelque chose d'intelligible.

"... Je ne suis pas intéressé à regarder quelqu'un faire le travail pour vous, juste pour le remettre." Vous n'êtes peut-être pas programmeurs, mais vous devrez être des gens dans mes cours.

Cela ressemblait à ceci:

case  
Un étudiant m'assoit pour prendre le travail.
- L'avez-vous fait vous-même?
- Oui.
- Qu'est-ce que c'est?
- * répond correctement *.
* Je demande quelques points supplémentaires. Répond correctement *
- accepté. Super.

 case  
- L'avez-vous fait vous-même?
- Oui.
- Qu'est-ce que c'est?
- * répond Faux / ne répond pas *.
* Je demande quelques points supplémentaires. Même résultat *
- NON accepté. NEUD. J'attends une reprise.

 case  
- L'avez-vous fait vous-même?
- Oui.
- Qu'est-ce que c'est?
- * répond correctement, mais pas sûrement, nage *.
* Je demande quelques points supplémentaires. Même résultat *
- accepté. Bon.

 case  
- L'avez-vous fait vous-même?
- Non.
- Pourquoi?
- C'est dur. Il m'a aidé ... * appelle honnêtement un excellent élève du groupe *
- Compris?
- Oui, j'ai tout compris.
- Qu'est-ce que c'est?
- * répond correctement *.
* Je demande quelques points supplémentaires. Réponses plus ou moins correctes, parfois complètement dépassées, même de 50 à 50 vraies et fausses *
- accepté. Bon.

Il n'est pas logique de décrire tous les autres cas. Oui, le «bon gars» peut être mécontent que le «trois hommes» obtienne la même note, partant pour l'honnêteté. Ensuite, tout dépend de l'humeur. Ou je demande au «bon gars» de regarder le sol, parce que «maintenant je vais laisser tomber une pincée de sagesse», puis je vais vous dire l'essence de l'approche, décrire ce qui a plus de valeur dans la vie et expliquer que le «trois hommes» était beaucoup plus difficile à passer que le «bon gars» ", Etc ...
... ou, comme en temps voulu, mon professeur, je dessinerai une petite dent dans la cellule du journal en face de ce mécontent, et la prochaine fois je compléterai personnellement le travail de laboratoire pour lui. Comme ça. Pour ne pas «éteindre» les camarades.



Grades
Le processus éducatif, comme le monde entier, est littéralement plongé dans les étiquettes de prix et les notes.
Les étudiants sont aussi des gens , mais le «cadre», à mon avis, a dû être «secoué» ici aussi.
Pendant le semestre, tout le monde a reçu une tâche bonus. Inscrivez-vous sur github.com , téléchargez-y un projet C ++ vide, faites 2 mises à jour, validez-les et exécutez-les. Pour ces actions, il a été attribué 15. Oui, oui, pas 4, pas 5, mais 15. Trois d'entre eux ont compris. Il était en quelque sorte compréhensible pour le psychotype de l'élève, cependant, il y avait un autre cas.
Une fois que notre couple a été déplacé pour qu'il devienne le dernier, il en va de même pour une fenêtre de couple. Cependant, 15 personnes sont quand même venues vers elle. Je ne voulais pas expliquer le nouveau sujet en l'honneur d'un tel héroïsme, car nous avions déjà assez bien progressé sur les sujets + le sujet suivant n'était pas très simple pour les cerveaux fatigués (les miens et les étudiants). J'ai alors décidé de parler de philosophie.

- Annoncer l'attrait d'une générosité sans précédent. Tout le monde me dit quelle note lui donner pour le couple d'aujourd'hui.
Tout le monde voulait un «cinq».
"Réfléchis déjà," dis-je. Tout le monde était ravi.
Le silence.
- pourquoi personne ne voulait 7 ou 10 ?
Tout le monde a haché les yeux et a commencé à sourire bêtement.
- Et tu paries? Au magazine?! - une voix est venue de l'arrière du bureau.
- Oui, c'est facile! - J'ai dit, - Je déclare un blitz en termes de qui va répondre à 10 de mes questions - J'en ai mis 20 dans le journal, sans accroche, qui ne répond pas - à -10 (moins dix).

«L'équipe a pris vie, la controverse a commencé», tout le monde avait honnêtement mérité des points. Deux se sont portés volontaires. Avec des inexactitudes mineures, ils ont répondu à tour de rôle à 10 questions sur la pile, la file d'attente, le constructeur, le destructeur, le garbage collector, l'encapsulation, le polymorphisme, les fonctions de hachage ...
20 ont été attirés par chaque magazine ... mais l'importance du magazine et des notes est tombée aux yeux de tous. Maintenant, je regrette de ne pas avoir demandé s'ils aimeraient «partager» leur évaluation avec quelqu'un. Il me semble qu'ils partageraient ... Désormais, tout le monde abandonnerait son "laboratoire" avec connaissance et honnêteté.

A partir de ce moment, un autre type de livraison du laboratoire est apparu:
 case  
- L'avez-vous fait vous-même?
- Non.
- Pourquoi?
- C'est dur. Il m'a aidé ... * appelle honnêtement un excellent élève du groupe *
- Compris?
- Sergey Nikolaevich, honnêtement - je ne comprends rien, ici j'ai écrit les commentaires en face de chaque ligne - eh bien, ce n'est pas le mien, je serai conducteur de tracteur
- Qu'est-ce que c'est?
- * lit le commentaire en face de la ligne *.
- ...
- ...
- Quelle est la différence entre Belarus MTZ et Don 500 et K700?
- ??! .. Le premier est un tracteur à roues de production Minsk, souvent utilisé sur les types de production agricole légers et moyens. Il a encore de petites roues avant et de grandes roues à l'arrière. Le Don 500 est principalement une moissonneuse-batteuse, et le K-700 Kirovets est un tracteur tout-terrain soviétique à roues, classe de traction 5.
- accepté. Bon (!!!).
- Merci, Sergey Nikolaevich !!!

Dans mon pays natal, parler pour un tracteur, c'est presque comme avoir SOLID.

Génie
J'avais un génie dans mon groupe. L'élève de la toute première paire était très en retard et n'a pas commencé à assembler ce puzzle avec tout le monde. Ensuite, je lui ai demandé de faire ce que j'avais prévu pour la prochaine leçon pour tout le monde - d'écrire sur un morceau de papier ce qu'il aimait, ce qui l'intéressait. Selon les résultats, "Genius" avait 2-3 lignes: quelque chose comme "Je connais la futilité d'être" ...

... Oh, mon Dieu, dans mon groupe en une seule personne à la fois le deuxième Lao Tzu et Kojima ...


À ma grande surprise, dans les deux premières paires, il a vraiment brillamment répondu aux questions sur les termes, mais l'effet n'a pas duré longtemps. Le «génie» a cessé de suivre les cours et la prochaine fois il n'est venu que pour les premiers travaux de laboratoire, qu'il n'a pas réussi pour des raisons objectives. Puis, en raison de l'absentéisme, il a naturellement accumulé des dettes qui, comme il le croyait, m'ont simplement obligé à lui attribuer, pour ainsi dire, «fraternel» .
La non-fréquentation des couples + ChSV surestimé contredit les principes établis de la visite de mes cours. Le "Génie" n'avait que 2 façons de sortir de la situation - se réhabiliter (le chemin prévu) ou marquer des paires et espérer que la "troïka" fixée par le doyen pour se débarrasser du mocassin.
Eh bien, c'est "Genius" ... vous devez immédiatement agir "avec brio". Ce jeune homme n'a rien trouvé de mieux que d'écrire une tirade en colère dans le dialogue général en VK (où j'étais et tous les étudiants de ce groupe) avec des malédictions et des insultes qui m'étaient adressées.

Hmm ... Déception.
Surtout, il m'a frappé qu'avant la fin de l'opération punitive de la part de la direction du collège, il ait décidé de m'excuser auprès de moi. Pour quoi? - Je ne comprends vraiment pas. À cette époque, j'étais longtemps indépendant de la critique, d'autant plus franchement stupide. Ma personnalité n'a pas été blessée, mais les processus - il y a des processus, en tant qu'enseignant, je n'ai pas pu m'empêcher de le signaler. Il s'est avéré que tant de plaintes s'étaient accumulées contre lui au cours de ses études que c'était le dernier cas. Il a été expulsé. Depuis la dernière année de collège.
Peut-être qu'il me regarde depuis longtemps à la vue d'un fusil de sniper, mais pour être honnête, en tout cas.
Oh, génie, toi sans cœur ...

Épilogue
Pour moi personnellement, l'expérience d'enseignement a été l'une des plus instructives. Cela m'a aidé à consolider les connaissances fondamentales de la programmation après avoir étudié à l'institut. Je me sentais confiant dans la spécialité choisie (gamme de spécialités disponibles). Le fait que le «groupe le plus méchant» ait été imprégné de respect et de convivialité pour moi est particulièrement important - cela vaut beaucoup. J'ai réussi à trouver un moyen pour leurs innovateurs internes, j'ai essayé d'inculquer la réalité, pas ces priorités de modèle. C'est dommage que nous n'ayons pas eu les «puzzles» du codage - quand tout le monde devrait faire partie du code, et en combinant toutes les parties en une seule, nous obtiendrions un excellent programme de travail ...
J'espère que parfois chacun le ressentira ... mais pour l'instant, des captures d'écran avec des critiques de plusieurs étudiants sont collectées ci-dessous après 2 ans.



Il est trop tôt pour tirer des conclusions sur le succès de la carrière d’un programmeur, car la plupart de ce groupe étudie maintenant dans une université. Le temps nous le dira.

J'espère que l'article vous a été utile. Merci de votre attention!
Succès créatif et humeur positive, collègues!

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


All Articles