Armastusega Stepik: haridusplatvorm Hyperskill

Tahan teiega rääkida sellest, miks me parandame sanitaartehnilisi töid sagedamini, kui kirjutame sellest lõputöid, erinevatest lähenemisviisidest programmeerimise õpetamisel ja kuidas proovime üht neist oma uues tootes Hyperskill rakendada.

Kui teile ei meeldi pikad tutvustused, minge otse programmeerimist käsitleva lõigu juurde. Aga see saab olema vähem lõbus.

Armastusega Stepik: haridusplatvorm Hyperskill

Lüüriline kõrvalepõige

Kujutagem ette teatud noort daami Mašat. Täna kavatses Maša rahus puuvilju pesta ja filmi vaadata, kuid halb õnn: äkki avastas ta, et köögivalamu on ummistunud. Mida sellega peale hakata, pole veel selge. Saate selle probleemi lõputult edasi lükata, kuid praegu on vaba aega, nii et Masha otsustab probleemiga kohe tegeleda. Terve mõistus soovitab kahte võimalust: a) kutsuda torumees b) ise hakkama saada. Noor daam valib teise võimaluse ja hakkab YouTube'i juhiseid uurima. Maša vaatab kasutaja Vasya_the_plumber nõuandeid järgides kraanikausi alla ja näeb mitmest osast koosnevat plasttoru. Tüdruk keerab ettevaatlikult ühe tüki kraanikausi põhjast lahti ja ei leia midagi. Alumine torujupp osutub tundmatu ainega tihedalt ummistunud ja isegi laualt leitud hark ei saa ummistusega hakkama. Interneti-eksperdid annavad pettumust valmistavaid prognoose: osa tuleb muuta. Maša otsib kaardilt lähima poe, võtab õnnetu torujupi kaasa ja ostab samasuguse, ainult uue. Müüja nõuandel haarab Maša ennetuseks ka uue kurna. Ülesanne on lõpetatud: kraanikauss töötab jälle nii, nagu peab, ja selle peategelane on vahepeal õppinud järgmist:

  • Valamu all olevaid torusid saate ise lahti keerata ja pingutada;
  • Lähim sanitaartehniline kauplus on Mashina korterist pooleteise kilomeetri kaugusel.

Tõenäoliselt ei pannud Masha isegi tähele, kui palju uusi asju ta oli õppinud ja õppinud, sest ta oli mures omaenda mugavuse pärast tulevikus ning samal ajal filmi vaatamise ja õuna pesemise pärast. Järgmine kord, kui sarnane probleem tekib, lahendab neiu selle mitu korda kiiremini. Tegelikult ei viinud Maša lihtsalt maailma tagasi tavalisse olekusse; ta õppis induktiivselt, see tähendab erijuhtudel ja praktikale orienteeritudst pigem asju tehes kui neid üksikasjalikult ja ette uurides.

Kõik oleks võinud kujuneda teisiti. Oletame, et Maša istub õhtul toolil ja mõistab ühtäkki, et ta pole vaimselt ja füüsiliselt valmis kraanikausi ummistumiseks. Ta astub kiiresti torulukkseppade akadeemiasse, kus uuritakse valamute, torude ja võimalike ühenduste tüüpe, sanitaartehniliste probleemide klassifikatsiooni ja võimalikke lahendusi. Masha ei maga öösel, õpib termineid ja nimesid pähe. Võib-olla kirjutab ta isegi doktoritööd teoreetilisest toruteadusest, kus ta arutleb kummitihendite üle. Lõpuks, pärast tunnistuse kättesaamist, vaatab Masha uhkusega köögis ringi ja veendunult, et nüüd saab väikseimgi kraanikausi probleem ühe sõrmenipsuga lahendatud. Selle stsenaariumi järgi õppis tüdruk deduktiivselt, liikudes üldiselt konkreetsele ja oli rohkem keskendunud teooria.

Niisiis, milline lähenemisviis on parim? Valamu ja ummistuse korral - esimene ja järgmistel põhjustel:

  1. Kui oluline on ainult töötav kraanikauss, siis piisab teadmisest ainult seda, mis seda konkreetset piirkonda puudutab. Kui Masha mõistab, et tal napib teadmisi, leiab ta kindlasti võimaluse rohkem õppida.
  2. Entsüklopeedilised teadmised ei pruugi reaalses olukorras aktiveeruda, sest harjumust pole välja kujunenud. Toimingute järjestuse tundmaõppimiseks on mõttekas nende kohta mitte lugeda, vaid neid sooritada.

