Organisateurs et assistants pédagogiques sur les programmes en ligne du CS Center

Le 14 novembre, le centre CS lance pour la troisième fois les programmes en ligne Algorithms and Efficient Computing, Mathematics for Developers et C ++, Java et Haskell Development. Ils sont créés pour vous aider à vous immerger dans un nouveau domaine et à jeter les bases de la formation et du travail en informatique.

Pour participer, vous devrez vous immerger dans l'atmosphère de la formation et réussir l'examen d'entrée. En savoir plus sur le programme, l'examen et les coûts sur code.stepik.org .

Dans l'intervalle, les assistants pédagogiques et le responsable des programmes de la dernière session vous diront comment la formation est organisée, qui vient étudier, comment et pourquoi les assistants effectuent des révisions de code pendant leurs études et ce qu'ils ont appris en participant aux programmes.

image

Comment sont organisés les programmes?


Le centre CS dispose de trois programmes en ligne basés sur la plateforme Stepik: «Algorithms and Efficient Computing» , «Mathematics for Developers» et «Development in C ++, Java and Haskell» . Chaque programme se compose de deux parties. Ce sont des cours préparés par des enseignants et des scientifiques expérimentés:

  • Algorithmes et informatique théorique dans le cadre d'un programme sur les algorithmes.
  • Matanalyse, mathématiques discrètes, algèbre linéaire et théorie des probabilités dans un programme de mathématiques pour développeurs.
  • Cours C ++, Java et Haskell dans le programme de langage de programmation en ligne.

Ainsi que des activités supplémentaires, par exemple, une révision du code, la résolution de problèmes théoriques pour des preuves, des consultations avec des assistants et des enseignants. Ils sont difficiles à mettre à l'échelle, donc la formation se déroule en petits groupes. Les activités aident à mieux comprendre le sujet et à obtenir des commentaires de haute qualité.

Artemy Pestretsov, assistant d'enseignement: «Il me semble que la révision de code est la principale caractéristique distinctive des programmes en ligne dans les langages et les algorithmes. Pour trouver la réponse à votre question, vous pouvez simplement google. C'est dur et long, mais possible. Mais Google ne procédera pas à un examen du code, il est donc très précieux. "

Chaque cours du programme dure environ deux mois. En finale, les étudiants doivent réussir un examen ou passer des tests dans tous les cours.

image

Qui sont nos étudiants?


Étudiants des programmes en ligne:

  • Ils veulent combler les lacunes en mathématiques ou en programmation. Par exemple, des développeurs expérimentés qui souhaitent resserrer la base mathématique.
  • Ils commencent à se familiariser avec la programmation et incluent les programmes du centre dans leur plan d'auto-éducation.
  • Préparez-vous à l'admission dans une magistrature ou un centre CS.
  • Des étudiants avec d'autres formations spécialisées qui ont décidé de changer radicalement de direction. Par exemple, des chimistes ou des éducateurs.

Artemy Pestretsov: «Nous avions un étudiant, un homme à son apogée, qui travaillait pour une société pétrolière et gazière et a pris un répit des délais parce qu'il était en voyage d'affaires au puits. C'est cool que des personnes ayant des expériences complètement différentes voient la technologie informatique et les mathématiques prendre de l'ampleur. Ce sont des gens accomplis qui peuvent vivre si bien, mais qui essaient d'apprendre quelque chose de nouveau, ils veulent se développer dans d'autres domaines. »

Mikhail Veselov, vmatm : «Tout le monde a un niveau différent: quelqu'un ne comprend pas complètement les choses de base dans le langage, mais quelqu'un vient en tant que programmeur Java ou Python, et vous pouvez maintenir une conversation comme« comment faire mieux ». L'essentiel est de ne pas se concentrer sur le meilleur des meilleurs, mais sur un niveau intermédiaire pour que le cours soit utile à tous. »

Comment est organisée la formation?


Plusieurs outils aident les organisateurs et les éducateurs à construire le processus.

Correspondance par la poste. Pour des annonces importantes et formelles.
Discutez avec les enseignants et les organisateurs. Les enfants commencent souvent à s'entraider dans le chat avant que l'enseignant ou l'assistant ne voit la question.
YouTrack. Pour des questions et des devoirs aux enseignants et assistants. Ici, vous pouvez poser des questions privées et discuter d'une solution individuelle: bien sûr, les étudiants ne peuvent pas partager des solutions entre eux.

Les organisateurs communiquent avec les étudiants et essaient de résoudre rapidement les problèmes. Kristina Smolnikova: «Si plusieurs étudiants demandent la même chose, alors c'est un problème commun et nous devons en parler à tout le monde.»

Comment les assistants aident


Examen du code

Les étudiants des programmes réussissent leurs devoirs et les assistants vérifient que leur code est propre et optimal. C'est ainsi que les gars ont organisé l'examen la dernière fois.

Artemy Pestretsov a essayé de répondre aux questions dans les 12 heures, car les élèves ont réussi les tâches à différents moments. J'ai lu le code, j'ai trouvé des problèmes du point de vue des normes, des pratiques de programmation générales, je suis allé au fond des détails, j'ai demandé une optimisation, suggéré quels noms de variables devraient être corrigés.

