Z ljubeznijo iz Stepika: izobraževalna platforma Hyperskill

Z vami želim govoriti o tem, zakaj popravljamo vodovodne napeljave pogosteje, kot pišemo diplomske naloge, o različnih pristopih k poučevanju programiranja in o tem, kako enega od njih poskušamo uporabiti v našem novem izdelku Hyperskill.

Če ne marate dolgih uvodov, preskočite naravnost na odstavek o programiranju. Bo pa manj zabavno.

Z ljubeznijo iz Stepika: izobraževalna platforma Hyperskill

Lirična digresija

Predstavljajmo si neko mlado damo Mašo. Danes je nameravala Maša oprati sadje in si v miru ogledati film, a smola: nenadoma je ugotovila, da se je kuhinjsko korito zamašilo. Kaj storiti s tem, še ni jasno. To vprašanje lahko odložite za nedoločen čas, vendar je zdaj prosti čas, zato se Maša odloči, da se bo s težavo spopadla takoj. Zdrava kmečka pamet predlaga dve možnosti: a) pokličite vodovodarja b) rešite se sami. Mlada dama izbere drugo možnost in začne preučevati navodila na YouTubu. Po nasvetu uporabnika Vasya_the_plumber Maša pogleda pod umivalnik in zagleda vijugasto plastično cev, sestavljeno iz več delov. Dekle previdno odvije en kos na dnu umivalnika in ne najde ničesar. Spodnji kos cevi se izkaže za tesno zamašen z neznano snovjo in celo vilice, ki jih najdemo na mizi, se ne morejo spopasti z blokado. Strokovnjaki iz interneta dajejo razočarajoče napovedi: del bo treba spremeniti. Na zemljevidu Maša poišče najbližjo trgovino, vzame s seboj nesrečni kos cevi in ​​kupi enako, le novo. Po nasvetu prodajalke Maša za preventivo pograbi tudi novo cedilo. Naloga je zaključena: umivalnik spet deluje, kot mora, njegov glavni junak pa je medtem izvedel naslednje:

  • Cevi pod umivalnikom lahko odvijete in zategnete sami;
  • Najbližja vodovodna trgovina je od Mashininega stanovanja oddaljena kilometer in pol.

Najverjetneje Maša sploh ni opazila, koliko novih stvari se je naučila in naučila, ker jo je skrbelo za lastno udobje v prihodnosti, hkrati pa je gledala film in umivala jabolko. Naslednjič, ko se pojavi podoben problem, ga bo deklica rešila veliko hitreje. Pravzaprav Maša ni samo vrnila sveta v običajno stanje; je študirala induktivno, to je v posebnih primerih, in usmerjen v prakso, torej tako, da delamo stvari, namesto da jih podrobno in vnaprej preučimo.

Vse bi se lahko obrnilo tudi drugače. Recimo, da Maša zvečer sedi na stolu in nenadoma ugotovi, da psihično in fizično ni pripravljena na zamašek v umivalniku. Na hitro se vpiše na akademijo za kleparja, kjer preučuje vrste pomivalnih korit, cevi in ​​možnih priključkov, klasifikacijo vodovodnih težav in možne rešitve le-teh. Masha ponoči ne spi, zapomni izraze in imena. Morda celo piše doktorsko disertacijo o teoretični cevovodstvu, kjer obravnava gumijasta tesnila. Končno, ko je prejela certifikat, se Maša ponosno ozira po kuhinji v popolnem zaupanju, da bo zdaj tudi najmanjša težava s pomivalnim koritom rešena s tleskom prsta. V tem scenariju je deklica študirala deduktivno, ki se premika od splošnega k posebnemu in se bolj osredotoča na teorija.

Kateri pristop je torej najboljši? V primeru umivalnika in zamaška - prvi in ​​​​iz teh razlogov:

  1. Če je pomemben le delujoč umivalnik, potem je dovolj vedeti le, kaj zadeva to področje. Ko bo Maša spoznala, da ji primanjkuje znanja, bo zagotovo našla način, da se nauči več.
  2. Enciklopedično znanje se morda ne bo aktiviralo v resnični situaciji, ker navada ni bila razvita. Da bi se naučili zaporedja dejanj, je smiselno o njih ne brati, ampak jih izvajati.

