Goede dingen zijn niet goedkoop. Maar ze kunnen wel gratis zijn.

In dit artikel wil ik het hebben over de Rolling Scopes School – een gratis cursus over JavaScript/front-end die ik heb gevolgd en die ik geweldig vond. Ik ontdekte deze cursus toevallig, en naar mijn mening is er weinig informatie over te vinden op het internet, terwijl de cursus fantastisch is en aandacht verdient. Ik denk dat dit artikel nuttig zal zijn voor degenen die op eigen kracht programmeren willen leren. In ieder geval zou ik iemand die me eerder over deze cursus had verteld, heel dankbaar zijn geweest.

Voor degenen die niet hebben geprobeerd om zelf vanaf nul te leren, kan de vraag ontstaan – waarom heb je cursussen nodig, want er is een overvloed aan informatie op het internet – neem het en leer. In werkelijkheid is een overvloed aan informatie niet altijd goed, omdat het soms helemaal niet eenvoudig is om uit die overvloed precies datgene te kiezen wat je nodig hebt. Een cursus kan je helpen: wat te leren, hoe te leren, in welk tempo te leren; het helpt je goede en betrouwbare informatiebronnen te onderscheiden van onbetrouwbare en verouderde; biedt een groot aantal praktische opdrachten; stelt je in staat deel uit te maken van een gemeenschap van gepassioneerde en geïnteresseerde mensen die hetzelfde doen als jij.

Gedurende de cursus voerden we voortdurend opdrachten uit: we maakten tests, losten problemen op, en creëerden onze eigen projecten. Al deze resultaten werden beoordeeld en in een algemene tabel opgenomen, waar we onze resultaten konden vergelijken met die van andere studenten. De sfeer van competitie is leuk, gezellig en interessant. Maar de punten, hoewel ze belangrijk zijn voor de volgende fase, waren niet ons doel. De organisatoren van de cursus stimuleerden ondersteuning en samenwerking – in de chat bespraken studenten vragen die tijdens het oplossen van opdrachten naar voren kwamen en probeerden samen antwoorden te vinden. Bovendien hielpen mentoren ons met het leren, wat voor een gratis cursus echt een unieke kans is.

De cursus loopt vrijwel continu: hij start twee keer per jaar en duurt zes maanden. Het bestaat uit drie fasen. In de eerste fase bestudeerden we voornamelijk Git en opmaak, in de tweede fase JavaScript, en in de derde fase React en Node.js.

In de volgende fase ging men verder op basis van de resultaten van de uitgevoerde taken in de vorige fase. Aan het einde van elke fase vond er een interview plaats. Na de eerste en tweede fase waren dit oefeninterviews met mentoren, na de derde fase werden er interviews georganiseerd in het Minskse EPAM JS Lab voor de beste honderdtwintig studenten. De cursus wordt gegeven door de Wit-Russische gemeenschap van front-end en JavaScript ontwikkelaars The Rolling Scopes, daarom is het begrijpelijk dat zij contacten hebben met het Minskse kantoor van EPAM. De gemeenschap probeert echter ook contacten te leggen en hun studenten aan te bevelen bij IT-bedrijven in andere steden in Wit-Rusland, Kazachstan en Rusland.

De eerste fase duurde iets meer dan een maand. Dit is de meest massale fase. In mijn cohort begonnen 1860 mensen – dat wil zeggen, iedereen die zich voor de cursus had ingeschreven. De cursus wordt gevolgd door mensen van verschillende leeftijden, maar de meerderheid van de studenten zijn ouderejaarsstudenten en mensen die, na enkele jaren in een andere sector te hebben gewerkt, besloten hun carrière te veranderen.

Tijdens de eerste fase hebben we twee toetsen over de basis van Git gemaakt, twee toetsen over HTML/CSS, cursussen gevolgd op Codecademy en HTML Academy, hebben we ons CV gemaakt in de vorm van een markdown-bestand en als een gewone webpagina, hebben we een kleine one-page lay-out gecodeerd, en verschillende vrij complexe taken in JavaScript opgelost.

De meest omvangrijke taak van de eerste fase was het bouwen van de website Hexal.
Het meest interessante was de game Code Jam over kennis van css-selectors 'CSS Quick Draw'.
De moeilijkste taken waren die in JavaScript. Een voorbeeld van zo'n taak: „Bepaal het aantal nullen aan het einde van de faculteit van een groot getal in het opgegeven talstelsel“.

Een voorbeeld van een taak uit de eerste fase: Hexal.

Op basis van de resultaten van de taken van de eerste fase ontvingen 833 studenten uitnodigingen voor een interview. De voortgang naar de tweede fase tijdens het interview werd bepaald door zijn toekomstige mentor. Mentoren van de Rolling Scopes School zijn actieve ontwikkelaars uit Wit-Rusland, Rusland en Oekraïne. Mentoren helpen en geven advies, controleren opdrachten en beantwoorden vragen. In ons cohort waren er meer dan 150 mentoren. Afhankelijk van de beschikbaarheid van vrije tijd kan een mentor tussen de twee en vijf studenten begeleiden, maar naar het interview worden er twee studenten meer gestuurd, zodat hij tijdens het interview de studenten kan kiezen waarmee hij wil werken.

