Sveicināti, Habravieši!
Šajā rakstā es vēlos pastāstīt par savu pieredzi kā C++ programmēšanas pasniedzējam koledžā, kas atrodas tehniskajā universitātē. Tā bija unikāla pieredze dzīvē, kas mani daudz ko iemācīja. Kad runa ir par interesantiem faktiem no personīgās pagātnes, šis dzīves posms man nāk prātā pirmais.
Iesim.
Vispirms nedaudz par sevi.
2016. gadā es pabeidzu institūtu ar sarkano diplomu specialitātē "Automatizēto sistēmu informācijas drošība". Studiju laikā man vairākas reizes izdevās realizēt savu potenciālu, rakstot zinātniskos rakstus, piedaloties konkursos un projektu līdzfinansējuma programmās. 2015. gadā kļuvu par uzvarētāju vispārējā jauno zinātnieku konkursa "UMNIK". 2016. gadā, pirms studiju beigām, jau biju pieņemts darbā lielā organizācijā pilsētā kā "Informācijas drošības, kriptogrāfijas un šifrēšanas speciālists".
Īsumā, tā nu ir lieta. Var iedomāties, ka par programmēšanu man tomēr bija priekšstats.
Un tā, 2017. gads. Doktorantūra. Mani lūdza semestra laikā pasniegt C++ koledžā, par ko man solīja labus bonusus, lai atvieglotu doktorantūras slogu un neko vairāk.
Atklāti sakot, man patiešām bija interesanti izmēģināt sevi šajā aicinājumā.
Pirmais lekcijas bloks
Septembris. Pirmais mācību nedēļa. Pie manis nāca studenti. "Visnepaklausīgākā grupa" – tā viņus sauca.
23 cilvēki. "Programmētāji".
Kā pienākas, vispirms es sevi iepazīstināju. Klusām izstāstīju viņiem daļu no "Vispirms nedaudz par sevi"…
Tālāk sākās briesmīgās lietas. Atbildot uz jautājumu "Ko jūs protat?", studenti (nosauksim viņus tā) atbildēja, ka zina nedaudz vairāk par pilnīgu neko (nu tas nozīmēja, ka daži no viņiem zināja, kā izskatās MS VS un varēja izveidot projektu "Hello world")... Programmētāji. Pēdējais kurss...
Tad viņi sīki, "krāsaini" paskaidroja, ka viņi neko nav mācījušies un ka vispār viņi ir vīlušies programmēšanā...
Gandrīz visas dienas līdz nākamajai nodarbībai man pagāja šādi:

... taču dienu pirms tās radās doma pievērst spēkus situācijas uzlabošanai šo jauno prātos un apziņā. Un tad "Ostaps aizgāja".
Ievads programmēšanā
Nākamajai nodarbībai es atnesu... puzli.
Jā-jā. Puzle. "Kā tamejēt pūķi". Noteikumi bija vienkārši. Grupa tika sadalīta trijās komandās. Katrs komanda savāca savu daļu. Vieni — mežs, citi — zeme, trešie — pūķis attēla centrā. Kamēr viņi visu divu stundu laikā salika puzli, es stāstīju, ka puzles salikšana — tas arī ir programmēšana, ka programmētāji bieži izmanto citu kodu, ka katrā projektā ir vairākas dažādas komandas, funkcijas, moduļi…
Pakāpeniski procesam piesaistījās arī visvājākie studenti.
Kad es beidzu iepazīstināt ar programmēšanas ideju biznesa, procesu un… puzļu konceptos, pienāca laiks noteikt apmācības noteikumus.
Katram nodarbībā katram studentam bija jāizraksta pieci IT termini. Jebkuri. Katram savi. Jēga ir tāda, ka es ņēmu viena studenta piezīmju grāmatiņu, atradu starp visiem terminiem maksimāli praktiskos un vaicāju par tiem citam studentam. Kad cits students saka, "Es šo terminu neesmu pierakstījis", tas nebija sodāms (pateicoties veselo saprātu), taču tas students bija jāizraksta "trūkstošie" termini (kā arī visiem, kuriem to nebija) un jāatrod to nozīmes līdz nākamajai nodarbībai.
Tā mēs visu izdarījām. Katras nodarbības sākums bija jautra randomizācija attiecībā uz diviem-trijiem studentiem. Puiši ieguva azartu šajā procesā.
Nodarbību tēmas
Uzsākot apmācību ir ļoti svarīgi dot studentiem labu literatūru. Manuprāt, ideāls mācību līdzeklis bija grāmata:

Savā laikā man nācās nemanāmi to lasīt rokās ar Microsoft Visual Studio. Tad izdevās saprast programmēšanu praktiski no nulles. Ideāla iespēja.
Tu ieej pie studentiem un saki: "Lai kļūtu par programmētājiem, jums tikai jāizlasa un jāmēģina viss, kas šajā grāmatā", un nosvied grāmatu uz galda. Galvenais — nesajaukt grāmatas savā mugursomā…
Pirms katras tēmas man, protams, bija jāgatavojas rūpīgi. Lasīju to pašu Laforu un vēl dažus interesantus avotus no tīkla.
Bija jāpaskaidro gandrīz no pamatiem. Turklāt bija jānoskaidro, kur studentiem trūkst pamatzināšanu, deduktīvi.
Masīvi -> Darbs ar atmiņu (konstruktori) -> Atskaites -> Kā darbojas atmiņa -> Glabātāji -> Kas ir fiziskais glabātājs -> Divizdrabainā datu attēlošana…

Ļoti nopietns zināšanu par programmēšanu pamatu faktu testēšanas eksāmens. Es vairs neesmu programmētājs, es esmu vēsturnieks!
Un tā nu ir, vēsturiskās cīņas notiek vairākas reizes pēc kārtas. Kādu reizi mūsu kabinetā ieiet katedras sekretāre, izbrīnīta skatās uz grupu un aizver durvis. Kā man vēlāk paziņoja, viņa bija šokā, ka ŠĪ grupa sēdēja tik klusi un uzmanīgi klausījās... Tīk, viegli.
Laboratorijas darbi
Pirmie praktiskie ziņojumi — pirmie "laboratorijas darbi". Pusgada laikā grupa nodeva 10 laboratorijas darbus. Pirmajā viņi veica visvienkāršākos konsoles a+b, bet pēdējie bija interesanti, lai arī konsoles, piemēram, tādu aplikāciju rakstīšana kā integrāļa vērtības aprēķināšana kādai arbitrāri noteiktai funkcijai ar vienu no trim metodēm — aptuveni tādas pašas uzdevumi bija beigu attiecībā uz kursa darbu.
Tikai pieņemšanas pieejas nees bija ierasta. Visu mācību laiku koledžā es saskāros ar to, ka būt gudram un spēt nodepot atbildes darbus — tas nav viens un tas pats. Man tas ļoti nepatika.
— Bērni, es te domāju. Apskatīsim "jēdzienu" attiecības. Ja kāds no jums domā, ka programmēšana viņam nav nepieciešama — durvis ir tur. Es jums mācu par brīvu. Man gribas redzēt šeit tikai ziņkārīgus, nedusmojošus un vienaldzīgus entuziastus. Visus pārējos lūdzu netērēt kopējo laiku — es teicu pirmajā dienā, kad pieņēmu laboratorijas darbus. Pēc tam 5 cilvēki uzreiz pārstāja apmeklēt nodarbības. Tas bija loģiski un gaidāmi. Ar pārējiem mēģināt izdarīt kaut ko saprātīgu bija iespējams.
— ... man neinteresē skatīties, kā kāds ir jums izdarījis darbu, tikko lai nokārtotu. Jūs varētu nebūt programmētāji, bet cilvēkiem jums manās nodarbībās būt jābūt.
Izskatījās tas šādi:
gadījums izcilsSēž pie manis students, lai nodotu darbu.
— Tu pats izdarīji?
— Jā.
— Kas tas ir?
— *atbild pareizi*.
*Prasu par vēl pāris punktiem. Atbild pareizi*
— pieņemts. Labi.
gadījums muldētājs — Tu pats izdarīji?
— Jā.
— Kas tas ir?
— *atbild NEpareizi / neizdodas atbildēt*.
*Prasu par vēl pāris punktiem. Tas pats rezultāts*
— NE pieņemts. NEIZPILDĪTS. Gaida uz pārsniegšanu.
gadījums labists — Tu pats izdarīji?
— Jā.
— Kas tas ir?
— *atbild pareizi, bet ne pārliecinoši, īsti nesaprot*.
*Prasu par vēl pāris punktiem. Tas pats rezultāts*
— pieņemts. Labi.
gadījums viduvējs — Tu pats izdarīji?
— Nē.
— Kāpēc?
— Grūti. Man palīdzēja… *godīgi nosaucot izcilnieku no grupas*
— Vai tu saprati?
— Jā, gandrīz visu sapratu.
— Kas tas ir?
— *atbild pareizi*.
*Jautāju vēl par pāris jautājumiem. Atbild viegli pareizi, dažreiz pilnīgi garām, lai arī 50 uz 50 pareizi un nepareizi*
— pieņemts. Labi.
Nav jēgas aprakstīt visus pārējos gadījumus. Jā, «labs students» var būt neapmierināts, ka «trīnieks» saņem tādu pašu atzīmi, balstoties uz godīgumu. Tā tad viss ir atkarīgs no noskaņojuma. Vai nu es lūdzu «labāko studentu» paskatīties uz grīdu, jo «tagad es izdalīšu mazu gudrību», un pēc tam izstāstīšu pieeju, aprakstīšu, kas dzīvē ir daudz vērtīgāks un skaidrošu, ka «trīniekam» bija daudz grūtāk nokārtot, nekā viņam, «labajam studentam», utt...
… vai, kā tolaik, mans pasniedzējs, uzzīmēšu mazu zobu žurnāla ailē pretī šim neapmierinātajam studentam un nākamajā reizē personīgi viņam papildināšu laboratorijas darbu. Vienkārši tāpat. Lai ne «slāpa» pārējos.

Atzīmes
Mācību process, tāpat kā visa pasaule, burtiski peld cenās un atzīmēs.
Students — arī cilvēki, taču, manuprāt, «rāmji» būtu jā «pakustina» arī šeit.
Semestra laikā visiem tika dota bonusu uzdevums. Reģistrēties uz , augšupielādēt tukšu projektu C++, veikt 2 atjauninājumus, apstiprināt tos un ievietot. Par šiem soļiem atzīmēja 15. Jā-jā, ne 4, ne 5, bet 15. Trīs saprata. Studentu psihotips tas bija saprotams, tomēr pēc tam bija cits gadījums.
Kādu reizi mūsu stunda tika pārcelta tā, ka tā kļuva par pēdējo, turklāt ar pauzi starp stundām. Tomēr uz to atnāca 15 cilvēku. Man negribējās skaidrot jauno tēmu šāda varoņdarba dēļ, jo mēs pa tēmām jau bijām diezgan labi virzījušies + nākamā tēma nebija pārāk vienkārša nogurušiem prātiem (maniem un studentu). Tāpēc es izlēmu runāt par filozofiju.
— Pasludinu nebijušas dāsnuma izrādes. Visi man saka, kādu atzīmi man viņam ielikt par šodienas stundu.
Visi gribēja piecu.
— uzskatiet, ka tā jau ir, — es teicu. Visi priecājās.
Klusa.
— Bet kāpēc neviens negribēja 7-ku vai 10-ku?
Visi izstiepa acis un sākās muļķīgas smaidīšana.
— Vai jūs tiešām ieliksiet? Žurnālā?! — izskanēja balss no aizmugurējā sola.
— Jā, viegli! — es teicu, — pasludinu blitzu par terminiem, kurš atbildēs uz 10 maniem jautājumiem — ielieku 20-nieku žurnālā, bez ķeršanās, kurš neatbildēs — tam -10 (mīnus desmit).
«Komanda kļuva dzīvāka, sākās diskusijas», visiem bija godam nopelnītas atzīmes. Divi pieteicās. Ar nelielām neskaidrībām viņi kārtīgi atbildēja uz 10 jautājumiem par steku, rindu, konstruktoru, destruktoru, atkritumu savācēju, inokulāciju, polimorfismu, hash funkcijām…
Katram žurnālā bija uzzīmēts 20-s… bet žurnāla un atzīmju nozīme katra acīs bija samazinājusies. Tagad man žēl, ka nepalūdzu viņiem «padalīties» ar savu atzīmi ar kādu. Man šķiet, ka viņi varētu padalīties… No šī brīža ikviens nodeva «laboratoriju» ar zinošanu un godīgumu.
No šī brīža parādījās vēl viens laboratorijas nodošanas veids:
case godīgiNeViņšBetViņšMēģināja — Tu pats izdarīji?
— Nē.
— Kāpēc?
— Grūti. Man palīdzēja… *godīgi nosaucot izcilnieku no grupas*
— Vai tu saprati?
— Sergej Nikolajevič, godīgi runājot — nekas nav skaidrs, es pats uzrakstīju komentārus blakus katram rindkopai — nu tas nav mans, es būšu traktors
— Kas tas ir?
— *nolasa komentāru blakus rindai*.
— …
— …
— Kā atšķiras Belorus MTZ no Don 500 un no K700?
— ??!.. Pirmais — riteņu traktors no Minskas, bieži izmantots vieglo un vidējo lauksaimniecības ražošanā. Tam priekšā ir mazi riteņi, bet aizmugurē — lieli. Don 500 — tas ir galvenokārt novācējs, bet K-700 «Kirovečs» — padomju riteņu traktors vispārējai lietošanai ar paaugstinātu pārgājienu, vilkmes klase 5.
— pieņemts. Labi (!!!).
— Paldies, Sergej Nikolajevič!!!
Manā dzimtenē runāt par traktoriem — tas ir gandrīz kā šeit par SOLID.
Gēnijs
Manā grupā bija Gēnijs. Students, kurš no pirmās nodarbības ļoti nokavējās un nebija kopā ar visiem vākt puzli. Tāpēc es lūdzu viņu izdarīt to, ko visiem biju plānojis nākamajai nodarbībai — uzrakstīt uz lapas par sevi, ar ko viņš nodarbojas, kas viņam interesē. Saskaņā ar rezultātiem Gēnijam bija 2-3 rindiņas: kaut kas līdzīgs «iepazīstu eksistences bezjēdzību»…
… O, Dievs, manā grupā vienā personā vienlaikus ir divi Lao Tzu un Kodžima …

Manai pārsteigumam pirmajās divās stundās viņš patiešām spoži atbildēja uz jautājumiem par termino-logiem, taču efekts ilga ne ilgi. Gēnijs pārtrauca apmeklēt nodarbības un nākamreiz nāca tikai uz pirmās laboratorijas darba nodošanu, kuru veiksmīgi nenodeva objektīvu iemeslu dēļ. Pēc tam viņam sakrājās parādi sakarā ar prombūtnēm, kuras, viņš uzskatīja, man bija vienkārši jāatzīst, sakot, «pa brāļa»..
Nepieciešamība nepiedalīties lekcijās un izteikta augstprātība bija pretrunā ar noteiktiem manu nodarbību apmeklēšanas principiem. «Gēnijam» palika tikai divas iespējas — rehabilitēties (gaidāmais ceļš) vai ignorēt nodarbības, cerot uz «trijnieku», ko piešķirtu dekānāts, lai atbrīvotos no bezdarbnieka.
Nu, tas taču ir «Gēnijs»… šeit ātri jārīkojas «ģeniāli». Šis jauniem cilvēks nesaprata neko labāku, kā uzrakstīt vispārējā dialogā VK (kur biju es un visi šīs grupas studenti) dusmīgu tirādi ar lamuvārdiem un aizskarošiem izteikumiem manā virzienā.
Jā… vilšanās.
Visvairāk pārsteidza tas, ka pirms sodīšanas procesa noslēguma no koledžas administraācijas puses viņš nolēma atvainoties man. Par ko? — man patiešām neskaidrs. Tajā brīdī es jau sen biju neatkarīgs no kritikas, jo īpaši no tādas, acīmredzami, muļķīgas. Mana personība netika aizskarta, bet procesa — ir process, kā pasniedzējam es nevarēju par to neziņot. Izrādījās, ka viņam studiju laikā bija uzkrājušās tik daudz sūdzību, ka šis gadījums izrādījās pēdējais. Viņu izslēdza no pēdējā kursa profesionālajā izglītībā.
Varbūt viņš jau sen vēroja mani caur snaipera optiku, bet man, ja godīgi, tas ir vienaldzīgi.
Ah, ģeni, tu taču esi bezsirdīga…
Epils
Personīgi man mācīšanas pieredze bija viena no mācīgākajām. Tas man palīdzēja nostiprināt fundamentālās zināšanas programmēšanā pēc studijām. Es jutos pārliecināts par izvēlēto profesiju (pieejamo profesiju spektru). Īpaša nozīme ir tam, ka «visnepaklausīgā grupa» ieguva man cieņu un draudzību — tas ir dārgi. Es spēju atrast ceļu uz viņu iekšējiem inovatīviem cilvēkiem, centos ieaudzināt realitāti, nevis šos šabloniskos prioritātes. Žēl, ka mēs nenonācām līdz «puzlēm» kodēšanā — kad katram jāizdara daļa koda, un, apvienojot visas daļas vienā, mēs iegūtu lielu strādājošu programmu…
Ceru, ka kādu dienu katrs no viņiem to sajutīs… bet pagaidām zemāk ir apkopoti ekrānšāviņi ar vairāku studentu atsauksmēm divu gadu laikā.

Raisīt secinājumus par programmētāja karjeras panākumiem kādam no viņiem pagaidām ir pāragri, jo šobrīd lielākā daļa šīs grupas mācās augstskolā. Laiks rādīs.
Ceru, ka raksts bija noderīgs. Paldies par uzmanību!
Radošus panākumus un pozitīvu garastāvokli, kolēģi!
Avots: habr.com