Pustimo ubogo Mašo pri miru in preidimo na učni proces kot tak.

Programiranje: naučiti se ali narediti?

Navajeni smo misliti, da moramo za razvoj in postati strokovnjak na neznanem področju najprej iti na univerzo ali se vsaj vpisati na tečaje. Redno poslušamo, kaj nam govorijo, in izvajamo naloge. Ko imamo v rokah želeno diplomo ali certifikat, smo v trenutku izgubljeni, saj še vedno ne razumemo, zakaj potrebujemo toliko informacij in kako jih konkretno uporabiti. To ni problem, če so vaši naslednji načrti pisanje znanstvenih člankov in potovanje z njimi na konference. Sicer pa je vredno stremeti k spretnostim, torej delati in še enkrat delati določene stvari, poskušati in delati napake, da bi si za dolgo zapomnili, česa je najbolje ne početi.

Eno od področij, kjer gre »trda roka« ali »diamantno oko« z roko v roki s širokim pogledom, je programiranje. Če se pogovarjate z izkušenimi razvijalci, boste slišali pogumne zgodbe, v katerih se je človek od malih nog učil matematike/fizike/poučevanja, potem pa se naveličal in se preselil v zaledje. Najdejo se tudi programerji brez visoke izobrazbe! Kot prvo, pri razvijalcu se ne ceni certifikat ali diploma, ampak količina in kakovost napisanih programov, skript in spletnih strani.

"Ampak počakaj!", ugovarjate, "Sliši se lepo - vzemite in naredite!" Ne morem zlahka sam napisati programa, če prej nisem programiral! Zame je pomembno, da razumem, kam naj pišem, kako se v bistvu pogovarjam v programskem jeziku s prevajalnikom. Ni tako, kot če bi v Googlu našli telefonsko številko vodovodarja.«

Tudi v tem je grenka resnica. En neznan vidik vodi v drugega, ta pa v tretjega in kmalu se ta proces spremeni v čarovniško predstavo, ki kar naprej vleče zavezane robčke in jih ne more spraviti iz cilindra. Proces je, če sem iskren, neprijeten, do 5. "robčka" se že zdi, da je globina nevednosti blizu Marianskega jarka. Alternativa temu so ista predavanja o 10 vrstah spremenljivk, 3 vrstah zank in 150 potencialno uporabnih knjižnicah. Žalostno.

Hyperskill: gradili smo, gradili in končno zgradili

Dolgo smo razmišljali o tem problemu. Datum zadnje objave na našem blogu zgovorno govori o tem, kako dolgo smo razmišljali. Po vseh debatah in poskusih integracije novega pristopa na Stepiku, smo na koncu dobili ... drugo stran. Morda ste že slišali za to kot del akademije JetBrains. Imenovali smo ga Hyperskill, zgradili projektno učenje, z njim povezali bazo znanja Java in pridobili podporo ekipe EduTools. In zdaj več podrobnosti.

Z ljubeznijo iz Stepika: izobraževalna platforma Hyperskill

Določen cilj. Ponujamo “meni” projektov, t.j. programe, ki jih lahko napišete z našo pomočjo. Med njimi so tic-tac-toe, osebni asistent, blockchain, iskalnik itd. Projekti so sestavljeni iz 5-6 faz; Rezultat vsake stopnje je končan program. "Zakaj potem potrebujemo druge stopnje, če je že v prvi vse uspelo?" Hvala za vprašanje. Z vsakim korakom postane program bolj funkcionalen oziroma hitrejši. Sprva koda obsega 10 vrstic, na koncu pa morda ne bo več niti v 500.

Malo teorije. Nemogoče je sesti in napisati celo Hello World, ne da bi vedeli besedo o programiranju. Zato na vsaki stopnji projekta vidiš, katere teoretične osnove moraš osvojiti in, kar je najpomembneje, kje jih dobiti. Osnove se nahajajo tudi na Hyperskill v razdelku »Zemljevid znanja«. Če študentom v prvi fazi projekta ni treba brati podatkov iz datoteke, morda ne bodo mogli nadaljevati. Tega se bodo naučili sami kasneje, za splošni razvoj, ali pa ga bodo potrebovali na naslednji stopnji.

Z ljubeznijo iz Stepika: izobraževalna platforma Hyperskill