De verdeling van studenten en mentoren was een van de interessantste en spannendste momenten van de cursus. De organisatoren hebben er een klein spelelement aan toegevoegd – de gegevens over de mentoren werden opgeslagen in een sorteermuts, waarop je kon klikken om de naam en contactgegevens van je toekomstige mentor te zien.

Toen ik de naam van mijn mentor ontdekte en zijn profiel op LinkedIn bekeek, begreep ik dat ik heel graag bij hem terecht wilde komen. Hij is een ervaren ontwikkelaar, senior, en werkt al enkele jaren in het buitenland. Zo'n mentor is echt een grote kans. Maar ik dacht dat zijn eisen, zoals het leek, heel hoog zouden zijn. Later bleek dat ik me vergiste over de te hoge verwachtingen, maar op dat moment dacht ik er zo over.

De vragen voor het aankomende interview waren bekend, dus je kon je er van tevoren op voorbereiden.
OOP leerde ik via video [J]u[S]t prototype this!. De auteur ervan - Sergey Melyukov - legt het op een zeer toegankelijke en duidelijke manier uit.
Gegevensstructuren en grote O-notatie worden uitstekend besproken in het artikel. Spiekbriefje voor technische interviews.
De grootste twijfels werden veroorzaakt door de JavaScript-taak, die ongetwijfeld op het interview zou komen. Ik hou over het algemeen van het oplossen van taken, maar met Google en in de browserconsole; als je het met de hand op papier (of met de muis in een notitieblok) moet doen, wordt alles veel moeilijker.
Het is handig om samen voor het interview voor te bereiden op de site skype.com/interviews/ – elkaar vragen te stellen en taken te bedenken. Dit is een vrij effectieve manier van voorbereiden: als je in verschillende rollen oefent, begrijp je beter diegene aan de andere kant van het scherm.

Waar kon mijn interview in mijn verbeelding op lijken? Waarschijnlijk op een examen, waar een examinator en een examenkandidaat zijn. In werkelijkheid was het zeker geen examen. Het was eerder een gesprek tussen twee gepassioneerde mensen die met hetzelfde bezig zijn. Het interview verliep uiterst rustig, comfortabel en vriendelijk; de vragen waren niet al te moeilijk, de taak behoorlijk eenvoudig, en bovendien had de mentor er absoluut geen bezwaar tegen dat ik het in de console oploste en zelfs toestemming gaf om Google te raadplegen ('op het werk mag niemand Google verbieden').

Voor zover ik begrijp, was het hoofddoel van het interview niet om onze kennis en probleemoplossende vaardigheden te testen, maar om de mentor de kans te geven om zijn studenten te leren kennen en te laten zien hoe een interview er in het algemeen uitziet. En het feit dat het interview alleen maar positieve indrukken achterliet, was het resultaat van zijn bewuste inspanningen en zijn wens om te laten zien dat er aan een interview niets engs is en dat je het met plezier kunt doorlopen. De andere vraag is waarom het iemand met een technische achtergrond zo gemakkelijk afging, terwijl dit leraren zelden lukt. Iedereen herinnert zich immers de zenuwen vóór een examen, zelfs als je het materiaal perfect kende. Aangezien we het over formele pedagogiek hebben, wil ik nog een observatie delen. Onder de studenten in de cursus waren ook studenten van hogere jaren in IT-specialisaties. Zij stelden dat het onderwijsvorm dat de Rolling Scopes School biedt, veel nuttiger, interessanter en effectiever is dan het reguliere universitaire programma.

Ik heb het interview doorlopen. Vervolgens heeft de mentor een dag en een tijdstip afgesproken waarop hij het prettig vond om met mij te praten. Voor die dag bereidde ik vragen voor, waarop hij antwoordde. Ik had niet veel vragen over de projecten aan het werk, de meeste antwoorden vond ik via Google of in de chat van de school. Maar hij vertelde over zijn werk, mogelijke problemen en manieren om die op te lossen, deelde zijn observaties en opmerkingen. Over het algemeen waren deze gesprekken uitzonderlijk nuttig en interessant. Bovendien is de mentor feitelijk de enige persoon die geïnteresseerd is in wat en hoe je het doet, iemand die naar je werk kijkt, je zal vertellen wat er niet klopt en hoe je het kunt verbeteren. Het hebben van mentoren is echt een groot voordeel van de school, waarvan de rol moeilijk te overschatten is.

