Med kjærlighet fra Stepik: Hyperskill pedagogisk plattform

Jeg vil snakke med deg om hvorfor vi fikser rørleggerarbeid oftere enn vi skriver avhandlinger om det, om ulike tilnærminger til undervisning i programmering, og hvordan vi prøver å bruke en av dem i vårt nye produkt Hyperskill.

Hvis du ikke liker lange introduksjoner, hopp rett til avsnittet om programmering. Men det blir mindre moro.

Med kjærlighet fra Stepik: Hyperskill pedagogisk plattform

Lyrisk digresjon

La oss forestille oss en viss ung dame Masha. I dag skulle Masha vaske litt frukt og se en film i fred, men uflaks: plutselig oppdaget hun at kjøkkenvasken var tett. Det er ennå ikke klart hva man skal gjøre med dette. Du kan utsette dette problemet på ubestemt tid, men det er ledig tid nå, så Masha bestemmer seg for å håndtere problemet med en gang. Sunn fornuft foreslår to alternativer: a) ring en rørlegger b) ta det selv. Den unge damen velger det andre alternativet og begynner å studere instruksjonene på YouTube. Etter råd fra brukeren Vasya_the_plumber, ser Masha under vasken og ser et slangeformet plastrør som består av flere deler. Jenta skrur forsiktig av ett stykke ved bunnen av vasken og finner ingenting. Et nedre rørstykke viser seg å være tett tilstoppet med et ukjent stoff, og selv en gaffel som finnes på bordet kan ikke takle blokkeringen. Eksperter fra Internett gir skuffende prognoser: delen må endres. På kartet finner Masha nærmeste butikk, tar med seg den skjebnesvangre pipebiten og kjøper den samme, bare ny. Etter råd fra selgeren tar Masha også tak i en ny sil for forebygging. Oppdraget er fullført: vasken fungerer som den skal igjen, og hovedpersonen har i mellomtiden lært følgende:

  • Du kan skru av og stramme rørene under vasken selv;
  • Nærmeste rørleggerbutikk ligger halvannen kilometer fra Mashinas leilighet.

Mest sannsynlig la Masha ikke engang merke til hvor mange nye ting hun hadde lært og lært, fordi hun var bekymret for sin egen komfort i fremtiden, og samtidig så på en film og vasket eplet sitt. Neste gang et lignende problem oppstår, vil jenta løse det mange ganger raskere. Faktisk returnerte Masha ikke bare verden til sin vanlige tilstand; hun studerte induktivt, det vil si i spesielle tilfeller, og praksisorientert, det vil si ved å gjøre ting i stedet for å studere dem i detalj og på forhånd.

Alt kunne ha blitt annerledes. Anta at Masha sitter i en stol om kvelden og plutselig innser at hun er mentalt og fysisk uforberedt på en tett i vasken. Hun melder seg raskt på et rørleggerakademi, og studerer typer vasker, rør og mulige koblinger, klassifiseringen av rørleggerproblemer og mulige løsninger på dem. Masha sover ikke om natten, utenat ord og navn. Kanskje skriver hun til og med en doktorgradsavhandling om teoretisk rørvitenskap, hvor hun diskuterer gummipakninger. Til slutt, etter å ha mottatt sertifikatet, ser Masha stolt rundt på kjøkkenet i full tillit til at nå vil selv det minste problemet med vasken bli løst med et fingerknips. I dette scenariet studerte jenta deduktivt, flyttet fra det generelle til det spesifikke, og var mer fokusert på teori.

Så hvilken tilnærming er best? I tilfelle av en vask og en tette - den første, og av disse grunnene:

  1. Hvis bare en fungerende vask er viktig, er det nok å bare vite hva som angår dette spesielle området. Når Masha innser at hun mangler kunnskap, vil hun definitivt finne en måte å lære mer på.
  2. Encyklopedisk kunnskap kan ikke aktiveres i en reell situasjon fordi vanen ikke er utviklet. For å lære sekvensen av handlinger, er det fornuftig å ikke lese om dem, men å utføre dem.

La oss la stakkars Masha være i fred og gå videre til læringsprosessen som sådan.

Programmering: lære eller gjøre?

