Bonjour, chers Habraviens !
Dans cet article, je souhaite partager mon expérience en tant qu'enseignant de programmation en C++ dans un collÚge d'une université technique. Cela a été une expérience unique dans ma vie, qui m'a beaucoup appris. Quand il s'agit de faits intéressants de mon passé personnel, ce passage de ma vie me vient à l'esprit en premier.
C'est parti.
D'abord un peu sur moi.
En 2016, j'ai terminĂ© mes Ă©tudes avec un diplĂŽme rouge en « SĂ©curitĂ© des systĂšmes informatisĂ©s ». Pendant mes Ă©tudes, j'ai eu l'occasion de rĂ©aliser mon potentiel en Ă©criture d'articles scientifiques, en participant Ă des concours et Ă des bourses. En 2015, j'ai eu l'honneur de remporter un concours national pour jeunes chercheurs, « UMNIK ». En 2016, avant mĂȘme d'achever ma formation, j'avais dĂ©jĂ Ă©tĂ© embauchĂ© dans une grande organisation de la ville en tant que « SpĂ©cialiste en sĂ©curitĂ© de l'information, cryptographie et chiffrement ».
En résumé, c'est à peu prÚs ça. On peut supposer que j'avais une certaine idée de la programmation.
Et voilà , l'année 2017. Doctorat. On m'a demandé d'enseigner C++ dans un collÚge pendant un semestre, pour quoi on me promettait de bons bonus pour alléger le fardeau de mon doctorat et rien de plus.
Pour ĂȘtre honnĂȘte, j'Ă©tais vraiment curieux d'essayer cela.
Premier cours
Septembre. La premiÚre semaine de cours. Des étudiants sont venus me voir. « Le groupe le plus indiscipliné », comme ils les appelaient.
23 personnes. « Programmes ».
Comme il se doit, je me suis d'abord prĂ©sentĂ©. Je leur ai sobrement expliquĂ© le contenu de la partie « D'abord un peu sur moi »âŠ
Ensuite, ça a commencĂ©. Ă la question « Qu'est-ce que vous savez faire ? », les Ă©tudiants (appelons-les ainsi) ont rĂ©pondu qu'ils savaient un peu plus que rien du tout (ce qui signifiait que certains d'entre eux savaient Ă quoi ressemblait MS VS et pouvaient crĂ©er un projet « Hello World »)⊠Des programmeurs. DerniĂšre annĂ©eâŠ
Puis, ils ont dĂ©taillĂ©, « en couleur », qu'on ne leur avait appris absolument rien et qu'en fait, ils Ă©taient déçus par la programmationâŠ
La plupart des jours précédant le prochain cours se sont déroulés ainsi :

⊠mais un jour avant celui-ci, j'ai eu l'idée de faire des efforts pour corriger la situation dans les esprits et la conscience de cette jeunesse. Et là , « Ostap s'est emporté ».
Introduction Ă la programmation
Pour le prochain cours, j'ai apporté⊠un puzzle.
Oui, oui. Un puzzle. «Comment dresser un dragon». Les rĂšgles Ă©taient simples. Le groupe Ă©tait divisĂ© en 3 Ă©quipes. Chaque Ă©quipe assemblait sa partie. L'une s'occupait de la forĂȘt, l'autre de la terre, la troisiĂšme du dragon au centre de l'image. Pendant qu'ils assemblaient le puzzle, je leur expliquais que assembler un puzzle, c'est aussi de la programmation, que les programmeurs utilisent souvent du code d'autres personnes, que dans chaque projet, il y a plusieurs Ă©quipes, fonctionnalitĂ©s, modulesâŠ
Progressivement, les étudiants les plus apathiques se sont également impliqués dans le processus.
Quand j'ai fini d'expliquer l'idée de la programmation dans les concepts d'affaires, de processus et⊠de puzzles, il était temps d'établir les rÚgles d'enseignement.
à chaque cours, chaque étudiant devait noter 10 termes IT dans son carnet. N'importe lesquels. Chacun avait les siens. L'idée était que je prenais le carnet d'un étudiant, je trouvais parmi tous les termes les plus applicables et je demandais à un autre étudiant. Lorsque l'autre étudiant disait «Je n'ai pas noté ce terme», ce n'était pas sanctionné (pour des raisons de bon sens), mais cet étudiant devait noter les termes «manquants» (comme tous ceux qui ne les avaient pas) et trouver leurs significations pour le cours suivant.
C'est ainsi que nous avons procédé. Chaque cours commençait par un tirage au sort dynamique concernant deux ou trois étudiants. Les garçons étaient motivés par ce processus.
Sujets des cours
Lorsqu'il s'agit d'enseigner, il est trÚs important de fournir aux apprenants de bons livres. à mon avis, le manuel idéal était le livre :

à une époque, j'ai dû le lire discrÚtement en l'embrassant avec Microsoft Visual Studio. Cela m'a permis de comprendre la programmation pratiquement depuis le début. C'était l'option idéale.
Tu enters modestement devant les Ă©tudiants et tu dis : «Pour devenir programmeurs, il vous suffit de lire et d'essayer tout ce qui est dans ce livre», et tu laisses le livre sur la table. L'essentiel est de ne pas confondre les livres dans ton sacâŠ
Avant chaque sujet, je devais bien sûr me préparer. Je lisais Lafore et plusieurs autres sources intéressantes sur Internet.
Il fallait expliquer presque depuis les bases. De plus, comprendre oĂč se trouvent les lacunes de connaissances des Ă©tudiants devait se faire de maniĂšre dĂ©ductive.
Tableaux -> Gestion de la mĂ©moire (constructeurs) -> RĂ©fĂ©rences -> Comment la mĂ©moire fonctionne -> Stockages -> Qu'est-ce qu'un stockage physique -> ReprĂ©sentation binaire des donnĂ©esâŠ

Un test de connaissances fondamentales en programmation. Je ne suis plus programmeur, je suis historien !
Et donc, des batailles historiques se déroulent pendant plusieurs paires d'affilée. Un jour, une secrétaire du département entre dans la salle et, voyant le groupe, écarquille les yeux, scrute et ferme la porte. Comme on m'a dit plus tard, elle était choquée de voir que CE groupe restait si silencieux et écoutait attentivement ce que je disais⊠Facile.
Travaux pratiques
Les premiĂšres informations appliquĂ©es - les premiers « labs ». Au total, en un semestre, le groupe a soumis 10 travaux pratiques. Dans les premiers, ils rĂ©alisaient de simples programmes console a+b, et dans les derniers, ils Ă©crivaient, mĂȘme si c'Ă©tait des applications console, mais assez intĂ©ressantes, comme le calcul de la valeur d'une intĂ©grale d'une fonction donnĂ©e arbitrairement par l'un des trois mĂ©thodes - Ă peu prĂšs les mĂȘmes problĂšmes qui Ă©taient Ă l'examen final - le travail de cours.
Cependant, l'approche d'Ă©valuation ne Ă©tait habituelle. Tout au long de mes Ă©tudes Ă l'universitĂ©, j'ai rencontrĂ© le fait qu'ĂȘtre intelligent et savoir soumettre des travaux de rapport ne sont pas la mĂȘme chose. Cela ne me convenait pas du tout.
â Les gars, j'ai rĂ©flĂ©chi. Ătablissons des relations « conceptuelles ». Si l'un d'entre vous pense que la programmation lui est inutile â la porte est lĂ -bas. Je vous enseigne gratuitement. Je veux ici seulement des passionnĂ©s curieux et concernĂ©s. Tous les autres, je vous prie de ne pas perdre notre temps commun â dis-je le premier jour de remise des travaux pratiques. AprĂšs ça, 5 personnes ont immĂ©diatement cessĂ© de venir aux cours. C'Ă©tait logique et prĂ©visible. Avec les autres, il Ă©tait possible d'essayer de faire quelque chose de raisonnable.
â ⊠je ne suis pas intĂ©ressĂ© Ă voir quelqu'un faire le travail pour vous, tant que c'est rendu. Vous n'ĂȘtes peut-ĂȘtre pas des programmeurs, mais vous devez ĂȘtre des gens obligatoirement.
Cela se présentait comme suit :
case étudiant modÚleUn étudiant vient pour soumettre son travail.
â Tu l'as fait toi-mĂȘme ?
â Oui.
â Qu'est-ce que c'est ?
â *rĂ©pond correctement*.
*Je pose encore quelques questions. Il répond correctement*
â acceptĂ©. Excellent.
case bavard â Tu l'as fait toi-mĂȘme ?
â Oui.
â Qu'est-ce que c'est ?
â *rĂ©pond INCORRECTEMENT / ne rĂ©pond pas*.
*Je pose encore quelques questions. MĂȘme rĂ©sultat*
â NON acceptĂ©. Insuffisant. J'attends pour la reprise.
case bon Ă©lĂšve â Tu l'as fait toi-mĂȘme ?
â Oui.
â Qu'est-ce que c'est ?
â *rĂ©pond correctement, mais de maniĂšre incertaine, hĂ©sitante*.
*Je pose encore quelques questions. MĂȘme rĂ©sultat*
â acceptĂ©. Bien.
case Ă©lĂšve moyen â Tu l'as fait toi-mĂȘme ?
â Non.
â Pourquoi ?
â C'est difficile. On m'a aidé⊠*nomme honnĂȘtement un Ă©lĂšve modĂšle du groupe*
â Tu t'es dĂ©brouillĂ© ?
â Oui, j'ai presque tout compris.
â Qu'est-ce que c'est ?
â *rĂ©pond correctement*.
*Je pose encore quelques questions. Il rĂ©pond plus ou moins correctement, parfois complĂštement Ă cĂŽtĂ©, mĂȘme si c'est 50-50 entre vrai et faux.*
â acceptĂ©. Bien.
Il n'est pas nĂ©cessaire de dĂ©crire tous les autres cas. Oui, un « bon Ă©lĂšve » peut ĂȘtre mĂ©content que le « mĂ©diocre » ait la mĂȘme note, en s'appuyant sur l'honnĂȘtetĂ©. Ă ce moment-lĂ , tout dĂ©pend de l'humeur. Soit je demande au « bon Ă©lĂšve » de regarder le sol, car « je vais partager une pincĂ©e de sagesse maintenant », puis j'expliquerai l'essence de l'approche, dĂ©crirai ce qui a plus de valeur dans la vie et prĂ©ciserai que le « mĂ©diocre » a eu beaucoup plus de mal Ă rĂ©ussir que lui, le « bon Ă©lĂšve », etc.
⊠soit, comme à l'époque, mon professeur, je dessinerai une petite dent dans la case du journal en face de cet insatisfait et la prochaine fois, je compléterai personnellement son travail de laboratoire. Juste comme ça. Pour ne pas « éteindre » ses camarades.

Notes
Le processus d'apprentissage, comme le reste du monde, est littéralement noyé dans des prix et des notes.
Les étudiants sont aussi des humains, cependant, je pense qu'il fallait « secouer » les « cadres » ici aussi.
Au cours du semestre, une tùche supplémentaire a été donnée à tous. S'inscrire sur , y téléverser un projet vide en C++, faire 2 mises à jour, les committer et les pousser. 15 points ont été attribués pour ces actions. Oui, oui, pas 4, pas 5, mais 15. Trois se sont débrouillés. Cela semblait compréhensible pour le psychotype étudiant, mais il y avait un autre cas par la suite.
Un jour, notre cours a Ă©tĂ© dĂ©placĂ© de telle maniĂšre qu'il est devenu le dernier, encore Ă travers la fenĂȘtre. Pourtant, 15 personnes sont quand mĂȘme venues. Je n'avais pas envie d'expliquer un nouveau sujet en l'honneur de ce hĂ©ros, car nous avions dĂ©jĂ suffisamment progressĂ© dans les sujets + le prochain sujet n'Ă©tait pas trĂšs simple pour des cerveaux fatiguĂ©s (les miens et ceux des Ă©tudiants). Alors, j'ai dĂ©cidĂ© de parler de philosophie.
â J'annonce une attraction de gĂ©nĂ©rositĂ© sans prĂ©cĂ©dent. Tout le monde me dit quelle note lui attribuer pour ce cours.
Tout le monde a voulu un « 5 ».
â ConsidĂ©rez que c'est dĂ©jĂ fait, â dis-je. Tout le monde Ă©tait ravi.
Silence.
â Mais pourquoi personne n'a-t-il voulu un 7- ou un 10- ?
Tout le monde a Ă©carquillĂ© les yeux et a commencĂ© Ă sourire bĂȘtement.
â Et vous allez le mettre ? Dans le journal ?! â une voix s'est fait entendre du fond de la classe.
â Facile ! â dis-je, â j'annonce un blitz sur les termes, celui qui rĂ©pondra Ă 10 de mes questions â je mets 20 points dans le journal, sans trucage, celui qui ne rĂ©pond pas â aura -10 (-10).
«L'Ă©quipe s'est animĂ©e, la polĂ©mique a commencé», chacun avait des notes honnĂȘtement gagnĂ©es. Deux se sont portĂ©s volontaires. Avec quelques inexactitudes, ils ont chacun rĂ©pondu Ă 10 questions sur la pile, la file, le constructeur, le destructeur, le ramasse-miettes, l'encapsulation, le polymorphisme, les fonctions de hachageâŠ
Un dessin a Ă©tĂ© fait Ă chacun dans le journal 20⊠mais l'importance du journal et des notes a chutĂ© aux yeux de chacun. Maintenant, je regrette de ne pas avoir demandĂ© s'ils voulaient «partager» leur note avec quelqu'un. Je pense qu'ils auraient partagé⊠DĂšs lors, chacun a passĂ© le «TP» avec des connaissances et de l'honnĂȘtetĂ©.
Ă partir de ce moment, un autre type de rendu de TP est apparu :
case honnĂȘtePasLuiMaisIlAessayĂ© â Tu l'as fait toi-mĂȘme ?
â Non.
â Pourquoi ?
â C'est difficile. On m'a aidé⊠*nomme honnĂȘtement un Ă©lĂšve modĂšle du groupe*
â Tu t'es dĂ©brouillĂ© ?
â Sergey NikolaĂŻevitch, honnĂȘtement â je ne comprends rien, j'ai Ă©crit mes commentaires Ă cĂŽtĂ© de chaque ligne â ce n'est pas pour moi, je vais devenir tracteuriste.
â Qu'est-ce que c'est ?
â *lit le commentaire Ă cĂŽtĂ© de la ligne*.
â âŠ
â âŠ
â Quelle est la diffĂ©rence entre un Belarus MTZ, un Don 500 et un K700 ?
â ??!.. Le premier est un tracteur Ă roues de production minçoise, souvent utilisĂ© dans les types de production agricole lĂ©gers et moyens. Il a des petites roues Ă l'avant et des grandes Ă l'arriĂšre. Le Don 500 est principalement une moissonneuse-batteuse, tandis que le K-700 «Kirovets» est un tracteur Ă roues soviĂ©tique polyvalent Ă haute capacitĂ© de franchissement, de classe de traction 5.
â compris. Bien (!!!).
â Merci, Sergey NikolaĂŻevitch !!!
Dans ma patrie, discuter de tracteurs est presque comme ici discuter de SOLID.
Génie
J'ai eu dans ma classe un GĂ©nie. Un Ă©tudiant qui est arrivĂ© trĂšs en retard dĂšs le premier cours et n'a pas voulu rassembler le puzzle avec tout le monde. Alors, je lui ai demandĂ© de faire ce que j'avais prĂ©vu pour tous Ă la prochaine leçon â Ă©crire sur une feuille Ă propos de lui, de ses hobbies, ce qui l'intĂ©resse. En rĂ©sultat, le «GĂ©nie» avait 2-3 lignes : quelque chose comme «je perçois la vanitĂ© de l'existence»âŠ
⊠Oh, mon Dieu, j'avais dans ma classe en une seule personne les deuxiĂšme Lao Tseu et KojimaâŠ

à ma grande surprise, il répondait brillamment aux questions sur les termes lors des deux premiers cours, mais l'effet a duré peu de temps. Le «Génie» a cessé d'assister aux cours et est venu seulement pour rendre son premier travail pratique, qu'il n'a pas réussi pour des raisons objectives. Ensuite, à cause des absences, il a accumulé des dettes, qu'il pensait je devais lui accorder, disons, «fraternellement». je devais simplement lui valider, disons, «fraternellement».
Le fait de ne pas assister aux cours + une estime de soi exagĂ©rĂ©e allaient Ă l'encontre des principes Ă©tablis pour ma participation aux cours. «Genius» n'avait que deux options â se rĂ©habiliter (le chemin attendu) ou abandonner les cours et espĂ©rer un «passable» attribuĂ© par le dĂ©partement pour se dĂ©barrasser d'un paresseux.
Eh bien, c'est «Genius»... il fallait agir de maniĂšre «gĂ©niale». Ce jeune homme n'a rien trouvĂ© de mieux que d'Ă©crire dans le chat gĂ©nĂ©ral sur VK (oĂč j'Ă©tais et tous les Ă©tudiants de ce groupe) un tirade pleine de colĂšre avec des insultes Ă mon encontre.
Ah... Quelle déception.
Ce qui m'a le plus frappĂ©, c'est qu'avant la fin du processus d'opĂ©ration punitive de la part de la direction de l'Ă©tablissement, il a dĂ©cidĂ© de s'excuser auprĂšs de moi. Pour quoi ? â cela m'est sincĂšrement incomprĂ©hensible. Ă ce moment-lĂ , j'Ă©tais dĂ©jĂ largement indĂ©pendant des critiques, surtout d'une telle bĂȘtise. Ma personnalitĂ© n'Ă©tait pas affectĂ©e, mais les processus â ce sont des processus, en tant qu'enseignant, je ne pouvais pas ne pas le signaler. Il s'est avĂ©rĂ© qu'il avait accumulĂ© tant de plaintes au cours de sa formation que ce cas Ă©tait le dernier. Il a Ă©tĂ© expulsĂ©. Depuis la derniĂšre annĂ©e du collĂšge ptu.
Peut-ĂȘtre qu'il m'observe dĂ©jĂ depuis longtemps avec la lunette d'un tireur d'Ă©lite, mais pour ĂȘtre honnĂȘte, cela m'est Ă©gal.
Ah, la génialité, tu es si impitoyable...
Ăpilogue
Pour moi personnellement, l'expĂ©rience d'enseignement a Ă©tĂ© l'une des plus enrichissantes. Cela m'a aidĂ© Ă consolider mes connaissances fondamentales en programmation aprĂšs mes Ă©tudes Ă l'institut. J'ai ressenti une confiance en moi dans ma spĂ©cialitĂ© choisie (le spectre des spĂ©cialitĂ©s disponibles). Il est particuliĂšrement important que «la groupe la plus indisciplinĂ©e» ait dĂ©veloppĂ© un respect et une amitiĂ© Ă mon Ă©gard â cela a beaucoup de valeur. J'ai rĂ©ussi Ă trouver un chemin vers leurs novateurs intĂ©rieurs, j'ai essayĂ© d'inculquer la rĂ©alitĂ©, plutĂŽt que ces prioritĂ©s stĂ©rĂ©otypĂ©es. Il est dommage que nous n'ayons pas atteint les «puzzles» en codage â quand chacun aurait dĂ» rĂ©aliser une partie du code, et, en rĂ©unissant toutes les parties, nous aurions obtenu un grand programme fonctionnel...
J'espÚre qu'un jour chacun d'eux ressentira cela... en attendant, ci-dessous se trouvent des captures d'écran avec les avis de quelques étudiants deux ans plus tard.

Il est encore tÎt pour tirer des conclusions sur le succÚs de la carriÚre de programmeur pour l'un d'eux, car la plupart de ce groupe est actuellement en études supérieures. Le temps le dira.
J'espÚre que l'article a été utile. Merci de votre attention!
Je vous souhaite succÚs créatif et bonne humeur, collÚgues !
Source : habr.com
