S ljubavlju Stepik: Hyperskill obrazovna platforma

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

Ako ne volite dugačke uvode, preskočite direktno na odlomak o programiranju. Ali biće manje zabavno.

S ljubavlju Stepik: Hyperskill obrazovna platforma

Lirska digresija

Zamislimo određenu mladu damu Mašu. Danas je Maša htela da opere voće i u miru pogleda film, ali peh: iznenada je otkrila da je sudoper začepljen. Još nije jasno šta s tim. Ovo pitanje možete odlagati na neodređeno vrijeme, ali sada ima slobodnog vremena, pa se Maša odlučila odmah pozabaviti problemom. Zdrav razum predlaže dvije opcije: a) pozovite vodoinstalatera b) riješite se sami. Mlada dama bira drugu opciju i počinje proučavati upute na YouTubeu. Slijedeći savjet korisnika Vasya_the_vodoinstalater, Maša gleda ispod lavaboa i vidi zvijajuću plastičnu cijev koja se sastoji od nekoliko dijelova. Djevojka pažljivo odvrne jedan komad na dnu lavaboa i ne nalazi ništa. Ispostavilo se da je donji komad cijevi čvrsto začepljen nepoznatom tvari, a čak ni vilica koja se nalazi na stolu ne može se nositi s blokadom. Stručnjaci sa Interneta daju razočaravajuće prognoze: dio će se morati promijeniti. Na mapi Maša pronalazi najbližu trgovinu, nosi nesrećni komad cijevi sa sobom i kupuje istu, samo novu. Po savjetu prodavača, Maša grabi i novo cjedilo radi prevencije. Potraga je završena: sudoper ponovo radi kako treba, a njegov glavni lik je u međuvremenu naučio sljedeće:

  • Cijevi ispod sudopera možete sami odvrnuti i zategnuti;
  • Najbliža vodoinstalaterska radnja udaljena je kilometar i po od Mašinog stana.

Najvjerovatnije, Maša nije ni primijetila koliko je novih stvari naučila i naučila, jer se brinula o vlastitoj udobnosti u budućnosti, a istovremeno gledajući film i pranje jabuke. Sljedeći put kada se pojavi sličan problem, djevojka će ga riješiti mnogo puta brže. Zapravo, Maša nije samo vratila svijet u uobičajeno stanje; studirala je induktivno, odnosno u posebnim slučajevima, i orijentisan na praksu, odnosno radeći stvari umjesto da ih detaljno i unaprijed proučavaju.

Sve je moglo ispasti drugačije. Pretpostavimo da Maša uveče sjedi na stolici i odjednom shvati da je psihički i fizički nespremna za začepljenje umivaonika. Ubrzo upisuje vodoinstalatersku akademiju, proučava vrste sudopera, cijevi i mogućih priključaka, klasifikaciju vodovodnih problema i moguća rješenja za njih. Maša ne spava noću, pamti pojmove i imena. Možda čak piše doktorsku tezu o teorijskoj nauci o cijevima, gdje raspravlja o gumenim zaptivkama. Konačno, nakon što je dobila sertifikat, Maša ponosno gleda po kuhinji sa punim uverenjem da će sada i najmanji problem sa sudoperom biti rešen pucnjem prsta. U ovom scenariju djevojka je proučavala deduktivno, krećući se od opšteg ka specifičnom, i više se fokusirao na njega teorija.

Dakle, koji je pristup najbolji? U slučaju sudopera i začepljenja - prvi, i to iz ovih razloga:

  1. Ako je važan samo radni sudoper, onda je dovoljno znati samo ono što se tiče ovog područja. Kada Maša shvati da joj nedostaje znanja, sigurno će pronaći način da nauči više.
  2. Enciklopedijsko znanje se možda neće aktivirati u stvarnoj situaciji jer navika nije razvijena. Da biste naučili redoslijed radnji, ima smisla ne čitati o njima, već ih izvoditi.

Ostavimo jadnu Mašu na miru i pređimo na proces učenja kao takav.

Programiranje: učiti ili raditi?

Navikli smo da mislimo da, da bismo se razvili i postali eksperti u nepoznatoj oblasti, prvo moramo ići na fakultet ili barem upisati kurseve. Redovno slušamo šta nam govore i izvršavamo zadatke. Kada u rukama imamo željenu diplomu ili sertifikat, momentalno smo izgubljeni, jer još uvek ne razumemo zašto nam je potrebno toliko informacija i kako da ih konkretno primenimo. To nije problem ako su vam sljedeći planovi pisati naučne radove i putovati s njima na konferencije. Inače, vrijedi težiti vještinama, odnosno opet raditi i raditi određene stvari, pokušavati i griješiti kako bi se dugo pamtilo šta je najbolje ne raditi.

Jedna od oblasti u kojoj “tvrda ruka” ili “dijamantsko oko” idu ruku pod ruku sa širokim pogledom je programiranje. Ako razgovarate sa iskusnim programerima, čućete hrabre priče u kojima je osoba od malih nogu studirala matematiku/fiziku/nastavu, a onda se umorila i prešla u backend. Biće i programera bez visokog obrazovanja! Prije svega, ono što se kod programera ne cijeni nije certifikat ili diploma, već količina i kvalitet napisanih programa, skripti i web stranica.

“Ali čekajte!”, prigovorite, “Zvuči predivno - uzmi i uradi to!” Ne mogu lako sebi napisati program ako ranije nisam programirao! Važno mi je da razumem gde da pišem, kako da u osnovi razgovaram u programskom jeziku sa kompajlerom. To nije kao da pronađete broj telefona vodoinstalatera na Googleu.”

I u ovome ima gorke istine. Jedan nepoznat aspekt dovodi do drugog, koji opet vodi do trećeg, a ubrzo se ovaj proces pretvara u mađioničarsku predstavu, koji nastavlja da vadi vezane maramice i ne može ih izvući iz cilindra. Proces je, da budem iskren, neprijatan, već do 5. “marame” se čini da je dubina neznanja blizu Marijanskog rova. Alternativa ovome su ista predavanja o 10 tipova varijabli, 3 vrste petlji i 150 potencijalno korisnih biblioteka. Nažalost.

Hiperskill: gradili smo, gradili i konačno gradili

Dugo smo razmišljali o ovom problemu. O tome koliko dugo smo razmišljali dovoljno govori datum posljednje objave na našem blogu. Nakon svih debata i pokušaja da se integrira novi pristup na Stepiku, na kraju smo dobili... drugu stranicu. Možda ste već čuli za to kao dio JetBrains akademije. Nazvali smo ga Hyperskill, ugrađeno u učenje zasnovano na projektima, s njim smo povezali Java bazu znanja i zatražili podršku EduTools tima. A sada više detalja.

S ljubavlju Stepik: Hyperskill obrazovna platforma

Specifičan cilj. Nudimo „meni“ projekata, tj. programe koje možete napisati uz našu pomoć. Među njima su tic-tac-toe, personalni asistent, blockchain, pretraživač itd. Projekti se sastoje od 5-6 faza; Rezultat svake faze je gotov program. „Zašto su nam onda potrebne druge faze ako je sve već prošlo u prvoj? Hvala na pitanju. Svakim korakom program postaje funkcionalniji ili brži. U početku kod ima 10 redova, ali na kraju možda neće stati ni u 500.

Malo teorije. Nemoguće je sjesti i napisati čak i Hello World, a da ne znate ni riječi o programiranju. Stoga u svakoj fazi projekta vidite koje teorijske osnove morate savladati i, što je najvažnije, gdje ih nabaviti. Osnove se također nalaze na Hyperskill-u u odjeljku “Mapa znanja”. Ako se za prvu fazu projekta od učenika ne traži da čitaju podatke iz datoteke, onda možda neće moći nastaviti. Oni će to sami naučiti kasnije, za opći razvoj, ili će im trebati u sljedećoj fazi.

S ljubavlju Stepik: Hyperskill obrazovna platforma

Mapa znanja. Pokazuje vam koje ste teme već proučavali i kako su one međusobno povezane. Otvori bilo koji slatki vrh. Možete ga preletjeti, ali preporučujemo da obavite male zadatke kako biste bili sigurni da vam se informacije uklapaju u glavu. Prvo, platforma će vam dati testove, nakon čega će vam dati nekoliko programskih zadataka. Ako se kod kompajlira i prođe testove, uporedite ga s referentnim rješenjem, ponekad to pomaže da se pronađe optimalniji način za njegovu implementaciju. Ili se uvjerite da je vaše rješenje već odlično.

Ništa ekstra. Čekamo i "zelene" korisnike i iskusne programere. Ako ste već pisali programe, nema veze, nećemo vas prisiljavati da dodate 2+2 ili ponovo okrenete red. Da biste odmah došli do željenog nivoa, prilikom registracije navedite ono sa čime ste već upoznati i odaberite teži projekat. Nemojte se bojati precijeniti sebe: ako se nešto dogodi, uvijek se možete vratiti na zaboravljenu temu na mapi znanja.

S ljubavlju Stepik: Hyperskill obrazovna platforma

Alati. Sjajno je pisati male dijelove koda u posebnom prozoru na stranici, ali pravo programiranje počinje radom u razvojnom okruženju (Iintegrated Drazvoj Eokruženje). Iskusni programeri znaju ne samo kako pisati kod, već i kako dizajnirati grafičko sučelje, sastaviti različite datoteke u projekat, koristiti dodatne razvojne alate, a IDE se brine za neke od ovih procesa. Zašto ne biste naučili ove vještine dok učite programiranje? Ovdje u pomoć dolazi JetBrains i posebna verzija IntelliJ IDEA Community Educational sa unaprijed instaliranim dodatkom EduTools. U takvom IDE-u možete pohađati kurseve obuke, provjeriti riješene probleme i pogledati savjete za projekte ako ste nešto zaboravili. Ne brinite ako prvi put čujete riječ "plugin" ili "IDE": reći ćemo vam šta je to i kako da ga instalirate na računar ili laptop uz minimalnu patnju. Shvatite teoriju, a zatim idite na IDE i dovršite sljedeću fazu projekta upravo tamo.

Rokovi. Nema nijednog od njih! Ko smo mi da vam lupamo o glavu i govorimo kojim tempom da pišete program? Kada uživate u pisanju koda i želite da ga završite, završite ga danas ili sutra. Radite razvoj za svoje zadovoljstvo.

Greške. Svi ih priznaju, pa tako i vi u nekoj od faza projekta, a onda ova faza neće proći automatske testove. Pa, moraćete sami da otkrijete šta je pošlo po zlu. Mogli bismo vam reći gdje leži greška, ali da li bi vas to naučilo kako pažljivo pisati kod? Pročitajte savjete iz IDEA-e ili neku teorijsku temu o greškama, a kada program konačno proradi, navala dopamina najvjerovatnije neće dugo čekati.

Jasan rezultat. Dakle, završili ste prvi nacrt, šta dalje? Uživajte u plodovima svog rada! Igrajte tik-tac-toe sa svojim prijateljima i istovremeno se hvalite svojim uspjehom. Otpremite projekat na GitHub da ga pokažete budućem poslodavcu, sami napišite opis i navedite znanje koje ste primijenili. 4-5 složenih projekata, a sada je spreman skromni portfolio za početnike.

Prilika za rast. Recimo da pogledate Hyperskill i tamo ne vidite nikakvu važnu temu ili koristan projekat. Obavijestite nas o tome! Ako je vaša pozadina šira i bogatija od mape znanja, pišite nam u obrascu Contribute. Naš tim će s vama podijeliti vlastite savjete i trikove, tako da ćemo vam rado pomoći da svoje znanje pretvorite u koristan sadržaj koji je razumljiv korisnicima različitih uzrasta i nivoa. Možda ćemo i platiti, ali to nije sigurno.

Dobrodošli: hi.hyperskill.org Uđite, pogledajte, probajte, predložite, pohvalite i kritikujte. Takođe učimo da vas naučimo.

izvor: www.habr.com

Dodajte komentar