S ljubavlju od Stepika: obrazovna platforma Hyperskill

Želim razgovarati s vama o tome zašto češće popravljamo vodovod nego što pišemo disertacije o njemu, o različitim pristupima učenju programiranja i o tome kako pokušavamo primijeniti jedan od njih u našem novom proizvodu Hyperskill.

Ako vam se ne sviđaju duža uvodna razlaganja, odmah pređite na odlomak o programiranju. Ali tako će biti manje zabavno.

S ljubavlju od Stepika: obrazovna platforma Hyperskill

Lirsko odmaknuće

Zamislimo jednu djevojku po imenu Maša. Danas je Maša namjeravala oprati voće i mirno pogledati film, ali, nažalost, otkriva da je kuhinjski umivaonik začepljen. Što učiniti s tim — još nije jasno. Može odgoditi ovo pitanje na neodređeno vrijeme, ali slobodnog vremena ima sada, pa Maša odlučuje odmah riješiti problem. Zdrav razum sugerira dvije opcije: a) pozvati vodoinstalatera b) riješiti se sama. Djevojka bira drugu opciju i počinje proučavati upute na YouTubeu. Po savjetu korisnika Vasya_the_plumber, Maša zaviruje ispod umivaonika i vidi tamo savijen plastični cijevasti sustav od nekoliko dijelova. Djevojka pažljivo odvija jedan dio s dna umivaonika i ne nalazi ništa. Komadić cijevi malo niže čvrsto je začepljen nepoznatom supstancom, a čak ni vilica pronađena na stolu ne može riješiti začep. Stručnjaci na internetu daju nepovoljne prognoze: dio će se morati zamijeniti. Maša u karti pronalazi najbližu trgovinu, uzima sa sobom nesretnu cijev i kupuje istu, ali novu. Po savjetu prodavača, Maša uzima i novo cedilo, za prevenciju. Kvadrat je završen: umivaonik ponovno radi kako treba, a njegova glavna junakinja, u međuvremenu, saznala je sljedeće:

  • Cijevi ispod umivaonika možete sami odvijati i vijati;
  • Najbliža trgovina vodovoda udaljena je jedan i pol kilometara od Mašine stana.

Najvjerojatnije, Maša nije ni primijetila koliko je novog naučila i što je naučila, jer ju je brinula vlastita udobnost u budućnosti, a usput je gledala film i prala jabuku. Sljedeći put kada se pojavi sličan problem, djevojka će ga riješiti brže. U stvari, Maša nije samo vraćala svijet u uobičajeno stanje; ona je učila induktivno, dakle na posebnim slučajevima, i orijentirano na praksu, dakle radeći stvari, a ne proučavajući ih detaljno unaprijed.

Sve je moglo biti drugačije. Zamislimo da Masha večer provodi u fotelji i odjednom shvati da nije moralno i fizički spremna za začepljenje sudopera. Žurno se upisuje u akademiju vodoinstalatera, proučava vrste sudopera, cijevi i mogućih spojeva, klasifikaciju problema s vodovodom i moguće načine njihovog rješavanja. Masha ne spava noću, pamteći termine i nazive. Moguće je da čak piše doktorsku disertaciju o teoretskoj vodovodnoj znanosti, gdje raspravlja o gumenim brtvama. Konačno, nakon što dobije certifikat, Masha ponosno promatra kuhinju s punim uvjerenjem da će sada i najmanji problem sa sudoperom biti riješen jednim potezom prsta. U takvom scenariju djevojka se obrazovala deduktivno, prelazeći od općeg ka specifičnom, i orijentirala se više na teoriju.

Koji bi pristup bio bolji? U slučaju sudopera i začepljenja — prvi, i evo zašto:

  1. Ako je važna samo funkcionalnost sudopera, dovoljno je znati ono što se tiče samo te sfere. Kada Masha shvati da joj nedostaje znanja, zasigurno će pronaći način da sazna više.
  2. Enciklopedijska naobrazba možda neće biti korisna u stvarnoj situaciji, jer navika nije usavršena. Da bi se naučila slijed djelovanja, smisleno je ne samo čitati o njima, već ih provoditi.

