Nola Aprobetxatu Informatika Hezkuntzari

Programatzaile moderno gehienek unibertsitateetan jaso zuten hezkuntza. Denborak aurrera egin ahala, hori aldatuko da, baina orain gauzak horrela daude, IT enpresetako langile onak unibertsitateetatik etortzen direla oraindik. Post honetan, Stanislav Protasov, Acronis Unibertsitate Harremanetarako zuzendariak, etorkizuneko programatzaileentzako unibertsitate-prestakuntzaren ezaugarriei buruz duen ikuspegiari buruz hitz egiten du. Irakasleek, ikasleek eta haiek kontratatzen dituztenek aholku erabilgarriak aurki ditzakete ebakiaren azpian.

Nola Aprobetxatu Informatika Hezkuntzari

Azken 10 urteotan hainbat unibertsitatetan matematika, algoritmo, programazio lengoaiak eta ikaskuntza automatikoa irakasten aritu naiz. Gaur egun, Acronisen dudan karguaz gain, MIPTeko informatika teoriko eta aplikatuko saileko buruordea ere bada. Errusiako (eta ez bakarrik) unibertsitate onetan lan egin dudan esperientziatik, ikasleen informatika diziplinetan prestatzeari buruzko ohar batzuk egin nituen.

30 segundoko arauak ez du balio

Ziur nago 30 segundoko araua topatu duzula, zeinak dio programatzaile batek funtzio baten helburua ulertu behar duela bere kodeari begirada azkar bat egin ondoren. Aspaldi asmatu zen, eta harrezkero sistema eragile, hizkuntza, hardware eta algoritmo asko agertu dira. 12 urte daramatzat kodea idazten, baina duela gutxi produktu baten iturburu-kodea ikusi nuen, lehen begiratuan sorginkeria magikoak iruditu zitzaizkidan. Gaur egun, gai-eremuan murgilduta ez bazaude, 30 segundoko arauak funtzionatzeari uzten dio. Bestela, 30 ez ezik, 300 segundo ere ez dira nahikoak izango zer den jakiteko.

Adibidez, kontrolatzaileak idatzi nahi badituzu, eremu honetan murgildu eta kode zehatzeko milaka lerro irakurri beharko dituzu. Gai bat aztertzeko ikuspegi honekin, espezialista batek "fluxuaren sentimendua" garatzen du. Rapean bezala, errima onaren eta erritmo egokiaren sentsazioa arrazionalizazio berezirik gabe agertzen denean. Era berean, ondo trebatutako programatzaile batek erraz antzeman dezake eraginkortasunik gabeko kode edo kode txarra besterik gabe, estilo-urraketa bat non gertatu den edo hurbilketa ez-optimoa erabili den azterketa zehatz batean sartu gabe (baina sentimendu hori azaltzea oso zaila izan daiteke).

Espezializazioak eta gero eta konplexutasun handiagoak, lizentziaturak ez duela gehiago ematen arlo guztiak behar bezain sakonean aztertzeko aukera ematen du. Baina, hain zuzen, hezkuntza maila horretan lortu behar da ikuspegi bat. Ondoren, graduondoko eskolan edo lanean, denbora pixka bat eman beharko duzu irakasgaiaren arazo eta berezitasunetan murgiltzen, argota, programazio hizkuntzak eta lankideen kodea ikasten, artikuluak eta liburuak irakurtzen. Iruditzen zait hori dela bide bakarra, unibertsitatearen laguntzarekin, etorkizunerako "gurutza goratzeko" T formako espezialistak.

Zein programazio-lengoaia da onena unibertsitatean irakasteko?

Nola Aprobetxatu Informatika Hezkuntzari
Nire pozerako, unibertsitateko irakasleek jada utzi dute galderari erantzun zuzena bilatzeari: "Zein da programatzeko hizkuntzarik onena?" Zein den hobea - C# edo Java, Delphi edo C++ - ia desagertu egin da. Programazio-lengoaia berri askoren agerpenak eta esperientzia pedagogikoaren pilaketak ingurune akademikoan ulermen finkatua ekarri du: hizkuntza bakoitzak bere nitxoa du.

