Szeretettel Stepik: Hyperskill oktatási platform

Arról szeretnék beszélni Önnel, hogy miért javítunk gyakrabban a vízvezetékeket, minthogy értekezéseket írunk róla, a programozás tanításának különböző megközelítéseiről, és arról, hogyan próbáljuk ezek egyikét alkalmazni új termékünkben, a Hyperskillben.

Ha nem szereted a hosszú bevezetőket, ugorj közvetlenül a programozásról szóló bekezdésre. De kevésbé lesz szórakoztató.

Szeretettel Stepik: Hyperskill oktatási platform

Lírai kitérő

Képzeljünk el egy bizonyos fiatal hölgyet, Mását. Ma Mása egy kis gyümölcsöt mosott, és egy filmet nézhetett békében, de balszerencse: hirtelen rájött, hogy a mosogató eltömődött. Egyelőre nem világos, hogy ezzel mit kezdjünk. Ezt a kérdést határozatlan időre elhalaszthatja, de most van szabad ideje, így Masha úgy dönt, hogy azonnal foglalkozik a problémával. A józan ész két lehetőséget javasol: a) hívj vízvezeték-szerelőt b) intézd el magad. A fiatal hölgy a második lehetőséget választja, és elkezdi tanulmányozni a YouTube-on található utasításokat. Vasya_the_plumber felhasználó tanácsát követve Mása benéz a mosogató alá, és meglát egy több részből álló műanyag csövet. A lány óvatosan kicsavar egy darabot a mosogató alján, és nem talál semmit. Egy alsó csődarabról kiderül, hogy szorosan eltömődött egy ismeretlen anyag, és még az asztalon talált villa sem tud megbirkózni az eltömődéssel. Az internet szakértői kiábrándító előrejelzéseket adnak: az alkatrészt meg kell változtatni. Mása a térképen megkeresi a legközelebbi boltot, magával viszi a szerencsétlenül járt pipadarabot, és ugyanazt, csak újat veszi. Mása az eladó tanácsára új szűrőt is ragad a megelőzés érdekében. A küldetés befejeződött: a mosogató ismét úgy működik, ahogy kell, főszereplője pedig közben megtanulta a következőket:

  • A mosogató alatti csöveket saját maga is lecsavarhatja és meghúzhatja;
  • A legközelebbi vízvezeték-szerelő másfél kilométerre van Mashina lakásától.

Valószínűleg Masha észre sem vette, mennyi új dolgot tanult és tanult, mert aggódott a saját kényelméért a jövőben, és ugyanakkor filmet néz és megmossa az almát. Ha legközelebb hasonló probléma merül fel, a lány sokszor gyorsabban megoldja. Valójában Mása nem egyszerűen visszaállította a világot a megszokott állapotába; tanult induktív módon, vagyis speciális esetekben, ill gyakorlatorientált, vagyis úgy, hogy inkább megcsinálunk dolgokat, mintsem részletesen és előre tanulmányozzuk azokat.

Minden másképp alakulhatott volna. Tegyük fel, hogy Masha este egy széken ül, és hirtelen rájön, hogy mentálisan és fizikailag nincs felkészülve egy dugulásra a mosogatóban. Gyorsan beiratkozik egy vízvezeték-szerelő akadémiára, ahol tanulmányozza a mosogatók, csövek típusait és a lehetséges csatlakozásokat, a vízvezeték-problémák osztályozását és a lehetséges megoldásokat. Masha nem alszik éjszaka, memorizálja a kifejezéseket és a neveket. Talán még doktori disszertációt is ír az elméleti csőtudományról, ahol a gumitömítéseket tárgyalja. Végül, miután megkapta a tanúsítványt, Mása büszkén néz körbe a konyhában, teljes bizalommal, hogy most a mosogatóval kapcsolatos legkisebb probléma is egy ujjpattintással megoldódik. Ebben a forgatókönyvben a lány tanult deduktív módon, az általánostól a konkrét felé haladva, és jobban összpontosított elmélet.

Tehát melyik megközelítés a legjobb? Mosogató és dugulás esetén az első, és a következő okok miatt:

  1. Ha csak egy működő mosogató fontos, akkor elég csak azt tudni, hogy mi vonatkozik erre a területre. Amikor Mása rájön, hogy hiányzik a tudása, biztosan megtalálja a módját, hogy többet tanuljon.
  2. Előfordulhat, hogy az enciklopédikus tudás valós helyzetben nem aktiválódik, mert a szokás nem alakult ki. A cselekvések sorrendjének megismeréséhez érdemes nem olvasni róluk, hanem végrehajtani.

Hagyjuk békén szegény Mását, és folytassuk a tanulási folyamatot.