Pustimo jadnu Mashu i pređimo na proces učenja kao takav.

Programiranje: učiti ili raditi?

Navikli smo misliti da, kako bismo se razvili i postali stručnjaci u nepoznatom području, prvo trebamo ući na sveučilište ili barem upisati tečajeve. Marljivo slušamo što nam pričaju, obavljamo zadatke. Kada nam diplomu ili certifikat napokon stave u ruke, odmah se zbunimo, jer nismo razumjeli zašto nam je toliko informacija i kako je konkretno primijeniti. Nema u tome problema ako planiramo pisati znanstvene radove i odlaziti s njima na konferencije. U suprotnom, trebali bismo težiti i vještinama, odnosno raditi i ponovo raditi specifične stvari, pokušavati i griješiti kako bismo dugo pamtile kako se najbolje ne ponašati.

Jedno od područja gdje „iskusna ruka“ ili „očima dijamant“ idu ruku pod ruku sa širom perspektivom je programiranje. Ako razgovarate s iskusnim developerima, čut ćete hrabre priče, u kojima je osoba od malih nogu radila s matematikom/fizikom/podučavanjem, a zatim se umorila i prešla na backend. Bit će i programera bez visoke škole! U prvom redu, kod developera se cijeni ne certifikat, ne diploma, nego broj i kvaliteta napisanih programa, skripti i web stranica.

„Ali čekajte!“, prigovorit ćete, „Zvuči lijepo – uzmi i radi! Ne mogu jednostavno napisati program ako prije toga nisam programirao/la! Važno mi je razumjeti gdje pisati, kako uopće razgovarati s kompajlerom na jeziku programiranja. To nije kao naći broj vodoinstalatera na Googleu.“

Gorka istina leži i u tome. Jedan nepovezani aspekt povlači za sobom drugi, taj, zauzvrat, treći, i ubrzo taj proces postaje predstava mađioničara koji nastavlja iznositi povezane maramice i nikako ih ne može izvući iz cilindara. Proces je, iskreno ću reći, neugodan, na petoj „maramici“ se već čini da je dubina neznanja blizu Marijanske jame. Alternativa ovome su iste lekcije o 10 vrsta varijabli, 3 vrste petlji i 150 potencijalno korisnih biblioteka. Tužno.

Hyperskill: gradili smo, gradili i konačno izgradili

Dugo smo razmišljali o ovom problemu. O tome koliko smo dugo razmišljali, znakovito govori datum posljednjeg posta na našem blogu. Nakon svih rasprava i pokušaja integracije novog pristupa na Stepik, dobili smo... drugu web stranicu. Moguće je da ste već čuli za nju kao dio JetBrains Academy. Nazvali smo je Hyperskill, ugradili smo projektno učenje, povezali s njom bazu znanja o Javi i osigurali podršku tim EduTools. A sada, detaljnije.

S ljubavlju od Stepika: obrazovna platforma Hyperskill

Specifičan cilj. Nudimo „izbornik“ projekata, tj. programa koje možete napisati uz našu pomoć. Među njima su križevi i nule, osobni asistent, blockchain, pretraživač i sl. Projekti se sastoje od 5-6 faza; rezultat svake faze je gotov program. „Zašto onda ostale faze, ako je na prvoj već sve uspjelo?“ Hvala na pitanju. Sa svakim korakom program postaje funkcionalniji ili brži. Isprva kod zauzima 10 redaka, na kraju možda neće stajati ni u 500.

Malo teorije. Nemoguće je sjesti i, ne znajući ni riječ o programiranju, napisati čak ni Hello World. Stoga na svakom koraku projekta možete vidjeti koje teoretske osnove trebate usvojiti i, što je najvažnije, gdje ih pronaći. Osnove su također smještene na Hyperskill-u u odjeljku "Karta znanja" (Knowledge Map). Ako u prvoj fazi projekta učenici nisu obavezni čitati podatke iz datoteke, neka to ne umanje njihove mogućnosti kasnije. Naučit će sami, radi općeg razvoja, ili će im biti potrebno u sljedećoj fazi.

S ljubavlju od Stepika: obrazovna platforma Hyperskill

Karta znanja. Na njoj je vidljivo koje ste teme već proučili i kako su međusobno povezane. Otvorite bilo koju simpatičnu temu. Možete je pregledati, ali preporučamo rješavanje nekoliko zadataka kako biste bili sigurni da je informacija ostala u vašem umu. U početku će vam platforma ponuditi testove, a nakon njih — nekoliko zadataka za programiranje. Ako se kod kompajlira i prolazi testove, usporedite ga s uzornim rješenjem (reference solution), ponekad to pomaže da saznate optimalniji način implementacije. Ili pak da se uvjerite da je vaše rješenje već odlično.

Nema suvišnog. Čekamo i "zeleno" korisnike i iskusne programere. Ako ste već pisali programe, nema problema, nećemo vas tjerati da ponovno zbrajate 2+2 ili prepisujete redak. Da biste odmah zapeli za pravi nivo, prilikom registracije navedite s čim ste već upoznati i birajte složeniji projekt. Ne bojte se pretjerati u vlastitoj procjeni: ako zatreba, uvijek se možete vratiti na zaboravljenu temu u karti znanja.

S ljubavlju od Stepika: obrazovna platforma Hyperskill

Alati. To je sjajno — pisati male dijelove koda u posebnom prozoru na webu, ali pravo programiranje počinje radom u razvojnom okruženju (Integrirano Drazvoj Eiskustvo). Iskusni programeri znaju ne samo kako pisati kod, već i kako konstruirati grafičko sučelje, sastaviti različite datoteke u projekt, koristiti dodatne razvojne alate, a dio tih procesa preuzima IDE. Zašto ne naučiti i te vještine dok usvajate programiranje? Tu na pomoć dolazi JetBrains i posebna verzija IntelliJ IDEA Community Educational s unaprijed instaliranim EduTools pluginom. U takvom IDE-u možete prolaziti kroz tečajeve, provjeravati riješene zadatke i pogledavati savjete o projektu ako ste nešto zaboravili. Ne brinite ako prvi put čujete riječ “plugin” ili “IDE”: objasnit ćemo što to znači i kako ga instalirati na računalo ili prijenosno računalo s minimalnim mučenjem. Savladajte teoriju, a zatim pređite u IDE i završite sljedeću fazu projekta odmah tamo.

Rokovi. Nema ih! Tko smo mi da kucamo po glavi i kažemo vam kojim tempom trebate pisati program. Kada volite pisati kod i želite ga završiti, završavate ga danas ili sutra. Razvijajte se uživajući.

Greške. Svi ih prave, dopustite ih i vi u jednoj od faza projekta, a tada ta faza neće proći automatske testove. Pa, morat ćete se sami snaći, što je pošlo po zlu. Mogli bismo vam reći gdje je greška, ali hoće li vas to naučiti da pažljivo pišete kod? Čitajte savjete od IDEA ili teorijski članak o greškama, a kada program konačno proradi, nalet dopamina vjerojatno će se brzo pojaviti.

Jasan rezultat. Dakle, dovršili ste svoj prvi projekt, što sada? Iskoristite plodove svog rada! Igrajte s prijateljima tic-tac-toe, uz to se pohvalite svojim uspjesima. Učitajte projekt na GitHub kako biste ga pokazali budućem poslodavcu, sami napišite opis, navedite tamo stečeno znanje. 4-5 složenih projekata i evo, skromnog portfelja za početnika programera.

Prilika za rast. Pretpostavimo da gledate na Hyperskill i ne vidite neku važnu temu ili koristan projekt. Javite nam! Ako je vaše znanje šire i bogatije od karte znanja, javite nam putem obrasca. Doprinos. Naš tim će podijeliti s vama vlastite savjete i trikove, tako da ćemo biti sretni pomoći vam pretvoriti vaše znanje u korisni sadržaj, razumljiv korisnicima različitih dobnih skupina i razina. Možda ćemo čak i platiti, ali to nije sigurno.

Dobrodošli: hi.hyperskill.org Dođite, gledajte, isprobavajte, predlažite, hvalite i kritikujte. Također učimo kako vas učiti.

Izvor: habr.com

Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere | ProHoster