Programazio-lengoaia bat edo beste erabiliz irakasteko arazoak lehentasuna izateari utzi dio. Berdin du zein hizkuntzatan ematen den ikastaroa. Gauza nagusia hizkuntzaren adierazkortasun nahikoa da. Liburua"Prozesadore anitzeko programazioaren artea” behaketa honen ilustrazio ona da. Orain klasikoko edizio honetan, adibide guztiak Javan aurkezten dira - erakuslerik gabeko hizkuntza, baina Garbage Collector-ekin. Ia inork ez luke argudiatuko Java errendimendu handiko kode paraleloa idazteko aukera optimotik urrun dagoela. Baina hizkuntza egokia zen liburuan aurkeztutako kontzeptuak azaltzeko. Beste adibide bat - Makina ikasteko ikastaro klasikoa Andrew Nna, Matlab-en irakatsi zuen Octave ingurunean. Gaur egun beste programazio-lengoaia bat hauta dezakezu, baina zer desberdintasun du benetan ideiak eta planteamenduak garrantzitsuak badira?

Praktikoagoa eta errealitatetik gertuago

Aldi berean, azken urteotan unibertsitateetan askoz profesional gehiago egon dira. Lehen Errusiako unibertsitate-programak errealitatetik aldenduta egoteagatik aktiboki kritikatzen baziren, gaur egun ezin da gauza bera esan IT hezkuntzari buruz. Duela 10 urte ez zegoen ia irakaslerik industrian benetako esperientzia zuten unibertsitateetan. Gaur egun, gero eta maizago, sail espezializatu bateko klaseak ez dituzte lanaldi osoko informatika irakasleek ematen, baizik eta lan nagusitik aisialdian 1-2 ikastaro bakarrik ematen dituzten informatika adituek. Ikuspegi hau kalitate handiko langileen prestakuntzaren, ikastaroak eguneratzearen eta, noski, enpresan balizko langileen bilaketaren ikuspegitik justifikatzen da. Ez dut uste sekretua agerian utziko dudanik esanez MIPT-en oinarrizko sail bat onartzen dugula eta beste unibertsitate batzuekin harremanak sortzen ditugula, besteak beste, Acronisen karrera hasi dezaketen ikasleak prestatzeko.

Matematikaria ala programatzailea?

Nola Aprobetxatu Informatika Hezkuntzari
Lehen programazio lengoaien inguruan zebiltzan gerra santuak norabide filosofiko batera joan dira. Orain "programatzaileak" eta "matematikari" deitzen direnak eztabaidatzen ari dira. Printzipioz, eskola hauek bi hezkuntza-programatan banatu litezke, baina industria eskasa da oraindik halako sotiltasunak bereizten, eta unibertsitatez unibertsitatera antzeko hezkuntza dugu ikuspegi apur bat ezberdinarekin. Horrek esan nahi du bai ikasleak, bai lanean jarraituko duen enpresak falta diren piezekin osatu beharko duela ezagutzaren puzzlea.

Kode industriala hizkuntza ezberdinetan idazten duten unibertsitateetan profesionalen agerpenak ikasleei garapen trebetasun hobeak ematen dizkie. Liburutegi, esparru eta programazio teknika estandarren inplementazioak ondo ezagututa, programatzaile praktikatzaileek kode ona idazteko gogoa pizten diete ikasleei, azkar eta eraginkortasunez egiteko.

Trebetasun baliagarri horrek, baina, batzuetan, gurpila berrasmatzea gustuko dutenen agerpena dakar. Programazioko ikasleek honela pentsatzen dute: "Arazoa aurrez aurre konponduko duten beste 200 kode on bat idatzi behar dut?"

Matematika-heziketa klasikoa (adibidez, Matematika Fakultateko edo Matematika Aplikatua) jaso duten irakasleek ingurune sasi-zientifiko batean lan egiten dute, edo modelizazioaren eta datuen analisiaren alorrean. "Matematikariek" informatika arloko arazoak beste modu batera ikusten dituzte. Batez ere ez dute kodearekin funtzionatzen, algoritmo, teorema eta eredu formalekin baizik. Ikuspegi matematikoaren abantaila garrantzitsu bat ebatzi daitekeen eta zer ez denaren oinarrizko ulermena argia da. Eta nola konpondu.