Programozás: tanulni vagy csinálni?

Azt szoktuk gondolni, hogy ahhoz, hogy egy ismeretlen területen fejlődjünk, és szakértővé váljunk, először egyetemre kell járnunk, vagy legalább beiratkoznunk tanfolyamokra. Rendszeresen meghallgatjuk, amit mondanak, és végrehajtjuk a feladatokat. Amikor kezünkben van a hőn áhított oklevél vagy bizonyítvány, azonnal elveszünk, mert még mindig nem értjük, miért van szükségünk ennyi információra, és konkrétan hogyan alkalmazzuk. Ez nem probléma, ha a következő tervei között szerepel, hogy tudományos cikkeket írjon, és utazzon velük konferenciákra. Ellenkező esetben érdemes a készségekre törekedni, vagyis konkrét dolgokat csinálni és újra megcsinálni, próbálkozni és hibázni, hogy sokáig emlékezzünk arra, mit nem érdemes megtenni.

Az egyik olyan terület, ahol a „kemény kéz” vagy a „gyémántszem” együtt jár a széles látókörrel, a programozás. Ha tapasztalt fejlesztőkkel beszélgetsz, bátor történeteket fogsz hallani, amelyekben az ember kiskorától kezdve matematikát/fizikát/tanítást tanult, majd elfáradt és a háttérbe költözött. Lesznek felsőfokú végzettséggel nem rendelkező programozók is! Először is, egy fejlesztőben nem a bizonyítvány vagy az oklevél számít, hanem az írott programok, szkriptek és weboldalak mennyisége és minősége.

„De várj!” – tiltakozol: „Gyönyörűen hangzik – fogd és csináld!” Nem tudok könnyen programot írni magamnak, ha korábban nem programoztam! Fontos számomra, hogy megértsem, hova kell írni, hogyan kell alapvetően programnyelven beszélni egy fordítóval. Ez nem olyan, mint egy vízvezeték-szerelő telefonszámát megtalálni a Google-on.”

Ebben is van egy keserű igazság. Egyik ismeretlen szempont a másikhoz vezet, ami viszont egy harmadikhoz, és ez a folyamat hamarosan bűvész show-ba fajul, aki tovább húzza a megkötött zsebkendőket, és nem tudja kiszedni a cilinderből. A folyamat őszintén szólva kellemetlen, az 5. „zsebkendőre” már úgy tűnik, hogy a tudatlanság mélysége közel áll a Mariana-árokhoz. Ennek alternatívája ugyanaz az előadás, amely 10 típusú változóról, 3 típusú ciklusról és 150 potenciálisan hasznos könyvtárról szól. Szomorúan.

Hyperskill: építettünk, építettünk és végül építettünk

Sokáig gondolkodtunk ezen a problémán. Blogunk utolsó bejegyzésének dátuma sokat elárul arról, hogy mióta gondolkodunk. Azok a viták és kísérletek, amelyek az új megközelítés integrálására a Stepiken történtek, végül... egy másik oldalra jutottunk. Lehet, hogy már hallott róla a JetBrains Academy részeként. A projekt alapú tanulásba épített Hyperskill-nek hívtuk, Java tudásbázist kapcsoltunk hozzá, és igénybe vettük az EduTools csapatának támogatását. És most további részletek.

Szeretettel Stepik: Hyperskill oktatási platform

Konkrét cél. A projektek „menüjét” kínáljuk, pl. programokat, amelyeket segítségünkkel megírhat. Köztük van tic-tac-toe, személyi asszisztens, blokklánc, kereső stb. A projektek 5-6 szakaszból állnak; Minden szakasz eredménye egy kész program. "Akkor miért van szükségünk a többi szakaszra, ha az elsőben már minden sikerült?" Köszönöm a kérdést. A program minden lépéssel funkcionálisabbá vagy gyorsabbá válik. Eleinte 10 soros a kód, de lehet, hogy a végén nem is fér bele az 500-ba.

Немного теории. Még a Hello World-et sem lehet leülni és írni anélkül, hogy egy szót sem tudna a programozásról. Ezért a projekt minden szakaszában látja, hogy milyen elméleti alapokat kell elsajátítania, és ami a legfontosabb, hol szerezheti be azokat. Az alapok a Hyperskill „Tudástérkép” részében is megtalálhatók. Ha a projekt első szakaszában a hallgatóknak nem kell adatokat olvasniuk egy fájlból, akkor előfordulhat, hogy nem tudják folytatni. Később saját maguk tanulják meg, általános fejlődéshez, vagy a következő szakaszban lesz rá szükségük.

Szeretettel Stepik: Hyperskill oktatási platform