Zemljevid znanja. Prikazuje vam, katere teme ste že preučevali in kako so med seboj povezane. Odprite poljuben srčkan top. Lahko ga preletite, vendar vam priporočamo, da opravite manjše naloge, da zagotovite, da se informacije prilegajo vaši glavi. Najprej vam bo platforma dala teste, nato pa vam bo dala nekaj programskih nalog. Če se koda prevede in prestane teste, jo primerjajte z referenčno rešitvijo, včasih to pomaga najti bolj optimalen način za njeno implementacijo. Ali pa se prepričajte, da je vaša rešitev že odlična.

Nič ekstra. Čakamo tako »zelene« uporabnike kot izkušene razvijalce. Če ste že pisali programe, ni pomembno, ne bomo vas silili v seštevanje 2+2 ali ponovno obračanje vrstice. Če želite takoj doseči želeno raven, ob registraciji navedite, kaj že poznate, in izberite težji projekt. Ne bojte se preceniti: če se kaj zgodi, se lahko vedno vrnete na pozabljeno temo na zemljevidu znanja.

Z ljubeznijo iz Stepika: izobraževalna platforma Hyperskill

Orodja. Krasno je pisati majhne koščke kode v posebnem oknu na spletnem mestu, vendar se pravo programiranje začne z delom v razvojnem okolju (Integratiran Devolopment Eokolje). Izkušeni programerji ne znajo samo napisati kodo, ampak tudi oblikovati grafični vmesnik, sestaviti različne datoteke v projekt, uporabiti dodatna razvojna orodja, IDE pa poskrbi za nekatere od teh procesov. Zakaj se ne bi teh veščin naučili med učenjem programiranja? Tu na pomoč priskoči JetBrains in posebna različica IntelliJ IDEA Community Educational s prednameščenim vtičnikom EduTools. V takem IDE se lahko udeležite tečajev usposabljanja, preverite rešene probleme in pogledate projektne nasvete, če ste kaj pozabili. Ne skrbite, če prvič slišite besedo "plugin" ali "IDE": povedali vam bomo, kaj je to in kako ga brez težav namestite na svoj računalnik ali prenosnik. Razumite teorijo, nato pa pojdite na IDE in tam dokončajte naslednjo stopnjo projekta.

Roki. Nobenega ni! Kdo smo mi, da vam bomo trkali po glavi in ​​govorili, s kakšno hitrostjo morate pisati program? Ko uživate v pisanju kode in jo želite dokončati, jo dokončate danes ali jutri. Delajte razvoj za svoje veselje.

Napake. Vsi jih priznajo, tako tudi vi v eni od stopenj projekta, potem pa ta stopnja ne bo prestala samodejnih testov. No, sami boste morali ugotoviti, kaj je šlo narobe. Lahko bi vam povedali, kje je napaka, toda ali bi vas to naučilo, kako skrbno pisati kodo? Preberite nasvete iz IDEA ali teoretično temo o hroščih in ko bo program končno deloval, naval dopamina najverjetneje ne bo dolg.

Jasen rezultat. Torej, dokončali ste prvi osnutek, kaj sledi? Uživajte v sadovih svojega dela! Igrajte tik-tak-toe s prijatelji in se hkrati pohvalite s svojim uspehom. Naložite projekt na GitHub, da ga pokažete bodočemu delodajalcu, sami napišite opis in tam navedite znanje, ki ste ga uporabili. 4-5 zapletenih projektov in zdaj je pripravljen skromen portfelj za začetnika.

Priložnost za rast. Recimo, da pogledate Hyperskill in tam ne vidite nobene pomembne teme ali uporabnega projekta. Sporočite nam! Če je vaše znanje širše in bogatejše od karte znanja, nam pišite v obrazec Prispevati. Naša ekipa bo z vami delila lastne nasvete in trike, zato vam bomo z veseljem pomagali preoblikovati vaše znanje v uporabno vsebino, ki bo razumljiva uporabnikom različnih starosti in ravni. Mogoče bomo celo plačali, a to ni gotovo.

Dobrodošli: hi.hyperskill.org Vstopite, poglejte, poskusite, predlagajte, pohvalite in kritizirajte. Učimo se tudi naučiti vas.

Vir: www.habr.com

Dodaj komentar