Horren arabera, matematikako irakasleak programazioari buruz hitz egiten dute teoriarekiko joerarekin. "Matematikari"-tik datozen ikasleek sarritan ondo pentsatutako eta teorikoki goi mailako irtenbideak ekartzen dituzte, baina normalean hizkuntzaren ikuspuntutik ez-optimoak eta, sarritan, modu errazean idatzitakoak. Horrelako ikasle batek uste du bere helburu nagusia printzipioz horrelako arazoak konpontzeko gaitasuna erakustea dela. Baina ezarpena herrena izan daiteke.

Eskolan edo lehen urteetan programatzaile gisa hazitako haurrek β€œbizikleta oso polita” ekartzen dute, baina normalean ez da oso modu eraginkorrean funtzionatzen asintotikoki. Aitzitik, ez dute beren buruari sakonki teorizatzeko eta irtenbide optimoen bila testuliburuetara jotzeko zeregina, kode ederra hobetsi.

Unibertsitate ezberdinetan, ikasleen elkarrizketetan, normalean ikusten dut zein β€œeskola” dagoen bere hezkuntzaren azpian. Eta ez dut ia inoiz oreka perfekturik topatu oinarrizko hezkuntzan. Txikitan, nire hirian matematikako olinpiadak presta zintezkeen, baina ez zegoen programazio klubik. Orain, klubetan, haurrek Go eta Python "modan"-n programatzen ikasten dute. Hori dela eta, unibertsitateetan sartzeko mailan ere, desberdintasunak daude planteamenduetan. Uste dut garrantzitsua dela unibertsitate batean bi gaitasunak mantentzea, bestela, edo oinarri teoriko nahikorik ez duen espezialista bat, edo ikasi ez duen eta kode ona idatzi nahi ez duen pertsona bat etorriko da enpresara lanera.

Etorkizunerako nola "lanpa gurutzatu" egin T formako espezialistak?

Nola Aprobetxatu Informatika Hezkuntzari
Argi dago horrelako baldintzetan ikasleak besterik gabe aukeratzen duela gehien gustatzen zaiona. Irakasleak hurbilago dagoen ikuspuntua transmititzen du, besterik gabe. Baina denek mesede egingo dute kodea ederki idatzita badago, eta algoritmoen ikuspuntutik dena argia, arrazoizkoa eta eraginkorra.

  • IT horizonteak. Informatikako lizentziaturako lizentziatua prest dagoen espezialista bat da, aurreikuspen tekniko garatua duena, ziurrenik bere profila aukeratu duena. Baina junior mailan, ez dakigu zer egingo duen. Zientzian edo analitikan sartu daiteke, edo, aitzitik, kode kopuru itzela idatz dezake egunero. Beraz, ikasleari informatika arloan lan egiteko alderdi guztiak erakutsi eta tresna guztiak ezagutarazi behar zaizkio. Egokiena, ikastaro teorikoetako irakasleek praktikarekin duten lotura erakutsiko dute (eta alderantziz).
  • Hazkunde puntua. Ikaslearen beraren interesekoa da bere buruari muturreraino ez uztea. "Matematikaria" edo "programatzailea" zaren ulertzea ez da zaila. Arazo bat ebazteko lehen bulkada entzutea nahikoa da: zer egin nahi duzu - testu-liburuan begiratu ikuspegi optimoaren bila edo idatzi ondoren erabilgarriak izango diren funtzio pare bat? Horretan oinarrituta, zure ikaskuntzaren ibilbide osagarri gehiago eraiki dezakezu.
  • Ezagutza iturri alternatiboak. Gertatzen da programa orekatua dagoela, baina "Sistemaren programazioa" eta "Algoritmoak" pertsona guztiz desberdinek irakasten dituzte, eta ikasle batzuk lehen irakaslearengandik gertuago daude eta beste batzuk bigarrenarengandik. Baina irakaslea gustatzen ez bazaizu ere, hau ez da gai batzuk beste batzuen mesedetan alde batera uzteko arrazoia. Lizentziatuei beraiek jakintza iturriekin lan egiteko borondatea aurkitzea interesatzen zaie eta inolaz ere ez dira fidatzen β€œmatematika zientzien erregina da, nagusia algoritmoak ezagutzea” edo β€œkode onak beste guztia konpentsatzen du” bezalako iritzi erradikaletan.

