Met liefde van Stepik: Hyperskill opvoedkundige platform

Ek wil met jou praat oor hoekom ons loodgieterswerk meer gereeld regmaak as wat ons verhandelings daaroor skryf, oor verskillende benaderings tot die onderrig van programmering, en hoe ons probeer om een ​​daarvan in ons nuwe produk Hyperskill toe te pas.

As jy nie van lang inleidings hou nie, gaan dan reguit na die paragraaf oor programmering. Maar dit sal minder pret wees.

Met liefde van Stepik: Hyperskill opvoedkundige platform

Liriese toevlug

Kom ons stel ons 'n sekere jong dame Masha voor. Vandag gaan Masha in vrede vrugte was en fliek kyk, maar ongeluk: skielik ontdek sy dat die kombuis wasbak verstop is. Dit is nog nie duidelik wat om hiermee te doen nie. Jy kan hierdie kwessie onbepaald uitstel, maar daar is nou vrye tyd, so Masha besluit om dadelik die probleem te hanteer. Gesonde verstand stel twee opsies voor: a) bel 'n loodgieter b) hanteer dit self. Die jong dame kies die tweede opsie en begin om die instruksies op YouTube te bestudeer. Na aanleiding van die raad van gebruiker Vasya_the_plumber, kyk Masha onder die wasbak en sien 'n kronkelende plastiekpyp wat uit verskeie dele bestaan. Die meisie skroef versigtig een stuk aan die basis van die wasbak los en kry niks nie. 'n Onderste stuk pyp blyk styf verstop te wees met 'n onbekende stof, en selfs 'n vurk wat op die tafel gevind word, kan nie die blokkasie hanteer nie. Kenners van die internet gee teleurstellende voorspellings: die deel sal verander moet word. Op die kaart vind Masha die naaste winkel, neem die noodlottige stuk pyp saam en koop dieselfde een, net nuut. Op advies van die verkoper gryp Masha ook 'n nuwe sif vir voorkoming. Die soeke is voltooi: die wasbak werk weer soos dit moet, en sy hoofkarakter het intussen die volgende geleer:

  • Jy kan self die pype onder die wasbak afskroef en styfdraai;
  • Die naaste loodgieterwinkel is een en 'n half kilometer van Mashina se woonstel af.

Heel waarskynlik het Masha nie eers opgemerk hoeveel nuwe dinge sy geleer en geleer het nie, want sy was bekommerd oor haar eie gemak in die toekoms, en terselfdertyd 'n fliek gekyk en haar appel gewas. Die volgende keer as 'n soortgelyke probleem opduik, sal die meisie dit baie keer vinniger oplos. Trouens, Masha het nie net die wêreld in sy gewone toestand teruggebring nie; sy het gestudeer induktief, dit wil sê in spesiale gevalle, en praktykgerig, dit wil sê deur dinge te doen eerder as om dit in detail en vooraf te bestudeer.

Alles kon anders uitgedraai het. Gestel Masha sit saans in 'n stoel en besef skielik dat sy geestelik en fisies onvoorbereid is vir 'n prop in die wasbak. Sy skryf vinnig in by 'n loodgietersakademie en bestudeer die tipe wasbakke, pype en moontlike verbindings, die klassifikasie van loodgieterprobleme en moontlike oplossings daarvoor. Masha slaap nie snags nie en memoriseer terme en name. Miskien skryf sy selfs 'n PhD-proefskrif oor teoretiese pypwetenskap, waar sy rubberpakkings bespreek. Uiteindelik, met die ontvangs van die sertifikaat, kyk Masha trots in die kombuis rond in volle vertroue dat selfs die geringste probleem met die wasbak nou met die knip van 'n vinger opgelos sal word. In hierdie scenario het die meisie gestudeer deduktief, beweeg van die algemene na die spesifieke, en was meer gefokus op teorie.

So watter benadering is die beste? In die geval van 'n wasbak en 'n klomp - die eerste, en om hierdie redes:

  1. As slegs 'n werkende wasbak belangrik is, dan is dit genoeg om net te weet wat hierdie spesifieke area aangaan. Wanneer Masha besef dat sy nie kennis het nie, sal sy beslis 'n manier vind om meer te leer.
  2. Ensiklopediese kennis mag nie in 'n werklike situasie geaktiveer word nie omdat die gewoonte nie ontwikkel is nie. Om die volgorde van aksies te leer, maak dit sin om nie daaroor te lees nie, maar om dit uit te voer.

Kom ons los die arme Masha uit en gaan aan na die leerproses as sodanig.

Programmering: leer of doen?