Vi er vant til å tenke at for å utvikle oss og bli en ekspert på et ukjent felt, må vi først gå på universitetet eller i det minste melde oss på kurs. Vi lytter jevnlig til hva de forteller oss og utfører oppgaver. Når vi har det ettertraktede vitnemålet eller sertifikatet i våre hender, er vi øyeblikkelig tapt, fordi vi fortsatt ikke forstår hvorfor vi trenger så mye informasjon og hvordan spesifikt skal brukes. Dette er ikke noe problem hvis dine neste planer er å skrive vitenskapelige artikler og reise med dem til konferanser. Ellers er det verdt å strebe etter ferdigheter, det vil si å gjøre og gjøre spesifikke ting igjen, prøve og gjøre feil for å huske lenge hva som er best å ikke gjøre.

Et av områdene der en "tøff hånd" eller et "diamantøye" går hånd i hånd med et bredt syn, er programmering. Hvis du snakker med erfarne utviklere, vil du høre modige historier der en person studerte matematikk/fysikk/undervisning fra ung alder, og deretter ble sliten og flyttet til backend. Det vil også være programmerere uten høyere utdanning! For det første, det som verdsettes hos en utvikler er ikke et sertifikat eller diplom, men mengden og kvaliteten på skriftlige programmer, skript og nettsteder.

"Men vent!", innvender du, "høres vakkert ut - ta det og gjør det!" Jeg kan ikke enkelt skrive meg et program hvis jeg ikke har programmert før! Det er viktig for meg å forstå hvor jeg skal skrive, hvordan man i utgangspunktet snakker på et programmeringsspråk med en kompilator. Det er ikke som å finne en rørleggers telefonnummer på Google.»

Det er en bitter sannhet i dette også. Ett ukjent aspekt fører til et annet, som igjen fører til et tredje, og snart blir denne prosessen til et magikershow, som fortsetter å trekke frem bundne lommetørklær og ikke får dem ut av topphatten. Prosessen, for å være ærlig, er ubehagelig; ved det femte "lommetørkleet" ser det allerede ut til at dybden av uvitenhet er nær Mariana-graven. Et alternativ til dette er de samme forelesningene om 5 typer variabler, 10 typer sløyfer og 3 potensielt nyttige biblioteker. Dessverre.

Hyperskill: vi bygde, bygde og til slutt bygde

Vi har tenkt på dette problemet lenge. Datoen for det siste innlegget på bloggen vår sier mye om hvor lenge vi har tenkt. Etter alle debattene og forsøkene på å integrere den nye tilnærmingen på Stepik, endte vi opp med... et annet nettsted. Du har kanskje allerede hørt om det som en del av JetBrains Academy. Vi kalte det Hyperskill, bygget i prosjektbasert læring, koblet en Java-kunnskapsbase til den, og fikk støtte fra EduTools-teamet. Og nå flere detaljer.

Med kjærlighet fra Stepik: Hyperskill pedagogisk plattform

Spesifikt mål. Vi tilbyr en «meny» med prosjekter, dvs. programmer som du kan skrive med vår hjelp. Blant dem er tic-tac-toe, personlig assistent, blockchain, søkemotor, etc. Prosjekter består av 5-6 trinn; Resultatet av hvert trinn er et ferdig program. "Så hvorfor trenger vi de andre stadiene hvis alt allerede har fungert i den første?" Takk for spørsmålet. For hvert trinn blir programmet mer funksjonelt eller raskere. Først tar koden 10 linjer, men til slutt passer den kanskje ikke inn i 500 engang.

Litt teori. Det er umulig å sette seg ned og skrive til og med Hello World uten å kunne et ord om programmering. Derfor, på hvert trinn av prosjektet, ser du hvilke teoretiske grunnleggende du må mestre og, viktigst av alt, hvor du kan få dem. Det grunnleggende finnes også på Hyperskill i delen "Kunnskapskart". Hvis studentene i den første fasen av prosjektet ikke er pålagt å lese data fra en fil, kan det hende at de ikke kan fortsette. De vil lære det selv senere, for generell utvikling, eller de vil trenge det på neste trinn.

Med kjærlighet fra Stepik: Hyperskill pedagogisk plattform