In de tweede fase hadden we een zeer interessante en dynamische Code Jam "JavaScript Arrays Quick Draw", zo'n competitie is spannend en boeiend in de school.
De Code Jam "CoreJS" bleek veel complexer te zijn. 120 taken over JavaScript, waarvoor 48 uur was uitgetrokken, werden een serieuze uitdaging.
Daarnaast hadden we enkele tests over JavaScript, de link naar een van hen is bij mij opgeslagen in de bladwijzers van de browser. Voor het maken van de test is 30 minuten beschikbaar.
Vervolgens hebben we de lay-out van NeutronMail gemaakt, de Code Jam 'DOM, DOM Events' uitgevoerd en een zoekmachine voor YouTube gecreëerd.

Andere taken van de tweede fase: Taak: Codewars - oplossingen voor vragen op de gelijknamige website, Code Jam 'WebSocket Challenge' - verzenden en ontvangen van berichten via websockets, Code Jam 'Animation Player' - het maken van een kleine webapplicatie.

Een vrij ongebruikelijke en interessante taak van de tweede fase was de taak 'Presentation'. Het belangrijkste kenmerk was dat de presentatie in het Engels moest worden voorbereid en gepresenteerd. Hier Je kunt bekijken hoe de live presentatie-fase verliep.

En ongetwijfeld was de moeilijkste en meest omvangrijke taak van de tweede fase de finale taak, waarbij we werden gevraagd om onze eigen kopie van de webapplicatie Piskel (www.piskelapp.com) te creëren.
Deze taak kostte meer dan een maand, waarbij het grootste deel van de tijd werd besteed aan het begrijpen hoe het origineel werkt. Voor de objectiviteit werd de finale taak beoordeeld door een andere, willekeurig gekozen mentor. Ook het interview na de tweede fase werd afgenomen door een willekeurige mentor, omdat we al gewend waren aan onze eigen mentor en hij aan ons, en bij echte interviews komen meestal onbekenden elkaar tegen.

Het tweede interview bleek veel moeilijker dan de eerste. Net als eerder was er een lijst met vragen voor het interview waarvoor ik me had voorbereid, maar de mentor vond het niet helemaal juist om alleen theorie te vragen en had een set taken voorbereid voor het interview. De taken waren naar mijn mening behoorlijk complex. Hij begreep bijvoorbeeld oprecht niet wat mij tegenhield om een bind polyfill te schrijven, terwijl ik ook oprecht dacht dat het feit dat ik weet wat bind is en wat polyfill is, al veel betekende. Deze taak heb ik niet opgelost. Maar er waren andere taken waarvoor ik oplossingen vond. Het probleem was alleen dat de taken niet eenvoudig waren, en zodra ik een oplossing vond, veranderde de mentor een beetje de voorwaarden, en moest ik de taak opnieuw oplossen, in een al moeilijker variant.
Ik wil benadrukken dat de sfeer van het interview erg vriendelijk was, de taken interessant waren, en de mentor veel tijd stak in de voorbereiding ervan, met de intentie dat het leerinterview in de toekomst zou helpen om een echt interview voor een baan te doorstaan.

Voorbeelden van de taken van de tweede fase:
NeutronMail
Palette
YouTubeClient
PiskelClone

In de derde fase kregen we de taak Culture Portal. We voerden dit uit in een groep en maakten voor het eerst kennis met de bijzonderheden van teamwerk, taakverdeling en het oplossen van conflicten bij het samenvoegen van takken in Git. Dit was waarschijnlijk een van de interessantste opdrachten van de cursus.

Voorbeeld van de derde fase opdracht: Culture Portal.

Na het afronden van de derde fase hebben studenten die solliciteerden naar een functie bij EPAM en in de lijst van de 120 besten stonden, een telefonische interview gehad over hun kennis van het Engels, en zijn momenteel in technische interviews. De meeste van hen worden uitgenodigd in het EPAM JS Lab, en vervolgens voor echte projecten. Elk jaar krijgen meer dan honderd afgestudeerden van de Rolling Scopes School een baan bij EPAM. In verhouding tot degenen die de cursus zijn begonnen, is dit een relatief klein percentage, maar voor degenen die de finale hebben bereikt, is de kans om een baan te krijgen behoorlijk groot.

Van de moeilijkheden waar je op moet voorbereid zijn, noem ik er twee. De eerste is tijd. Dit vereist behoorlijk veel inzet. Reken op 30-40 uur per week, meer kan, maar minder – dan is het onwaarschijnlijk dat je alle opdrachten op tijd af krijgt, aangezien het cursusprogramma erg intensief is. De tweede is Engels op niveau A2. Als je niveau lager is, zal het niet hinderlijk zijn om de cursus te volgen, maar het zal vrij moeilijk zijn om een baan te vinden met dat taalsegment.

Als je vragen hebt, stel ze gerust, ik zal mijn best doen om te antwoorden. Als je andere vergelijkbare gratis Nederlandstalige online cursussen kent, deel ze alsjeblieft, dat zou interessant zijn.

Bron: habr.com

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers 🔥 Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster