Cu drag de la Stepik: platforma educațională Hyperskill

Vreau să vă vorbesc despre de ce reparăm instalațiile sanitare mai des decât scriem disertații despre aceasta, despre diferite abordări ale predării programării și despre cum încercăm să aplicăm una dintre ele în noul nostru produs Hyperskill.

Dacă nu vă plac prezentările lungi, treceți direct la paragraful despre programare. Dar va fi mai puțin distractiv.

Cu drag de la Stepik: platforma educațională Hyperskill

Retragerea lirică

Să ne imaginăm o anumită domnișoară Masha. Astăzi Masha avea de gând să spele niște fructe și să vadă un film în liniște, dar ghinion: deodată a descoperit că chiuveta din bucătărie era înfundată. Nu este încă clar ce să faci cu asta. Puteți amâna această problemă pe termen nelimitat, dar acum există timp liber, așa că Masha decide să rezolve problema imediat. Bunul simț sugerează două opțiuni: a) chemați un instalator b) gestionați-vă singur. Domnișoara alege a doua variantă și începe să studieze instrucțiunile de pe YouTube. Urmând sfatul utilizatorului Vasya_the_plumber, Masha se uită sub chiuvetă și vede o țeavă de plastic șerpuitoare formată din mai multe părți. Fata deșurubează cu grijă o bucată de la baza chiuvetei și nu găsește nimic. O bucată inferioară de țeavă se dovedește a fi strâns înfundată cu o substanță necunoscută și chiar și o furculiță găsită pe masă nu poate face față blocării. Experții de pe internet dau previziuni dezamăgitoare: partea va trebui schimbată. Pe hartă, Masha găsește cel mai apropiat magazin, ia cu ea nenorocita bucată de țeavă și cumpără aceeași, doar nouă. La sfatul vânzătorului, Masha ia și o nouă sită pentru prevenire. Misiunea este finalizată: chiuveta funcționează din nou așa cum ar trebui, iar personajul său principal, între timp, a învățat următoarele:

  • Puteți deșuruba și strânge singur țevile de sub chiuvetă;
  • Cel mai apropiat magazin de instalații sanitare este la un kilometru și jumătate de apartamentul lui Mashina.

Cel mai probabil, Masha nici măcar nu a observat câte lucruri noi învățase și învățase, pentru că era îngrijorată de propriul confort în viitor și, în același timp, se uita la un film și își spăla mărul. Data viitoare când va apărea o problemă similară, fata o va rezolva de multe ori mai repede. De fapt, Masha nu doar a readus lumea la starea ei obișnuită; ea a studiat inductiv, adică în cazuri speciale, și orientat spre practică, adică făcând lucruri mai degrabă decât studiindu-le în detaliu și în avans.

Totul ar fi putut să iasă altfel. Să presupunem că Masha stă seara pe un scaun și își dă brusc seama că nu este pregătită mental și fizic pentru un blocaj în chiuvetă. Ea se înscrie rapid la o academie de instalatori, studiind tipurile de chiuvete, țevi și posibile racorduri, clasificarea problemelor de instalații și posibilele soluții la acestea. Masha nu doarme noaptea, memorând termeni și nume. Poate chiar scrie o teză de doctorat despre știința teoretică a conductelor, unde discută despre garniturile de cauciuc. În cele din urmă, după ce a primit certificatul, Masha se uită cu mândrie în jurul bucătăriei cu deplină încredere că acum chiar și cea mai mică problemă cu chiuveta va fi rezolvată cu o pocnire de deget. În acest scenariu, fata a studiat deductiv, trecând de la general la specific și a fost mai concentrat pe teorie.

Deci care abordare este cea mai bună? În cazul unei chiuvete și a unui sabot - primul și din aceste motive:

  1. Dacă doar o chiuvetă funcțională este importantă, atunci este suficient să știi doar ceea ce privește această zonă anume. Când Masha își dă seama că îi lipsesc cunoștințele, cu siguranță va găsi o modalitate de a învăța mai multe.
  2. Cunoștințele enciclopedice pot să nu fie activate într-o situație reală deoarece obiceiul nu a fost dezvoltat. Pentru a învăța succesiunea acțiunilor, este logic să nu citiți despre ele, ci să le executați.

Să o lăsăm în pace pe bietul Masha și să trecem la procesul de învățare ca atare.

Programare: să înveți sau să faci?

