- Există două lucruri importante de știut despre învățarea codului:
- Primul punct l-am văzut iar și iar. Oameni care îmi spun că vor să învețe să codeze, apoi încep să învețe și li se pare că este al naibii de plictisitor.
- Aceasta mă aduce la punctul numărul doi. A învăța să codezi nu mai înseamnă același lucru.
- Problema este că nu asta este ceea ce vor oamenii. Ei vor să construiască ceva. Și nu ar trebui să mai considerăm de la sine înțeles că, pentru a construi ceva, trebuie să înveți totul despre computere sau chiar despre codare în general.
- În calitate de profesori, trebuie să recunoaștem că atunci când oamenii spun că vor să învețe să codeze, de multe ori se referă cu adevărat la faptul că vor să construiască o aplicație web sau mobilă.
- Ca student: învață ceea ce vrei să înveți.
- Deci, cât timp durează să înveți să codezi?
Există două lucruri importante de știut despre învățarea codului:
- Majoritatea oamenilor nu vor de fapt să „învețe să codeze”
- Învățarea codării nu mai înseamnă un singur lucru
Este important să știm aceste două lucruri pentru că altfel modul în care îi învățăm pe oameni despre codare este greșit, iar oamenii nu vor învăța.
Primul punct l-am văzut iar și iar. Oameni care îmi spun că vor să învețe să codeze, apoi încep să învețe și li se pare că este al naibii de plictisitor.
O numesc eroare de codare. Oamenii cred că vor să învețe să codeze, dar ceea ce vor de fapt să facă este să construiască un produs.
Când ne gândim la asta, acest lucru ar trebui să fie destul de evident. Cunoașterea codului în sine nu este valoroasă dacă nu poți face nimic cu el. Așadar, pentru majoritatea oamenilor, cea mai mare motivație pentru a învăța să codeze este să construiască ceva (deși pe locul doi, pe aproape, este obținerea unui loc de muncă mai bine plătit).
Aceasta mă aduce la punctul numărul doi. A învăța să codezi nu mai înseamnă același lucru.
Odinioară, pentru a codea trebuia să știi aproape totul despre computere (de aici și termenul „Computer Science”). Apoi lucrurile au fost abstractizate până la punctul în care nu trebuia să te scufunzi în anumite subiecte decât dacă era cu adevărat necesar. De exemplu, în acest moment, ca dezvoltator de aplicații web, trebuie să știu foarte puțin despre administrarea sistemului, pentru că acest lucru este făcut în mare parte pentru mine de instrumente precum Heroku și Amazon Web Services.
Așa că atunci când oamenii spun că vor să învețe să codeze, majoritatea profesorilor încep de unde presupun că ar trebui (unde au făcut-o întotdeauna), cu tipurile de date, diferitele structuri ale unui limbaj, și îi ajută pe elevi să dezvolte o înțelegere mai profundă a computerelor.
Problema este că nu asta este ceea ce vor oamenii. Ei vor să construiască ceva. Și nu ar trebui să mai considerăm de la sine înțeles că, pentru a construi ceva, trebuie să înveți totul despre computere sau chiar despre codare în general.
De exemplu, dacă cineva lucrează deja cu un dezvoltator de back-end excelent, ar avea sens să îl învățăm doar front-end-ul, pentru că acesta va fi cel mai util lucru pentru el. De fapt, vor obține mai repede ceea ce vor să fie făcut și vor putea să învețe back-end-ul la un moment dat. Procedând astfel, reducem sarcina cognitivă a studentului și îi permitem acestuia să învețe mai repede.
Când dezvolți pentru web trebuie să te ocupi în mod specific de:
- HTML
- CSS
- JavaScript
- Programare back-end
- Baze de date
- Hosting/DNS
Există multe de învățat aici. Și cea mai mare parte este destul de irelevantă pentru dezvoltarea non-web (cu excepția bazelor de date și a structurii aplicațiilor, evident).
Din punctul meu de vedere, cea mai mare parte a educației în domeniul codării implică o momeală și o schimbare. Se întâmplă cam așa:
Student: „Vreau să învăț cum să programez.” (Dar ceea ce ei de fapt – dar nu știu suficient să întrebe – este că vreau să construiesc o aplicație web sau mobilă.)
Profesor: „Bine, să începem cu tipurile de date.”
Student: „…”
(2 săptămâni mai târziu)
Profesor: „Acum putem proiecta algoritmi eficienți.”
Student: „Dar eu am vrut doar să fac un site web care să arate bine!”
În calitate de profesori, trebuie să recunoaștem că atunci când oamenii spun că vor să învețe să codeze, de multe ori se referă cu adevărat la faptul că vor să construiască o aplicație web sau mobilă.
Acesta pentru că pentru ei, asta este ceea ce este codarea. Este tot ceea ce au fost expuși vreodată despre codare. Problema este că ei nu știu cum să o ceară! Așa că nu ar trebui să luăm tot ce spun ei ca atare. Este treaba noastră ca educatori să citim printre rânduri.
Îmi amintesc că am urmărit o piesă de teatru cu câțiva ani în urmă în care un preot spune că trebuie să spui adevărul chiar și în circumstanțe dificile. Persoana cu care vorbește îl întreabă: „dar ce se întâmplă dacă cineva îți pune o întrebare și știi că adevărul îl va răni?”. Preotul îi răspunde: „Când cineva îți pune o întrebare, răspunde la întrebarea pe care ți-o pune cu ADEVĂRAT.”
De asemenea, în educație, trebuie să citești printre rânduri pentru a-ți da seama ce vor oamenii cu adevărat. Dacă ei întreabă un anumit lucru specific, trebuie să ghidezi persoana spre ceea ce o va conduce spre experiența ideală de învățare.
Atunci depinde de noi, ca educatori și ca experți, să ghidăm oamenii în direcția corectă și să nu-i lăsăm să se zbată. Dacă putem face acest lucru, atunci putem împuternici mult mai mulți oameni să facă lucruri uimitoare.
Ca student: învață ceea ce vrei să înveți.
Unul dintre cele mai bune lucruri pe care le poți face în propriile tale aventuri de învățare este să înveți câte puțin despre o mulțime de lucruri – astfel încât să știi în ce vrei să te scufunzi mai adânc mai târziu.
Aici, la One Month, când spunem că poți „învăța să codezi în 30 de zile”, ceea ce vrem să spunem este că în doar 30 de zile poți învăța suficient de mult din HTML (JavaScript sau Python) pentru a fi conversațional în cod, suficient de încrezător încât să poți ieși în evidență pe piața muncii.
Deci, cât timp durează să înveți să codezi?
Ne numim „One Month”, deci asta înseamnă că după 30 de zile de codare studenții noștri au terminat de învățat? Nicidecum! Codific de peste 15 ani și încă sunt atât de multe lucruri pe care nu le știu – dar nu asta este ideea. „Să înveți să codezi” nu înseamnă să știi fiecare lucru din limbaj, ci să știi suficient pentru a fi conversațional și pentru a-ți lăsa o amprentă în lume folosindu-ți mintea și abilitățile creative.
.