Tudástérkép. Megmutatja, hogy milyen témákat tanult már, és ezek hogyan kapcsolódnak egymáshoz. Nyissa ki bármelyik aranyos felsőt. Átfuthatja, de javasoljuk, hogy végezzen el kisebb feladatokat, hogy biztosan beleférjen az információ a fejébe. Először a platform teszteket ad, majd néhány programozási feladatot ad. Ha a kód összeállítja és átmegy a teszteken, hasonlítsa össze a referenciamegoldással, néha ez segít megtalálni az optimálisabb megvalósítási módot. Vagy győződjön meg arról, hogy a megoldás már kiváló.

Semmi extra. Várjuk a „zöld” felhasználókat és a tapasztalt fejlesztőket egyaránt. Ha már írtál programokat, akkor mindegy, nem kényszerítjük a 2+2 hozzáadását, vagy a sor újrafordítását. Ahhoz, hogy azonnal elérje a kívánt szintet, regisztrációkor jelölje meg, amit már ismer, és válasszon egy nehezebb projektet. Ne félj túlbecsülni magad: ha bármi történik, mindig visszatérhetsz egy elfelejtett témához a tudástérképen.

Szeretettel Stepik: Hyperskill oktatási platform

Hangszerek. Nagyon jó kis kódrészleteket írni egy speciális ablakba a webhelyen, de az igazi programozás a fejlesztői környezetben való munkával kezdődik (Iintegrált DFEJLESZTÉS Ekörnyezet). A tapasztalt programozók nem csak a kódírást ismerik, hanem azt is, hogyan tervezzenek grafikus felületet, hogyan állítsanak össze különböző fájlokat egy projektbe, hogyan használnak további fejlesztőeszközöket, és az IDE gondoskodik e folyamatok egy részéről. Miért nem tanulja meg ezeket a készségeket, miközben programozást tanul? Itt jön segítségül a JetBrains és az IntelliJ IDEA Community Educational speciális verziója egy előre telepített EduTools bővítménnyel. Egy ilyen IDE-ben részt vehet tanfolyamokon, ellenőrizheti a megoldott problémákat, és megtekintheti a projekttippeket, ha valamit elfelejtett. Ne aggódjon, ha először hallja a „plugin” vagy az „IDE” szót: elmondjuk, mi az, és hogyan telepítheti számítógépére vagy laptopjára minimális szenvedéssel. Értse meg az elméletet, majd lépjen az IDE-be, és ott fejezze be a projekt következő szakaszát.

Határidők. Egyik sem létezik! Kik vagyunk mi, hogy kopogtassunk, és megmondjuk, milyen ütemben írjunk programot? Ha szereti írni a kódot, és be akarja fejezni, akkor ma vagy holnap fejezze be. Fejleszd a saját örömödre.

Hibák. Mindenki elismeri őket, így Ön is a projekt valamelyik szakaszában, és akkor ez a szakasz nem megy át az automatikus teszteken. Nos, neked magadnak kell rájönnöd, hogy mi volt a baj. Meg tudjuk mondani, hol van a hiba, de ez megtanítaná, hogyan kell óvatosan írni a kódot? Olvassa el az IDEA tippjeit vagy egy elméleti témát a hibákkal kapcsolatban, és ha a program végre működik, a dopamin rohama valószínűleg nem fog sokáig várni.

Egyértelmű eredmény. Szóval, elkészült az első vázlat, mi lesz ezután? Élvezd munkád gyümölcsét! Játssz tic-tac-toe-t a barátaiddal, és egyben dicsekedj a sikereddel. Töltsd fel a projektet a GitHubra, hogy megmutasd egy jövőbeli munkáltatónak, írj magadnak leírást, és jelezd ott az általad alkalmazott tudást. 4-5 komplex projekt, és most már egy szerény portfólió is készen áll egy kezdő fejlesztő számára.

Lehetőség a növekedésre. Tegyük fel, hogy megnézed a Hyperskill-t, és nem látsz ott semmilyen fontos témát vagy hasznos projektet. Értesítsen minket róla! Ha a háttered szélesebb és gazdagabb, mint a tudástérkép, akkor írj nekünk az űrlapon hozzájárul. Csapatunk megosztja Önnel saját tippjeinket és trükkjeinket, így örömmel segítünk, hogy tudását hasznos tartalommá alakítsa, amely érthető a különböző korú és szintű felhasználók számára. Talán még fizetünk is, de ez nem biztos.

Üdvözöljük: hi.hyperskill.org Gyere be, nézd meg, próbáld ki, ajánlj, dicsérj és kritizálj. Megtanulunk tanítani is.

Forrás: will.com

Hozzászólás