Suntem obișnuiți să ne gândim că pentru a ne dezvolta și a deveni un expert într-un domeniu necunoscut, trebuie mai întâi să mergem la universitate sau măcar să ne înscriem la cursuri. Ascultăm în mod regulat ceea ce ne spun ei și îndeplinim sarcini. Când avem în mâini râvnita diplomă sau certificat, ne pierdem instantaneu, pentru că încă nu înțelegem de ce avem nevoie de atâtea informații și cum să le aplicăm. Aceasta nu este o problemă dacă următoarele planuri sunt să scrieți lucrări științifice și să călătoriți cu ele la conferințe. Altfel, merită să te străduiești pentru abilități, adică să faci și să faci din nou lucruri specifice, să încerci și să faci greșeli pentru a-ți aminti mult timp ce este mai bine să nu faci.

Una dintre domeniile în care o „mână dură” sau un „ochi de diamant” merge mână în mână cu o perspectivă largă este programarea. Dacă vorbești cu dezvoltatori experimentați, vei auzi povești curajoase în care o persoană a studiat matematica/fizica/predarea de la o vârstă fragedă, apoi s-a obosit și s-a mutat în backend. Vor fi și programatori fără studii superioare! În primul rând, ceea ce este apreciat într-un dezvoltator nu este un certificat sau o diplomă, ci cantitatea și calitatea programelor scrise, scripturilor și site-urilor web.

„Dar stai!”, obiectezi, „Sună frumos - ia-o și fă-o!” Nu pot să scriu cu ușurință un program dacă nu l-am programat înainte! Este important pentru mine să înțeleg unde să scriu, cum să vorbesc practic într-un limbaj de programare cu un compilator. Nu este ca și cum ai găsi numărul de telefon al unui instalator pe Google.”

Există și un adevăr amar în asta. Un aspect necunoscut duce la altul, care, la rândul său, duce la un al treilea, iar în curând acest proces se transformă într-un spectacol de magician, care continuă să scoată batiste legate și nu le poate scoate din pălărie. Procesul, sincer să fiu, este neplăcut, la a 5-a „batista” deja pare că adâncimea ignoranței este aproape de șanțul Marianelor. O alternativă la aceasta este aceleași prelegeri despre 10 tipuri de variabile, 3 tipuri de bucle și 150 de biblioteci potențial utile. Din pacate.

Hyperskill: am construit, am construit și, în sfârșit, am construit

Ne-am gândit mult timp la această problemă. Data ultimei postări pe blogul nostru spune multe despre cât timp ne gândim. După toate dezbaterile și încercările de a integra noua abordare pe Stepik, am ajuns să avem... un alt site. Poate că ați auzit deja despre el ca parte a Academiei JetBrains. L-am numit Hyperskill, am construit în învățarea bazată pe proiecte, i-am legat o bază de cunoștințe Java și am obținut sprijinul echipei EduTools. Și acum mai multe detalii.

Cu drag de la Stepik: platforma educațională Hyperskill

Scop specific. Oferim un „meniu” de proiecte, de ex. programe pe care le puteți scrie cu ajutorul nostru. Printre acestea se numără tic-tac-toe, asistent personal, blockchain, motor de căutare etc. Proiectele constau din 5-6 etape; Rezultatul fiecărei etape este un program terminat. „Atunci de ce avem nevoie de celelalte etape dacă totul a funcționat deja în prima?” Multumesc pentru intrebare. Cu fiecare pas programul devine mai funcțional sau mai rapid. La început, codul are 10 linii, dar în cele din urmă poate să nu se potrivească nici măcar în 500.

Un pic de teorie. Este imposibil să te așezi și să scrii chiar și Hello World fără să știi un cuvânt despre programare. Prin urmare, în fiecare etapă a proiectului, vezi ce baze teoretice trebuie să stăpânești și, cel mai important, de unde să le obții. Elementele de bază se găsesc și pe Hyperskill în secțiunea „Harta cunoștințelor”. Dacă pentru prima etapă a proiectului studenților nu li se cere să citească datele dintr-un fișier, atunci este posibil să nu poată continua. O vor învăța ei înșiși mai târziu, pentru dezvoltare generală, sau vor avea nevoie de el în etapa următoare.

Cu drag de la Stepik: platforma educațională Hyperskill