Kunnskapskart. Den viser deg hvilke emner du allerede har studert og hvordan de forholder seg til hverandre. Åpne hvilken som helst søt topp. Du kan skumme gjennom den, men vi anbefaler at du utfører små oppgaver for å være sikker på at informasjonen passer inn i hodet ditt. Først vil plattformen gi deg tester, deretter vil den gi deg et par programmeringsoppgaver. Hvis koden kompilerer og består testene, sammenlign den med referanseløsningen, noen ganger hjelper dette til å finne ut en mer optimal måte å implementere den på. Eller sørg for at løsningen din allerede er utmerket.

Ikke noe ekstra. Vi venter på både "grønne" brukere og erfarne utviklere. Hvis du allerede har skrevet programmer, spiller det ingen rolle, vi vil ikke tvinge deg til å legge til 2+2 eller snu en linje på nytt. For umiddelbart å komme til ønsket nivå, når du registrerer deg, angi hva du allerede er kjent med og velg et vanskeligere prosjekt. Ikke vær redd for å overvurdere deg selv: Hvis noe skjer, kan du alltid gå tilbake til et glemt emne i kunnskapskartet.

Med kjærlighet fra Stepik: Hyperskill pedagogisk plattform

Instrumenter. Det er flott å skrive små kodebiter i et spesielt vindu på siden, men ekte programmering begynner med å jobbe i utviklingsmiljøet (Iintegrert Development Emiljø). Erfarne programmerere vet ikke bare hvordan de skal skrive kode, men også hvordan de skal designe et grafisk grensesnitt, sette sammen forskjellige filer til et prosjekt, bruke ytterligere utviklingsverktøy, og IDE tar seg av noen av disse prosessene. Hvorfor ikke lære disse ferdighetene mens du lærer programmering? Det er her JetBrains kommer til unnsetning og en spesialversjon av IntelliJ IDEA Community Educational med en forhåndsinstallert EduTools-plugin. I en slik IDE kan du ta kurs, sjekke løste problemer og se på prosjekttips hvis du har glemt noe. Ikke bekymre deg om dette er første gang du hører ordet "plugin" eller "IDE": vi vil fortelle deg hva det er og hvordan du installerer det på datamaskinen eller bærbar PC med minimal lidelse. Forstå teorien, og gå deretter til IDE og fullfør neste fase av prosjektet der.

Tidsfrister. Det er ingen av dem! Hvem er vi til å banke på hodet og fortelle deg i hvilket tempo du skal skrive et program? Når du liker å skrive kode og ønsker å fullføre den, fullfører du den, i dag eller i morgen. Gjør utvikling for din egen fornøyelse.

Feil. Alle innrømmer dem, det gjør du også på et av stadiene i prosjektet, og da vil ikke dette stadiet bestå de automatiske testene. Vel, du må finne ut selv hva som gikk galt. Vi kan fortelle deg hvor feilen ligger, men vil det lære deg hvordan du skriver kode nøye? Les tips fra IDEA eller et teoretisk tema om Bugs, og når programmet endelig fungerer, vil rushen med dopamin mest sannsynlig ikke vente på å komme.

Et klart resultat. Så du har fullført det første utkastet, hva neste? Nyt fruktene av arbeidet ditt! Spill tikk med vennene dine og skryt av suksessen din samtidig. Last opp prosjektet til GitHub for å vise det til en fremtidig arbeidsgiver, skriv en beskrivelse selv, og angi der kunnskapen du har brukt. 4-5 komplekse prosjekter, og nå er en beskjeden portefølje for en begynnende utvikler klar.

Mulighet for vekst. La oss si at du ser på Hyperskill og ikke ser noe viktig emne eller nyttig prosjekt der. Gi oss beskjed om det! Hvis bakgrunnen din er bredere og rikere enn kunnskapskartet, så skriv til oss i skjemaet Bidra. Teamet vårt vil dele våre egne tips og triks med deg, så vi hjelper deg gjerne med å omdanne kunnskapen din til nyttig innhold som er forståelig for brukere på forskjellige aldre og nivåer. Kanskje vi til og med betaler, men det er ikke sikkert.

Velkommen: hei.hyperskill.org Kom inn, se, prøv, foreslå, ros og kritiser. Vi lærer også å lære deg.

Kilde: www.habr.com

Legg til en kommentar