Ons is gewoond daaraan om te dink dat om te ontwikkel en 'n kenner op 'n onbekende gebied te word, ons eers universiteit toe moet gaan of ten minste vir kursusse moet inskryf. Ons luister gereeld na wat hulle vir ons sê en voer take uit. Wanneer ons die gesogte diploma of sertifikaat in ons hande het, is ons dadelik verlore, want ons verstaan ​​steeds nie hoekom ons soveel inligting nodig het en hoe om dit spesifiek toe te pas nie. Dit is geen probleem as jou volgende planne is om wetenskaplike referate te skryf en saam met hulle na konferensies te reis nie. Andersins is dit die moeite werd om na vaardighede te streef, dit wil sê om spesifieke dinge weer te doen en te doen, te probeer en foute te maak om vir 'n lang tyd te onthou wat die beste is om nie te doen nie.

Een van die areas waar 'n "harde hand" of 'n "diamantoog" met 'n breë uitkyk hand aan hand gaan, is programmering. As jy met ervare ontwikkelaars praat, sal jy dapper stories hoor waarin 'n persoon van kleins af wiskunde/fisika/onderrig gestudeer het, en dan moeg geword het en na die agterkant geskuif het. Daar sal ook programmeerders sonder hoër onderwys wees! Eerstens, wat in 'n ontwikkelaar gewaardeer word, is nie 'n sertifikaat of diploma nie, maar die hoeveelheid en kwaliteit van geskrewe programme, skrifte en webwerwe.

"Maar wag!", maak jy beswaar, "Klink pragtig - neem dit en doen dit!" Ek kan nie maklik vir myself 'n program skryf as ek nog nie voorheen geprogrammeer het nie! Dit is vir my belangrik om te verstaan ​​waar om te skryf, hoe om basies in 'n programmeertaal met 'n samesteller te praat. Dit is nie soos om ’n loodgieter se telefoonnommer op Google te vind nie.”

Hierin steek ook 'n bitter waarheid. Een onbekende aspek lei tot 'n ander, wat weer lei tot 'n derde, en gou verander hierdie proses in 'n towenaar se vertoning, wat aanhou om vasgemaakte sakdoeke uit te trek en dit nie uit die hoë hoed kan kry nie. Die proses, om eerlik te wees, is onaangenaam; teen die 5de "sakdoek" blyk dit reeds dat die diepte van onkunde naby die Mariana-sloot is. 'n Alternatief hiervoor is dieselfde lesings oor 10 tipes veranderlikes, 3 tipes lusse en 150 potensieel bruikbare biblioteke. Ongelukkig.

Hipervaardigheid: ons het gebou, gebou en uiteindelik gebou

Ons het lank oor hierdie probleem gedink. Die datum van die laaste plasing op ons blog spreek boekdele oor hoe lank ons ​​al gedink het. Na al die debatte en pogings om die nuwe benadering op Stepik te integreer, het ons uiteindelik met ... 'n ander webwerf beland. Jy het dalk al daarvan gehoor as deel van JetBrains Academy. Ons het dit Hyperskill genoem, ingebou in projekgebaseerde leer, 'n Java-kennisbasis daaraan gekoppel en die ondersteuning van die EduTools-span gekry. En nou meer besonderhede.

Met liefde van Stepik: Hyperskill opvoedkundige platform

Spesifieke doelwit. Ons bied 'n "spyskaart" van projekte, m.a.w. programme wat jy met ons hulp kan skryf. Onder hulle is tic-tac-toe, persoonlike assistent, blokketting, soekenjin, ens. Projekte bestaan ​​uit 5-6 fases; Die resultaat van elke fase is 'n voltooide program. “Hoekom het ons dan die ander fases nodig as alles reeds in die eerste uitgewerk het?” Dankie vir die vraag. Met elke stap word die program meer funksioneel of vinniger. Aanvanklik neem die kode 10 reëls, maar op die ou end pas dit dalk nie eers by 500 nie.

Bietjie teorie. Dit is onmoontlik om te gaan sit en selfs Hello World te skryf sonder om 'n woord van programmering te weet. Daarom, in elke stadium van die projek, sien jy watter teoretiese basiese beginsels jy moet bemeester en, bowenal, waar om dit te kry. Die basiese beginsels is ook op Hyperskill in die "Knowledge Map"-afdeling geleë. As daar vir die eerste fase van die projek nie van studente verwag word om data uit 'n lêer te lees nie, kan hulle dalk nie voortgaan nie. Hulle sal dit later self leer, vir algemene ontwikkeling, of hulle sal dit in die volgende stadium nodig hê.

Met liefde van Stepik: Hyperskill opvoedkundige platform

