În Cariere

Avantajele inițierii timpurii în programare

copil programator

Generația actuală este una pe care o putem numi generația nativilor digitali, formată din tineri cu un simț înnăscut al tehnologiei. De la mânuitul tabletelor, la browsing sau la jocuri, tinerilor le este mult mai ușor să interacționeze și să se adapteze la progresul tehnologic deoarece, pentru ei, totul pare că vine natural. Cel puțin în comparație cu generațiile noastre, care ne-am început periplul în lumea calculatoarelor cu HC85 sau Amiga Commodore.

Dar faptul că aceste generații sunt mai înzestrate tehnologic decât eram noi nu este motivul principal pentru care, în prima parte a acestui articol am să vă îndemn să încurajați copiii să se aventureze, încă de la o vârstă fragedă, în lumea programării.

Să-i învățăm pe copiii noștri programare nu se rezumă la exersarea elementelor de bază ale folosirii calculatorului sau la pregătirea lor pentru un job în IT. Uniunea Europeană estimează că, până la sfârșitul anului 2020, peste 90% dintre locurile de muncă vor avea ca cerință obligatorie abilități de folosire a computerului, iar Statele Unite estimează o creștere cu 22% a cererii pentru joburi în IT pentru aceeași perioadă. Totodată, în România, domeniul IT&C reprezintă 10% din PIB, iar țara noastră este în topul preferințelor firmelor străine pentru servicii de outsource în acest domeniu.

Învățând să „vorbească” în cod, copiii își vor dezvolta gândirea logică care, în schimb, îi va susține în dezvoltarea abilităților de rezolvare a problemelor. Fără a aduce o acuzație sau a minimaliza rolul acelor educatori dedicați care fac eforturi pentru a dezvolta gândirea logică în contextul materiilor pe care le predau, am constatat că această aptitudine este de multe ori neglijată de sistemul educațional din România.

Învățarea programării în cazul tinerilor nu are și nu ar trebui să aibă ca scop final pregătirea acestora pentru o carieră în acest domeniu. Gândirea logică și capacitatea de a rezolva probleme, odată dezvoltate, vor fi utilizate și în viața de zi cu zi, pentru că, la bază, folosim același tip de gândire dacă scriem o bucată de cod sau ne încălzim o cană cu apă.

Bineînțeles, gândirea logică astfel dobândită le poate facilita copiilor și tinerilor orientarea către o carieră în programare, dar aceasta este o decizie care ar trebui luată de ei, în mod individual, în condițiile în care pasiunea pentru acest domeniu este evidentă.

Programarea și dezvoltarea gândirii logice

Sursă imagine: Shutterstock
Sursă imagine: Shutterstock

Reducând programarea la esență, o caracterizare precisă ar fi că aceasta este gândirea logică pusă în practică. Orice bucată de cod pe care o scriem este un proces logic în sine: avem un scop final (concluzie), iar ca să îndeplinim acest scop final alăturăm o serie de premise.

De exemplu, un program simplu de tip Hello World: scopul final este ca pe ecran sa apară textul „Hello World”. Pentru asta, în majoritatea limbajelor de programare, avem nevoie doar de o premisă, și anume să scriem o instrucțiune care printează textul pe ecran. Dacă vreau să știu cum să formulez acea instrucțiune, trebuie să mă uit în documentația limbajului de programare.

Extrapolând, dacă vreau să îmi încălzesc o cană de apă, mă gândesc că cel mai rapid și eficient este să o fac cu ajutorul cuptorului cu microunde. Pentru asta, trebuie să folosesc funcția de încălzire a cuptorului. Dacă vreau să aflu cum se folosește această funcție, trebuie să mă uit în manualul cuptorului cu microunde.

În spiritul aceleiași idei, putem vorbi și despre capacitatea de a rezolva problemele, dezvoltată concomitent cu gândirea logică. Dacă programul meu de tip Hello World nu printează pe ecran ceea ce i-am spus să printeze, eu, ca programator, voi urma o serie de pași pentru a “depana” programul: voi reanaliza acțiunile pe care le-am făcut și voi căuta să văd dacă am folosit instrucțiunile în mod corect sau dacă există vreo eroare.

Dacă după un minut de când am pus apa la încălzit în cuptorul cu microunde, ea este tot rece, voi aplica fix aceiași pași: voi verifica dacă am apăsat butoanele corecte, dacă cuptorul cu microunde a afișat vreo eroare sau dacă este băgat în priză.

Deschooling sau despre un alt mod de a învăța

În timp ce lucrăm exerciții de programare, le putem oferi copiilor și o altă perspectivă asupra fenomenului de educare – învățare. Implicarea într-o astfel de activitate poate rezulta și într-o schimbare de ordin social.

Mai specific, să prezentăm copiilor o experiență de învățare diferită de cea cu care sunt obișnuiți, zi de zi, la școală. Putem face asta ajutându-i să învețe programare printr-un concept care se numește deschooling – un context în care ne concentrăm doar pe învățare. Acest lucru implică renunțarea la monologul pe care îl presupune o lecție normală (predarea) și creând un dialog în care să ne concentrăm, pe lângă ce vrem să învățăm și pe cum, de ce să învățăm acele lucruri și la ce le putem folosi în viitor.

Schimbând felul în care tinerii privesc procesul de învățare și concentrându-ne pe partea practică a fiecărui lucru nou pe care îl prezentăm, îi ajutăm pe cei mici să înțeleagă mai bine rolul școlii și al materiilor zilnice, lărgindu-le astfel orizontul pentru a-și descoperi pasiunile și de ce nu, pentru a se pregăti mai bine în meseria pe care și-o aleg în viitor.

Cât de devreme putem începe – Robot Turtles, o poveste de succes

Pentru a avea rezultate, învățarea programării are câteva prerechizite. În primul rând, copiii trebuie să știe să scrie. Apoi, pentru îndeplinirea anumitor sarcini, au nevoie de un nivel minim de cunoaștere a conceptelor matematice, atât de algebră, cât și de geometrie. Pornind de la aceste prerechizite, am putea spune că o vârstă potrivită ar fi cea de opt ani.

Chiar dacă, practic, nu îi putem învăța programare de la vârste mai mici de opt ani, putem pregăti terenul, prin joacă, începând cu vârsta de patru ani.

În 2013, Dan Shapiro, un programator angajat la Google, a lansat o campanie de Kick Starter pentru un board game al cărui scop este să îi învețe pe preșcolari conceptele de bază ale programării. În doar câteva săptămâni, Dan a reușit să strângă 631 230 de dolari, după ce își propusese o sumă inițială de 25 000 de dolari.

Jocul, numit Robot Turtles, este structurat ca orice joc de acest tip, doar că, pentru a ajunge la final și pentru a câștiga, copiii trebuie să pună cap la cap o serie de instrucțiuni logice, scrise pe cărți de joc pe care le trag dintr-un pachet. Prin alăturarea instrucțiunilor, copiii creează și execută linii de cod, dar se și întâlnesc cu probleme pe care trebuie să le „depaneze”, ajustând instrucțiunile. Cu ajutorul acestui joc, copiii învață cum să împartă rezolvarea unei probleme în pași mici, cum să rezolve o problemă pornind de la scop și ajungând la o soluție și cum să vizualizeze mai multe soluții pentru o problemă. În același timp, cei mici își exersează răbdarea și perseverența.

Povestea continuă

În această primă parte a articolului, am vorbit despre avantajele pe care le pot avea tinerii care învață programare, care este vârsta de la care pot începe și cum o pot face. În a doua parte a articolului, voi vorbi despre tehnici și limbaje de programare pentru copiii de peste opt ani, dar și despre experiența pe care am acumulat-o după doi ani de ateliere de programare împreună cu cei mici. Tot în a doua parte veți afla unde pot învăța programare copiii și, dacă v-am stârnit curiozitatea, cum vă puteți implica în această activitate.