Sunteți pe pagina 1din 7

AVANTAJELE INIIERII TIMPURII N PROGRAMARE

Generaia actual este una pe care o putem numi generaia nativilor digitali, format din
tineri cu un sim nnscut al tehnologiei. De la mnuitul tabletelor, la browsing sau la jocuri,
tinerilor le este mult mai uor s interacioneze i s se adapteze la progresul tehnologic
deoarece, pentru ei, totul pare c vine natural, cel puin n comparaie cu generaiile noastre,
care ne-am nceput periplul n lumea calculatoarelor cu Win95 sau Pascal sub MS-dos.
Dar faptul c aceste generaii sunt mai nzestrate tehnologic dect eram noi nu este
motivul principal pentru care ar trebui s ncurajm copiii s se aventureze, nc de la o vrst
fraged, n lumea programrii.
S-i nvm pe copii programare nu se rezum la exersarea elementelor de baz ale
folosirii calculatorului sau la pregtirea lor pentru un job n IT.
Uniunea European estimeaz c, pn la sfritul anului 2020, peste 90% dintre locurile
de munc vor avea ca cerin obligatorie abiliti de folosire a computerului, iar Statele Unite
estimeaz o cretere cu 22% a cererii pentru joburi n IT pentru aceeai perioad. Totodat, n
Romnia, domeniul IT&C reprezint 10% din PIB, iar ara noastr este n topul preferinelor
firmelor strine pentru servicii de outsource n acest domeniu.
nvnd s vorbeasc n cod, copiii i vor dezvolta gndirea logic care, n schimb,
i va susine n dezvoltarea abilitilor de rezolvare a problemelor. Fr a minimaliza eforturile
educatorilor dedicai care se strduiesc s dezvolte gndirea logic n contextul materiilor pe
care le predau, am constatat c aceast aptitudine este de multe ori neglijat de sistemul
educaional din Romnia.
nvarea programrii n cazul tinerilor nu are i nu ar trebui s aib ca scop final
pregtirea acestora pentru o carier n acest domeniu. Gndirea logic i capacitatea de a rezolva
probleme, odat dezvoltate, vor fi utilizate i n viaa de zi cu zi, pentru c, la baz, folosim
acelai tip de gndire dac scriem o bucat de cod sau ne preparm o cafea.
Bineneles, gndirea logic astfel dobndit le poate facilita copiilor i tinerilor
orientarea ctre o carier n programare, dar aceasta este o decizie care ar trebui luat de ei, n
mod individual, n condiiile n care pasiunea pentru acest domeniu este evident.
Programarea i dezvoltarea gndirii logice
Reducnd programarea la esen, o caracterizare precis ar fi c aceasta este gndirea
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 alturm o serie de premise.
De exemplu, un program simplu de tip Hello World (primul program fcut inclusiv de
mine la prima deschidere a unui compilator) are ca scop final apariia pe ecran a textului Hello
World. Pentru asta, n majoritatea limbajelor de programare, avem nevoie doar de o premis,

i anume s scriem o instruciune care afieaz textul pe ecran. Dac vreau s tiu cum s
formulez acea instruciune, trebuie s m uit n documentaia limbajului de programare.
Extrapolnd, dac vreau s mi fac o cafea, m gndesc c cel mai rapid i eficient este
s o fac cu ajutorul expresorului. Pentru asta, trebuie s folosesc funciile aparatului. Dac vreau
s aflu cum se folosete aceast funcie, trebuie s m uit n manualul espresorului.
n spiritul aceleiai idei, putem vorbi i despre capacitatea de a rezolva problemele,
dezvoltat concomitent cu gndirea logic. Dac programul meu de tip Hello World nu afiseaz
pe ecran ceea ce i-am spus s afieze, eu, ca programator, voi urma o serie de pai pentru a
depana programul: voi reanaliza aciunile pe care le-am fcut i voi cuta s vd dac am
folosit instruciunile n mod corect sau dac exist vreo eroare.
Dac dup un minut de cnd am pus expresorul n funciune nu se prepar cafeaua, voi
aplica fix aceiai pai: voi verifica dac am apsat butoanele corecte, dac expresorul a afiat
vreo eroare sau dac este bgat n priz.
Deschooling sau despre un alt mod de a nva
n timp ce lucrm exerciii de programare, le putem oferi copiilor i o alt perspectiv
asupra fenomenului de educare nvare. Implicarea ntr-o astfel de activitate poate rezulta i
ntr-o schimbare de ordin social.
Mai specific, s prezentm copiilor o experien de nvare diferit de cea cu care sunt
obinuii, zi de zi, la coal. Putem face asta ajutndu-i s nvee programare printr-un concept
care se numete deschooling un context n care ne concentrm doar pe nvare. Acest lucru
implic renunarea la monologul pe care l presupune o lecie normal (predarea) i crend un
dialog n care s ne concentrm, pe lng ce vrem s nvm i pe cum, de ce s nvm acele
lucruri i la ce le putem folosi n viitor.
Schimbnd felul n care tinerii privesc procesul de nvare i concentrndu-ne pe partea
practic a fiecrui lucru nou pe care l prezentm, i ajutm pe cei mici s neleag mai bine
rolul colii i al materiilor zilnice, lrgindu-le astfel orizontul pentru a-i descoperi pasiunile i
de ce nu, pentru a se pregti mai bine n meseria pe care i-o aleg n viitor.
Robot Turtles, o poveste de succes
Pentru a avea rezultate, nvarea programrii are cteva elemente cheie. n primul rnd,
copiii trebuie s tie s scrie. Apoi, pentru ndeplinirea anumitor sarcini, au nevoie de un nivel
minim de cunoatere a conceptelor matematice, att de algebr, ct i de geometrie. Pornind de
la aceste elemente, am putea spune c o vrst potrivit ar fi cea de opt ani.
Chiar dac, practic, nu i putem nva programare de la vrste mai mici de opt ani, putem
pregti terenul, prin joac, ncepnd cu vrsta de patru ani.
n 2013, Dan Shapiro, un programator angajat la Google, a lansat o campanie de Kick
Starter pentru un board game al crui scop este s i nvee pe precolari conceptele de baz ale

programrii. n doar cteva sptmni, Dan a reuit s strng 631 230 de dolari, dup ce i
propusese o sum iniial 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 ctiga, copiii trebuie s pun cap la cap o serie de instruciuni logice,
scrise pe cri de joc pe care le trag dintr-un pachet. Prin alturarea instruciunilor, copiii creeaz
i execut linii de cod, dar se i ntlnesc cu probleme pe care trebuie s le depaneze, ajustnd
instruciunile. Cu ajutorul acestui joc, copiii nva cum s mpart rezolvarea unei probleme n
pai mici, cum s rezolve o problem pornind de la scop i ajungnd la o soluie i cum s
vizualizeze mai multe soluii pentru o problem. n acelai timp, cei mici i exerseaz rbdarea
i perseverena.
Este greu s-i imaginezi o slujb care s nu presupun cunostiine de operare sau
programare a calculatoarelor.
n cazul n care suntei ngrijorat de faptul c:
a) elevii de coal primar nu au capacitatea de a coda ,
b) nu exist loc n curriculum , i
c) nu posezi abiliti, cunostiine de programare
atunci urmtoarele site-uri i aplicaii pot ajuta pe oricine s creeze aplicaii, jocuri interactive,
teste, animatii , etc.
Cel mai mare avantaj este faptul c multe dintre aceste instrumente sunt gratuite , sau
aproape gratuite, i nu necesit experien n programare.
Limbaje de programare potrivite pentru copii
n ultimii ani au fost dezvoltate mai multe metode i limbaje de programare dedicate
tinerilor, dar asta nu nseamn c ei nu pot nva i folosi tehnologii mai avansate. Dei unele
dintre aceste metode nu au fost dezvoltate n mod special pentru predarea limbajelor de
programare, ele pot fi folosite cu mult succes atunci cnd dorim s-i nvm pe tineri s
programeze n diverse limbaje adecvate nivelului lor de cunotine.
GameStar Mechanic
GameStar Mechanic nva copii , cu vrstele ntre 7-14 s proiecteze propriile lor jocuri
video. Elevii vor fi ncntai de posibilitatea de a nva n ritmul lor n timp ce-i creeaz
propriul joc. Site-ul integreaz gndirea critic i sarcinile de rezolvare a problemelor.

Scratch
Dintre limbajele dedicate copiilor, Scratch, creat i lansat n 2006 de MIT Media Lab,
este cel mai cunoscut. n prezent, Scratch este folosit ca unealt educaional n mai multe
domenii, printre care matematic, desen sau muzic, dar menirea sa principal a fost de ajutor
pentru a-i nva pe copii programarea. Printr-o interfa vizual, tinerii pot s-i scrie propriile

programe sau jocuri, crend i interconectnd mici dreptunghiuri care reprezint instruciuni n
cod;
Tynker
Cu toate c Tynker este relativ nou, a ajuns rapid una dintre aplicaiile favorite de codare.
Interfata arata similar cu Scratch. Dar, n timp ce Scratch a fost proiectat pentru a programa,
Tynker a fost construit pentru a preda programare. Aplicaia ofer planuri de lecie de iniiere,
instrumente de management al clasei, i o caset on-line de prezentare a programelor create de
elev. Lecii sunt n ritm propriu i simplu pentru ca elevii s le poat urma i fr asisten.
Move the Turtle
Mutai broasca este un mod de a nva prin joc procedurile de programare. Fiecare nou
nivel crete n dificultate i nva elevii o nou comand care direcioneaz broasca pentru a
ajunge la o stea, pentru a scoate un sunet, a trage o linie, etc. Un utilitar "compose" permite
elevilor s mute broasca estoas n ce mod doresc ei.
Hopscotch
otron arata foarte mult ca Scratch i Tynker i utilizeaz controale similare pentru a
trage blocuri ntr-un spaiu de lucru, dar se execut numai pe iPad. Controalele i caracterele nu
sunt la fel de extinse ca Scratch i Tynker , dar Hopscotch este un instrument foarte bun pentru
a ajuta elevii fr experien de codificare n a nva bazele programrii, gndire logic i de
rezolvare a problemelor .
Daisy the Dinosaur
De la creatorii Hopscotch, Daisy se adreseaza celor mai tineri programatori. Interfaa
este similar cu Hopscotch, dar mult simplificat. Exist doar un dinozaur care se mut i
utilizeaz numai funcii de baz, dar pentru elevii mai mici, acesta este o excelent introducere
n programare.
Cargo-Bot
Cargo-bot este un alt joc care permite elevilor dobndirea abilitilor de codificare. La
fiecare nivel, obiectivul jocului este de a muta cutii colorate dintr-un loc n altul, prin
programarea unei macarale cu gheare pentru a se deplasa la stnga sau la dreapta sau pentru a
ridica i cobor cutiile. Jocul a fost de fapt programat pe un iPad, utiliznd o aplicaie de codare
touch-bazate pe numit Codea, care se bazeaz pe limbajul de programare Lua. Jocul
permite elevilor din ciclul primar s nvee gndirea logic necesar pentru a face n cele din
urm programare.
Python
Ieind din sfera limbajelor de programare dedicate celor mici, cel mai potrivit pentru
copii, ca sintax, pare a fi Python, pentru c este ndeajuns de uor de deprins nct acetia s
nu-i piard interesul pn reuesc s obin primul rezultat. Dup primele concepte nvate n
Python, copiii pot trece uor la programarea de jocuri cu PyGame;

Javascript
Un alt limbaj pe care l putem considera potrivit este Javascript, dar aici este nevoie de
puin ajutor, deoarece setup-ul este mai complicat, iar copiii i pot pierde interesul pn s
ajung s scrie prima linie de cod. Aa c, n ajutor sare un site creat pentru a le uura copiilor
procesul de nvare: Khan Academy.
La fel ca Scratch, Khan Academy nu este 100% dedicat programrii, dar are o
component dedicat informaticii ca ansamblu cu un mediu de programare integrat (un loc n
care copiii scriu codul, l ruleaz i l depaneaz, fr a se folosi de nicio alt unelt). Cu ajutorul
acestui mediu integrat, copiii pot scrie i cod Javascript, dar pot i desena i anima diverse forme
geometrice cu ajutorul unui set de comenzi care folosesc, n spate, processing.js.
Rspunsul la fiecare linie de cod scris, fie c este corect, fie c produce o eroare, este
afiat n timp real n partea dreapt, lng editor. Singurul setup pe care copiii trebuie s l fac
este s i creeze cont pe site, s apese pe butonul New Program i s nceap s programeze.
Documentaia i editorul sunt disponibile n mai multe limbi, inclusiv romn;
HTML i CSS
Lsnd la o parte limbajele de programare, una dintre tehnologiile potrivite pentru copii
este HTML-ul, bineneles nsoit de CSS. Ca i n cazul Javascript-ului, descris mai sus, setupul iniial poate prea complicat pentru un tnr care ncepe s nvee. ns, tot la fel ca n cazul
Javascript, exist mai multe unelte care s i ajute pe copii s ajung s scrie cod i s vad
rezultatele ct mai repede.
Dintre acestea, de menionat este Code Academy, care, la fel ca n cazul Khan Academy,
ofer un mediu integrat n care copiii pot scrie cod HTML i CSS i s primeasc feedback
vizual imediat. De menionat, n cazul Code Academy, este c, spre deosebire de celelalte siteuri sau unelte, este dedicat n ntregime programrii, oferind acelai tip de editor i pentru
Javascript, Python, PHP i Ruby.

Tehnici recomandate
n contextul nvrii programrii de ctre tineri, se recomand utilizarea ctorva tehnici
pe ct de simple, pe att de eficiente:
Metafora
Este prima tehnic i probabil una dintre cele mai relevante, pentru c permite oricrui
programator s explice conceptele copiilor folosind asocieri cu lucruri care acestora le sunt deja
foarte familiare.
De exemplu, o variabil poate fi asociat cu o tampil a unui cuvnt: s spunem c
avem un text n care un cuvnt se repet de foarte multe ori. n loc s scrii acel cuvnt de foarte

multe ori de mn, te poi folosi de tampil. Aa scrii textul mult mai repede i te asiguri i c
acel cuvnt are aceeai form peste tot.
Totui, acea tampil este una magic i, dac vrei s schimbi cuvntul din text cu un
sinonim al lui, o poi face modificnd cuvntul de pe tampil, iar apoi, schimbarea se va vedea
automat i n interiorul textului, n fiecare loc n care ai aplicat tampila.
Similar, n cazul HTML i CSS, putem asocia codul HTML cu un omule pe care l
desenm chiar noi, iar tag-urile HEAD i BODY reprezint capul, respectiv corpul omuleului.
Similar, codul CSS reprezint hainele pe care i le dm;
Gratificarea instant
Toi copiii, mai ales cei nceptori n ale programrii, au nevoie s vad imediat
rezultatul fiecrei linii de cod pe care o scriu. Din acest motiv, site-urile precum Khan Academy
sau Code Academy sunt foarte potrivite. Pentru nceptori, chiar i aciunile de save n editor,
schimbarea ferestrei ctre browser i refresh-ul paginii pot fi obositoare i i pot face s i piard
interesul;
Dialogul
Un loc important ar trebui s aib i dialogul cu fiecare copil n parte, pentru a-i afla
interesele. Programarea are avantajul c se aplic ntr-o multitudine de domenii, de la ajutor n
rezolvarea temelor la matematic, la jocuri, maini sau la roboi. Am observat c fiecare copil
are o motivaie i un scop diferite n programele scrise: fetele sunt mai vizual-creative i prefer
recompensele vizuale, n timp ce bieii sunt mai technic-creativi.
Dac, de exemplu, fiecare primete ca task s deseneze ceva n cod, fetele vor alege un
obiect i se vor concentra s l deseneze ct mai exact posibil, n timp ce bieii vor desena acel
obiect ct de repede pot, l vor aduce la o form brut i apoi vor cuta cum s treac la un pas
urmtor prin aciuni simple, cum ar fi adugarea unui text sau animarea obiectului.
Cteva motive i o chemare pentru programatori
Puine, cred, sunt bucuriile care se pot compara cu aceea pe care o simi cnd vezi c,
ntr-un fel sau altul, ai contribuit la orientarea sau formarea unui tnr. Activitatea de nvare a
copiilor nu se rezum niciun moment la un transfer unilateral de informaii i totul poate fi privit,
de fapt, un proces de nvare reciproc.
Cnd vine vorba de aspecte tehnice, copiilor le este mai greu s verbalizeze problemele
pe care le ntmpin, dar, n acelai timp le este greu i s neleag o explicaie tehnic.
Capacitatea de a explica lucruri tehnice, dar fr a folosi limbaj tehnic sau capacitatea de a
explica ceva n funcie de nivelul la care se afl copilul cu care vorbeti este o aptitudine
folositoare att n viaa personal, ct i n cea profesional.
n viaa personal, ne va ajuta n comunicarea cu propriii (viitori) copii, iar n viaa
profesional, ne poate ajuta cu avansarea n carier.

S poi asculta, rezolva probleme i explica clar diferite sarcini, concepte sau decizii sunt
unele dintre deprinderile foarte importante, poate cele mai importante, pentru un programator
senior sau lider de echip.
Sper ca aceste descrieri v-au deschis apetitul i c vei ncorpora codificare n programa
colar. Chiar i n cazul n care un elev nu intenioneaz s urmeze programarea ca o cariera,
i va permite s-i dezvolte abiliti de problematizare, va dezvolta creativitatea i va spori
gndirea logic.
Toi copiii/elevii notri merit ansa de a deveni creatori n loc de consumatori de
programe de calculator.
Ideea este c, dac dorii s introducei n educaia copiilor programarea, exist mai
multe moduri diferite de a face acest lucru. Dac vrei s mergi pe acest drum, Google este
prietenul tu. Este uimitor ct de mult lucruri gseti acolo.

THE ADVANTAGES OF EARLY INITIATION IN PROGRAMMING


The current generation is one that we can call the generation of digital natives, made up
of young people with an innate sense of technology. From wielder tablets to browsing or games,
young people find it much easier to interact and adapt to technological progress because, for
them, everything seems to come naturally.
But the fact that these generations are technologically equipped than we were not the
main reason for which we should encourage children to venture, from an early age, in the world
of programming.
In recent years several methods have been developed and programming languages for
young people, but that does not mean they cannot learn and use more advanced technologies.
Although some of these methods have been developed specifically for teaching programming
languages , they can be used with great success when we want to teach young people to program
in different languages appropriate to their level of knowledge.

S-ar putea să vă placă și