Kenniskaart. Dit wys jou watter onderwerpe jy reeds bestudeer het en hoe hulle met mekaar verband hou. Maak enige oulike toppie oop. Jy kan daardeur blaai, maar ons beveel aan dat jy klein take voltooi om seker te maak dat die inligting in jou kop pas. Eerstens sal die platform vir jou toetse gee, waarna dit vir jou 'n paar programmeringstake sal gee. As die kode die toetse saamstel en slaag, vergelyk dit met die verwysingsoplossing, soms help dit om 'n meer optimale manier uit te vind om dit te implementeer. Of maak seker dat jou oplossing reeds uitstekend is.

Niks ekstra nie. Ons wag vir beide "groen" gebruikers en ervare ontwikkelaars. As jy reeds programme geskryf het, maak dit nie saak nie, ons sal jou nie dwing om 2+2 by te voeg of weer 'n reël om te draai nie. Om onmiddellik op die verlangde vlak te kom, wanneer jy registreer, dui aan waarmee jy reeds vertroud is en kies 'n moeiliker projek. Moenie bang wees om jouself te oorskat nie: as iets gebeur, kan jy altyd terugkeer na 'n vergete onderwerp in die kenniskaart.

Met liefde van Stepik: Hyperskill opvoedkundige platform

Gereedskap. Dit is wonderlik om klein stukkies kode in 'n spesiale venster op die webwerf te skryf, maar werklike programmering begin met die werk in die ontwikkelingsomgewing (Igeïntegreer Development Eomgewing). Ervare programmeerders weet nie net hoe om kode te skryf nie, maar ook hoe om 'n grafiese koppelvlak te ontwerp, verskillende lêers in 'n projek saam te stel, addisionele ontwikkelingsinstrumente te gebruik, en die IDE sorg vir sommige van hierdie prosesse. Hoekom nie hierdie vaardighede aanleer terwyl jy programmering leer nie? Dit is waar JetBrains tot die redding kom en 'n spesiale weergawe van IntelliJ IDEA Community Educational met 'n vooraf geïnstalleerde EduTools-inprop. In so 'n IDE kan jy opleidingskursusse volg, opgeloste probleme nagaan en na projekwenke kyk as jy iets vergeet het. Moenie bekommerd wees as dit jou eerste keer is dat jy die woord "plugin" of "IDE" hoor nie: ons sal jou vertel wat dit is en hoe om dit met minimale lyding op jou rekenaar of skootrekenaar te installeer. Verstaan ​​die teorie, en gaan dan na die IDE en voltooi die volgende fase van die projek net daar.

Sperdatums. Daar is nie een van hulle nie! Wie is ons om aan die kop te klop en vir jou te sê teen watter pas om 'n program te skryf? Wanneer jy dit geniet om kode te skryf en dit wil voltooi, maak jy dit klaar, vandag of môre. Doen ontwikkeling vir jou eie plesier.

Foute. Almal erken hulle, so ook jy in een van die stadiums van die projek, en dan sal hierdie stadium nie die outomatiese toetse slaag nie. Wel, jy sal self moet uitvind wat verkeerd geloop het. Ons kan jou vertel waar die fout lê, maar sal dit jou leer hoe om kode versigtig te skryf? Lees wenke van IDEA of 'n teoretiese onderwerp oor Goggas, en wanneer die program uiteindelik werk, sal die stormloop van dopamien heel waarskynlik nie lank wees om te kom nie.

'n Duidelike resultaat. So, jy het die eerste konsep voltooi, wat volgende? Geniet die vrugte van jou arbeid! Speel tic-tac-toe met jou vriende en spog terselfdertyd oor jou sukses. Laai die projek op na GitHub om dit aan 'n toekomstige werkgewer te wys, skryf self 'n beskrywing en dui daar die kennis aan wat jy toegepas het. 4-5 komplekse projekte, en nou is 'n beskeie portefeulje vir 'n beginner-ontwikkelaar gereed.

Geleentheid vir groei. Kom ons sê jy kyk na Hyperskill en sien geen belangrike onderwerp of nuttige projek daar nie. Laat weet ons daarvan! As jou agtergrond wyer en ryker is as die kenniskaart, skryf dan vir ons in die vorm Dra. Ons span sal ons eie wenke en truuks met jou deel, so ons sal jou graag help om jou kennis te omskep in nuttige inhoud wat verstaanbaar is vir gebruikers van verskillende ouderdomme en vlakke. Miskien sal ons selfs betaal, maar dit is nie seker nie.

Welkom: hi.hyperskill.org Kom in, kyk, probeer, stel voor, prys en kritiseer. Ons leer ook om jou te leer.

Bron: will.com

Voeg 'n opmerking