Zure ezagutza teorian sakondu dezakezu literatura espezializatuetara eta lineako ikastaroetara joz. Programazio-lengoaietan zure gaitasunak hobetu ditzakezu Coursera, Udacity edo Stepik-en, non hainbat ikastaro aurkezten diren. Gainera, ikasleak sarritan hasten dira hizkuntza-ikastaro gogorrak ikusten, algoritmoen irakasleak matematika ondo ezagutzen duela uste badute, baina ezin dutela inplementazio-galdera konplexuak erantzun. Denak ez dira nirekin ados egongo, baina nire praktikan ondo frogatu da Yandex-en C++-n espezializazioa, zeinetan hizkuntzaren ezaugarri gero eta konplexuagoak sekuentzialki aztertzen diren. Oro har, aukeratu enpresen edo unibertsitate ospetsuen balorazio altuak dituen ikastaro bat.

Zeharkako gaitasunak

Nola Aprobetxatu Informatika Hezkuntzari
Unibertsitatetik edozein enpresatan lan egitera, startup batetik korporazio handi batera, goi-mailako unibertsitateetako ikasleak gaizki moldatzen dira benetako lan-ingurunera. Kontua da gaur egun unibertsitateetako ikasleei asko "haurtzaintzen" zaiela. Nahiz eta klase asko galdu, probak eta probak garaiz prestatu gabe, lo egin edo azterketa batera berandu iritsi ondoren, denek gainditu eta berriro egin dezakete, eta azkenean diploma bat jaso.

Hala ere, gaur egun, ikasleak helduen bizitzarako eta jarduera profesional independenterako prestatuta egon daitezen baldintza guztiak daude. Programatu ez ezik, komunikatu ere egin beharko dute. Eta hori ere irakatsi behar da. Unibertsitateek hainbat formatu dituzte gaitasun horiek garatzeko, baina, tamalez, askotan ez zaie behar besteko arreta ematen. Hala ere, aukera asko ditugu talde-lanerako trebetasun eraginkorrak lortzeko.

  • Enpresa-komunikazio idatzia. Zoritxarrez, unibertsitatea uzten duten graduatu gehienek ez dute korrespondentziaren protokoloari buruzko ideiarik. Berehalako mezularietan komunikazioaren berezitasuna gau eta egun mezuen trukean eta elkarrizketa-estiloaren eta hiztegi informalaren erabileran dago. Hala ere, posible izango litzateke idatzizko hizkera trebatzea ikaslea sailarekin eta unibertsitatearekin komunikatzen denean.

    Praktikan, kudeatzaileek proiektu handi bat zeregin txikietan deskonposatu beharraren aurrean izaten dute sarri. Horretarako, argi eta garbi deskribatu behar dituzu zeregin bakoitza eta bere osagaiak, garatzaile gazteek haiek eskatzen zaiena uler dezaten. Gaizki definitutako zereginak askotan zerbait berregin beharra dakar, eta horregatik idatzizko komunikazioan esperientziak talde banatuetan lan egiten laguntzen die graduatuei.

  • Zure lanaren emaitzen aurkezpen idatzia. Beren hezkuntza-proiektuak aurkezteko, goi mailako ikasleek Habr-en mezuak, artikulu zientifikoak eta txostenak besterik ez dituzte idatzi. Aukera asko daude horretarako - unibertsitate batzuetan bigarren urtean hasten dira ikastaroak. Saiakera kontrol modu gisa ere erabil ditzakezu; normalean, kazetaritza-artikulu batetik hurbilago daude. Planteamendu hori dagoeneko ezarri da National Research University Higher School of Economics-en.

    Enpresa batek garapenaren ikuspegi malgua praktikatzen badu, bere lanaren emaitzak zati txikiagoetan aurkeztu behar ditu, baina maizago. Horretarako, garrantzitsua da espezialista baten edo talde osoaren lanaren emaitzak laburki helarazi ahal izatea. Gainera, gaur egun, enpresa askok "berrikuspenak" egiten dituzte - urtero edo erdi-urtero. Langileek emaitzak eta lan-aukerak eztabaidatzen dituzte. Berrikuspen arrakastatsua karrera hazteko arrazoi nagusia da, hobariak, adibidez, Microsoft, Acronis edo Yandex-en. Bai, ondo programatu dezakezu, baina "txokoan eserita" espezialistak ere beti galduko du bere arrakasta ondo aurkezten dakienarekin.

  • Idazlan Akademikoa. Idazkera akademikoak aipamen berezia merezi du. Ikasleentzat erabilgarria da testu zientifikoak idazteko arauak ezagutzea, argudioak erabiliz, informazioa hainbat iturritan bilatuz eta iturri horien erreferentziak formateatzea. Ingelesez egitea komeni da, nazioarteko komunitate akademikoan askoz ere testu on gehiago baitaude, eta hainbat diziplinarako dagoeneko finkatuta baitaude emaitza zientifikoak aurkezteko txantiloiak. Jakina, idazteko trebetasun akademikoak ere beharrezkoak dira errusierazko argitalpenak prestatzerakoan, baina ingelesezko artikulu moderno onen adibide askoz gutxiago daude. Gaitasun horiek ikastaro egoki baten bidez lor daitezke, gaur egun hezkuntza-programa askotan sartzen dena.
  • Bilerak gidatzea. Ikasle gehienek ez dakite bilerak prestatzen, aktak hartzen eta datuak prozesatzen. Baina gaitasun hori unibertsitatean garatzen badugu, adibidez, talde-proiektuetan parte hartuz, lantokian denbora galtzea saihestu dezakegu. Honek ikasleen proiektu-lana gainbegiratzea eskatzen du, bilerak modu eraginkorrean nola egin irakasteko. Praktikan, horrek diru asko kostatzen dio korporazio bakoitzari; azken finean, soldata handia jasotzen duten hainbat pertsonek rally batean lan ordu bat ematen badute, horri dagokion etekina izatea nahi duzu.
  • Jendaurrean hitz egitea. Ikasle askok tesia defendatzen duten bitartean publikoki hitz egiteko beharraren aurrean aurkitzen dira. Eta denak ez daude horretarako prest. Ikasle asko ikusi ditut:
    • ikusleei bizkarra emanez,
    • kulunkatuz, batzordea trantzean sartu nahian,
    • hautsi boligrafoak, arkatzak eta erakusleak,
    • zirkuluetan ibiltzea
    • lurrera begiratu.

    Hau normala da pertsona batek lehenengo aldiz egiten duenean. Baina estres honekin lehenago hasi behar duzu lanean, zure ikastaroak giro atseginean defendatuz, zure ikaskideen artean.

    Gainera, korporazioetan ohiko praktika langile bati ideia bat proposatzeko eta horretarako finantzaketa, postu bat edo proiektu dedikatu bat jasotzeko aukera ematea da. Baina, pentsatzen baduzu, hau ikastaroen babes bera da, maila altuago batean. Zergatik ez landu lanbide-gaitasun erabilgarriak ikasten ari zaren bitartean?

Zer galdu nuen?

Post hau idazteko arrazoietako bat artikulua izan da, Tyumen Estatuko Unibertsitatearen webgunean argitaratua. Artikuluaren egilea atzerriko irakasleek nabaritutako errusiar ikasleen gabezietan bakarrik zentratzen da. Unibertsitate ezberdinetan nire irakaskuntzaren praktikak iradokitzen du Errusiako eskola eta goi-mailako hezkuntzak oinarri ona ematen duela. Ikasle errusiarrak matematikan eta algoritmoetan trebeak dira, eta errazagoa da haiekin komunikazio profesionala sortzea.

Atzerriko ikasleen kasuan, aitzitik, irakasle errusiar baten itxaropenak handiegiak izan daitezke batzuetan. Esaterako, matematikari dagokionez oinarrizko prestakuntza mailan, ezagutu ditudan indiar ikasleak errusiarren antzekoak dira. Hala ere, batzuetan ez dute ezagutza espezializaturik graduko ikasketak amaitzen direnean. Baliteke Europako ikasle onak eskola mailan matematikako prestakuntza ez hain sendoa izatea.

Eta unibertsitate batean ikasten edo lan egiten baduzu, orain komunikazio gaitasunak lan ditzakezu (zureak edo zure ikasleenak), zure oinarrizko oinarria zabaldu eta programazioa landu dezakezu. Horretarako, Errusiako hezkuntza sistemak aukera guztiak eskaintzen ditu - behar bezala erabili behar dituzu.

Pozik egongo naiz argitalpenaren iruzkinetan hezkuntzan oreka berdintzen laguntzen duten ikastaro eta metodoetarako estekak partekatzen badituzu, baita trebetasun bigunak hobetzeko beste modu batzuk ere unibertsitatean ikasten duzun bitartean.

Iturria: www.habr.com

Gehitu iruzkin berria