Jätame vaese Maša rahule ja liigume edasi õppeprotsessi kui sellise juurde.

Programmeerimine: õppida või teha?

Oleme harjunud arvama, et selleks, et areneda ja saada eksperdiks võõral alal, tuleb esmalt minna ülikooli või vähemalt registreeruda kursustele. Kuulame regulaarselt, mida nad meile räägivad, ja täidame ülesandeid. Kui meil on käes ihaldatud diplom või tunnistus, oleme hetkega eksinud, sest me ei mõista ikka veel, miks meil on nii palju teavet vaja ja kuidas seda konkreetselt rakendada. See pole probleem, kui teie järgmised plaanid on kirjutada teaduslikke töid ja reisida nendega konverentsidele. Muidu tasub pürgida oskuste poole ehk konkreetseid asju uuesti teha ja teha, proovida ja eksida, et kauaks meeles pidada, mida on kõige parem mitte teha.

Üks valdkondi, kus “karm käsi” või “teemantsilm” käib käsikäes laia silmaringiga, on programmeerimine. Kogenud arendajatega vesteldes kuulete julgeid lugusid, kus inimene õppis noorest peale matemaatikat/füüsikat/õpetust ning seejärel väsis ja kolis backend’i. Leidub ka kõrghariduseta programmeerijaid! Esiteks, arendaja juures ei hinnata mitte tunnistust ega diplomit, vaid kirjutatud programmide, skriptide ja veebisaitide kogust ja kvaliteeti.

"Aga oodake!", vaidlete vastu: "Kõlab ilusti - võta ja tee!" Ma ei saa lihtsalt endale programmi kirjutada, kui ma pole varem programmeerinud! Minu jaoks on oluline aru saada, kuhu kirjutada, kuidas põhimõtteliselt kompilaatoriga programmeerimiskeeles rääkida. See pole nagu torumehe telefoninumbri leidmine Google'ist.

Selles on ka kibe tõde. Üks harjumatu aspekt viib teiseni, mis omakorda viib kolmandani ning peagi muutub see protsess mustkunstniku etenduseks, kes jätkab kinniseotud taskurätikute välja tõmbamist ega saa neid silindrist välja. Protsess on ausalt öeldes ebameeldiv, juba 5. “taskurätikuks” tundub, et teadmatuse sügavus on Mariaani süviku lähedal. Selle alternatiiviks on samad loengud 10 tüüpi muutujatest, 3 tüüpi tsüklitest ja 150 potentsiaalselt kasulikust teegist. Kurb küll.

Hüperoskus: ehitasime, ehitasime ja lõpuks ehitasime

Mõtlesime sellele probleemile kaua. Meie ajaveebi viimase postituse kuupäev räägib palju sellest, kui kaua oleme mõelnud. Pärast kõiki vaidlusi ja katseid integreerida uus lähenemine Stepikule, jõudsime... teistsugusele saidile. Võib-olla olete sellest JetBrainsi akadeemia osana juba kuulnud. Nimetasime selle projektipõhisesse õppesse sisse ehitatud Hyperskilliks, sidusime sellega Java teadmistebaasi ja kasutasime EduToolsi meeskonna tuge. Ja nüüd rohkem üksikasju.

Armastusega Stepik: haridusplatvorm Hyperskill

Konkreetne eesmärk. Pakume projektide “menüüd”, st. programmid, mida saate meie abiga kirjutada. Nende hulgas on tic-tac-toe, isiklik abistaja, plokiahel, otsingumootor jne. Projektid koosnevad 5-6 etapist; Iga etapi tulemuseks on valmis programm. "Miks meil siis muid etappe vaja, kui kõik on juba esimeses korras?" Täname küsimuse eest. Iga sammuga muutub programm funktsionaalsemaks või kiiremaks. Alguses võtab kood 10 rida, kuid lõpuks ei pruugi see isegi 500 sisse mahtuda.

Natuke teooriat. Programmeerimisest sõnagi teadmata on võimatu maha istuda ja isegi Hello Worldi kirjutada. Seetõttu näete projekti igas etapis, milliseid teoreetilisi põhitõdesid peate valdama ja mis kõige tähtsam, kust neid hankida. Põhitõed asuvad ka Hyperskilli jaotises „Teadmiste kaart”. Kui projekti esimeses etapis ei pea õpilased failist andmeid lugema, ei pruugi nad jätkata. Nad õpivad seda ise hiljem üldiseks arenguks või vajavad nad seda järgmises etapis.

Armastusega Stepik: haridusplatvorm Hyperskill