Harta cunostintelor. Vă arată ce subiecte ați studiat deja și cum se leagă între ele. Deschide orice top drăguț. Îl poți răsfoi, dar îți recomandăm să completezi sarcini mici pentru a te asigura că informațiile se potrivesc în minte. În primul rând, platforma vă va oferi teste, după care vă va oferi câteva sarcini de programare. Dacă codul compilează și trece testele, comparați-l cu soluția de referință, uneori acest lucru ajută la găsirea unei modalități mai optime de implementare. Sau asigurați-vă că soluția dvs. este deja excelentă.

Nimic in plus. Așteptăm atât utilizatori „verzi”, cât și dezvoltatori experimentați. Dacă ați scris deja programe, nu contează, nu vă vom obliga să adăugați 2+2 sau să întoarceți o linie din nou. Pentru a ajunge imediat la nivelul dorit, la înregistrare, indicați ceea ce sunteți deja familiarizat și alegeți un proiect mai dificil. Nu vă fie teamă să vă supraestimați: dacă se întâmplă ceva, puteți reveni oricând la un subiect uitat din harta cunoștințelor.

Cu drag de la Stepik: platforma educațională Hyperskill

Instrumente. Este grozav să scrieți bucăți mici de cod într-o fereastră specială de pe site, dar programarea reală începe cu lucrul în mediul de dezvoltare (Integrat Development Emediu inconjurator). Programatorii cu experiență știu nu numai cum să scrie cod, ci și cum să proiecteze o interfață grafică, să asamblați diferite fișiere într-un proiect, să folosească instrumente de dezvoltare suplimentare, iar IDE-ul se ocupă de unele dintre aceste procese. De ce să nu înveți aceste abilități în timp ce înveți programarea? Aici vine JetBrains în ajutor și o versiune specială a IntelliJ IDEA Community Educational cu un plugin EduTools preinstalat. Într-un astfel de IDE, poți să urmezi cursuri de formare, să verifici problemele rezolvate și să te uiți la sfaturi de proiect dacă ai uitat ceva. Nu vă faceți griji dacă este prima dată când auziți cuvântul „plugin” sau „IDE”: vă vom spune ce este și cum să îl instalați pe computer sau laptop cu o suferință minimă. Înțelegeți teoria, apoi mergeți la IDE și finalizați următoarea etapă a proiectului chiar acolo.

Termenele limită. Nu există niciunul dintre ei! Cine suntem noi să ne batem în cap și să vă spunem în ce ritm să scrieți un program? Când îți place să scrii cod și vrei să-l termini, îl termini, azi sau mâine. Faceți dezvoltare pentru propria dvs. plăcere.

Greșeli. Toată lumea le admite, la fel și tu la una dintre etapele proiectului, iar apoi această etapă nu va trece testele automate. Ei bine, va trebui să-ți dai seama singur ce a mers prost. Am putea să vă spunem unde se află eroarea, dar asta vă va învăța cum să scrieți codul cu atenție? Citiți sfaturi de la IDEA sau un subiect teoretic despre Bug-uri, iar când programul funcționează, cel mai probabil, avântul de dopamină nu va întârzia să apară.

Un rezultat clar. Deci, ați finalizat prima schiță, ce urmează? Bucură-te de roadele muncii tale! Joacă-te cu prietenii tăi și lăuda-te cu succesul tău în același timp. Încărcați proiectul în GitHub pentru a-l arăta unui viitor angajator, scrieți singur o descriere și indicați acolo cunoștințele pe care le-ați aplicat. 4-5 proiecte complexe, iar acum, un portofoliu modest pentru un dezvoltator începător este gata.

Oportunitate de creștere. Să presupunem că te uiți la Hyperskill și nu vezi niciun subiect important sau proiect util acolo. Anunțați-ne despre asta! Dacă fundalul tău este mai larg și mai bogat decât harta cunoștințelor, atunci scrie-ne în formular Contribuie. Echipa noastră vă va împărtăși propriile noastre sfaturi și trucuri, așa că vom fi bucuroși să vă ajutăm să vă transformați cunoștințele în conținut util, care poate fi înțeles de utilizatori de diferite vârste și niveluri. Poate chiar vom plăti, dar asta nu este sigur.

Bine ati venit: hi.hyperskill.org Intră, uită-te, încearcă, sugerează, laudă și critică. Învățăm și să vă învățăm.

Sursa: www.habr.com

Adauga un comentariu