«Tout le monde écrit le code différemment, les gens ont des expériences différentes. Il y avait des étudiants qui ont pris et écrit la première fois. J'aime tout, cela fonctionne très bien et le test dure 25 secondes, car tout est parfait. Et il arrive que vous vous asseyiez et essayiez de comprendre pendant une heure pourquoi une personne a écrit un tel code. Il s'agit d'un processus éducatif absolument adéquat. Lorsque vous effectuez une révision du code dans votre vie, quelque chose comme ça se produit. "

Mikhail a essayé de construire le processus de manière indépendante pour chaque élève, afin qu'il n'y ait pas de situation "J'ai déjà expliqué cela à quelqu'un, demandez-lui." Il a donné un premier commentaire détaillé sur le problème, puis l'étudiant a posé des questions de clarification et a mis à jour la solution. Par approximation successive, ils ont obtenu un résultat qui convenait à la fois au mentor et à l'étudiant en termes de qualité.

«Au cours des une ou deux premières semaines de formation, les gens écrivent un code peu précis. Ils doivent soigneusement rappeler les normes qui existent à la fois en Python et en Java, parler des analyseurs de code automatiques pour les erreurs et les défauts évidents, afin de ne pas être distrait plus tard et pour que tout le semestre ne fasse pas sortir une personne du fait que sa césure est incorrecte. ou la virgule n'est pas là. "

Conseils pour ceux qui souhaitent effectuer une révision du code de formation

1. Si un élève a écrit un code de problème, ne demandez pas à le refaire. Il est important qu'il comprenne quel est le problème avec ce code particulier.

2. Ne mentez pas aux élèves. Il vaut mieux dire honnêtement "je ne sais pas" s'il n'y a aucun moyen de régler le problème. Artemy: «J'ai eu un élève qui a creusé beaucoup plus profondément que le programme, est descendu au niveau du fer, puis est remonté et lui et moi avons constamment roulé sur cet ascenseur d'abstractions. Je devais me souvenir de certaines choses, mais c'était très difficile à formuler à la volée. »

3. Il n'est pas nécessaire de se concentrer sur le fait que l'étudiant est un débutant: quand une personne fait quelque chose pour la première fois, elle prend la critique plus au sérieux, ne sait pas du tout comment cela se fait habituellement, et ce qu'elle fait et ce qui ne le fait pas. Il vaut mieux ne parler que du code et non des inconvénients de l’élève.

4. C'est formidable d'apprendre à répondre aux questions de manière «éducative». La tâche consiste à répondre non pas directement, mais à faire comprendre réellement à l'élève et à venir lui-même à la réponse. Artemy: «Dans 99% des cas, je pouvais immédiatement répondre à la question de l'élève, mais je ne pouvais pas souvent prendre et écrire la réponse tout de suite, car je devais peser beaucoup. Il a écrit cinquante lignes, effacées, a encore écrit. Je suis responsable de la réputation des cours et des connaissances des étudiants, et ce n'est pas une tâche facile. Un sentiment très cool survient lorsqu'un étudiant dit: "Oh, j'ai un aperçu!" Et moi aussi, comme ceci: "Il a un aperçu!".

5. Il est important d'être prudent et de ne pas critiquer fortement. Inspirer, mais pas trop, pour que l'élève ne pense pas qu'il fait tout chic. Ici, vous devez apprendre à gérer avec compétence le niveau de vos émotions.

6. Il est utile de recueillir des commentaires généraux et des erreurs du même type afin de gagner du temps. Vous pouvez enregistrer le premier de ces messages, puis simplement copier et ajouter des détails en réponse à d'autres sur la même question.

7. En raison de la différence de connaissances et d'expérience, certaines choses semblent évidentes, donc au début les assistants ne les décodent pas dans les commentaires pour les étudiants. Cela aide simplement à relire l'écrit et à ajouter ce qui semblait être banal. Michael: «Il me semble que plus j'aide avec la vérification des décisions, plus je suis clair pour les étudiants de première année dès le début. Je voudrais maintenant lire les premiers commentaires sur le code et dire: "Il aurait dû être plus précis, plus en détail."

Enseigner et aider est génial


Nous avons demandé aux enfants de nous dire quelle expérience utile ils avaient eue lors de la révision du code et des discussions avec les élèves.

Artemy: «La principale chose que j'ai apprise est la patience, l'enseignement. C'est une compétence complètement nouvelle, je maîtrise moi-même des domaines complètement nouveaux et non techniques. Je pense que l'enseignement m'aidera beaucoup lorsque je parlerai lors de conférences, parler avec des collègues ou présenter des projets lors d'un rassemblement. Je conseille à tout le monde de l'essayer! ”

Michael: «Cette expérience a aidé un peu plus à tolérer le fait que quelqu'un écrit le code différemment de moi. Surtout lorsque vous commencez à chercher une solution. J'ai moi-même suivi des cours en Python et Java et résolu les problèmes similaires différemment. Il a appelé les variables et les fonctions différemment. Et les décisions des gars sont toutes un peu différentes, car en programmation il n'y a pas de solution standard. Et là, il faut de la patience, pour ne pas dire: "Il fallait seulement faire ça!" Cela a aidé plus tard au travail à discuter des avantages et des inconvénients de solutions spécifiques, plutôt que des avantages et des inconvénients du fait que ce n'est pas moi qui l'ai fait. »

En savoir plus sur les programmes en ligne et les critiques des anciens

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


All Articles