Teadmiste kaart. See näitab, milliseid teemasid olete juba õppinud ja kuidas need on omavahel seotud. Avage mõni armas top. Saate selle läbi sirvida, kuid soovitame teil teha väikeseid ülesandeid, et veenduda, et teave teile pähe mahub. Esiteks annab platvorm teile testid, mille järel annab teile paar programmeerimisülesannet. Kui kood koostab ja testid läbib, võrrelge seda võrdluslahendusega, mõnikord aitab see välja selgitada optimaalsema viisi selle realiseerimiseks. Või veenduge, et teie lahendus on juba suurepärane.

Ei midagi ekstra. Ootame nii “rohelisi” kasutajaid kui ka kogenud arendajaid. Kui oled juba programme kirjutanud, siis pole vahet, me ei sunni sind 2+2 lisama ega rida uuesti keerama. Kohe soovitud tasemele jõudmiseks märkige registreerumisel, millega olete juba tuttav, ja valige keerulisem projekt. Ärge kartke end üle hinnata: kui midagi juhtub, võite alati naasta teadmiste kaardil unustatud teema juurde.

Armastusega Stepik: haridusplatvorm Hyperskill

Tööriistad Väikeste koodijuppide kirjutamine saidi spetsiaalsesse aknasse on suurepärane, kuid tõeline programmeerimine algab arenduskeskkonnas töötamisest (Iintegreeritud Darendamine Ekeskkond). Kogenud programmeerijad teavad lisaks koodi kirjutamisele ka graafilise liidese kujundamist, erinevate failide projekti kokkupanemist, täiendavate arendustööriistade kasutamist ning osa nendest protsessidest hoolitseb IDE. Miks mitte õppida neid oskusi programmeerimist õppides? Siin tuleb appi JetBrains ja IntelliJ IDEA Community Educational eriversioon koos eelinstallitud EduToolsi pistikprogrammiga. Sellises IDE-s saate osaleda koolitustel, kontrollida lahendatud probleeme ja vaadata projekti näpunäiteid, kui olete midagi unustanud. Ärge muretsege, kui kuulete sõna "plugin" või "IDE" esimest korda: me ütleme teile, mis see on ja kuidas see minimaalsete kannatustega oma arvutisse või sülearvutisse installida. Saage teooriast aru ja minge seejärel IDE-sse ja viige projekti järgmine etapp kohe läbi.

Tähtajad. Pole ühtegi neist! Kes me oleme, et koputada pähe ja öelda, millises tempos programmi kirjutada? Kui teile meeldib koodi kirjutamine ja soovite selle lõpetada, lõpetate selle täna või homme. Tehke arendustööd enda rõõmuks.

Vead. Kõik tunnistavad neid, nii ka sina projekti ühes etapis ja siis see etapp automaatteste ei läbi. Noh, peate ise välja mõtlema, mis valesti läks. Võiksime teile öelda, kus viga peitub, kuid kas see õpetaks teile koodi hoolikalt kirjutama? Lugege näpunäiteid IDEA-st või teoreetilisest teemast Bugs ja kui programm lõpuks tööle hakkab, ei lase dopamiini hoog tõenäoliselt kaua oodata.

Selge tulemus. Niisiis, olete esimese mustandi valmis saanud, mis edasi? Nautige oma töö vilju! Mängige oma sõpradega tic-tac-toe'i ja samal ajal kiidelge oma eduga. Laadige projekt üles GitHubisse, et seda tulevasele tööandjale näidata, kirjutage ise kirjeldus ja märkige sinna teadmised, mida rakendasite. 4-5 keerulist projekti ja nüüd on valmis tagasihoidlik portfell alustavale arendajale.

Kasvuvõimalus. Oletame, et vaatate Hyperskilli ja ei näe seal ühtegi olulist teemat ega kasulikku projekti. Andke meile sellest teada! Kui sinu taust on teadmistekaardilt laiem ja rikkalikum, siis kirjuta meile ankeedis Kaasa aitama. Meie meeskond jagab teiega oma näpunäiteid ja nippe, nii et aitame teil hea meelega muuta teie teadmised kasulikuks sisuks, mis on arusaadav erinevas vanuses ja erineva tasemega kasutajatele. Võib-olla me isegi maksame, aga see pole kindel.

Tere tulemast: hi.hyperskill.org Tulge sisse, vaadake, proovige, soovitage, kiitke ja kritiseerige. Õpime ka teid õpetama.

Allikas: www.habr.com

Lisa kommentaar