Top 9 dificultati in a invata programare in 2016
Am facut luna aceasta un chestionar in care v-am intrebat pe cititorii acestui blog care e cea mai mare dificultate de care v-ati lovit in incercarea de a invata programare. Mi-ati raspuns la acel chestionar 189 de persoane — carora va multumesc (inca o data) pentru sprijinul acordat.
Cu ajutorul raspunsurilor primite am putut sa-mi fac o imagine clara privind principalele greutati intampinate de romanii care isi doresc sa invete programare in prezent.
Le poti vedea sintetizate in imaginea de mai jos (si in randurile care urmeaza).
#1 Lipsa de documentatie buna pentru incepatori
Cei mai multi dintre cei care mi-ati raspuns v-ati plans de lipsa unei carti clare si la obiect, care sa explice lucrurile de la zero fara sa foloseasca termeni prea academici. In loc de raspuns, foarte multi mi-ati pus intrebarea “Cum sa incep?“.
#2 Lipsa de timp
Uimitor de multi v-ati plans de lipsa timpului. Intr-adevar, invatarea programarii necesita timp. Nu conteaza atat de mult informatiile invatate cat conteaza exersarea lor. Atat invatarea, cat mai ales exersarea, necesita timp.
#3 Complexitatea ridicata
“E greu. Nu inteleg. Sintaxa e complicata. Se folosesc prea multe simboluri. Nu inteleg vectorii, pointerii si structurile de date.” Cam asa suna raspunsurile.
#4 Dificultatea gandirii programelor
Altii mi-ati zis ca aparent intelegeti notiunile de baza, dar nu reusiti sa le puneti cap la cap pentru a construi programe. Bineinteles ca a cunoaste literele nu implica faptul ca stii si sa construiesti cuvinte. Invatarea programarii se realizeaza pas cu pas, nivel cu nivel. Si cu destul de mult “antrenament”.
#5 Lipsa unui profesor
“Nu pot sa invat singur(a). Am nevoie de un profesor caruia sa ii pot pune intrebari atunci cand nu inteleg.” Asa e — e mai usor sa inveti atunci cand ai un “profesor” sau un “frate mai mare” care sa iti raspunda la intrebari atunci cand te blochezi.
#6 Lipsa de motivatie si de rabdare
Invatarea programarii implica efort si daca nu ai rabdare si o motivatie puternica, poti fi tentat(a) sa renunti prea usor. Crezi ca e usor sa inveti programare? Crezi ca poti obtine vreun lucru important pe lumea asta fara efort? Nu vreau sa te mint ca e usor si ca n-o sa dai de greu. Ba chiar iti garantez ca vor veni momente cand vei fi gata sa renunti. Acelea sunt momentele cand vei avansa cel mai mult. Cu conditia sa nu cedezi.
(Daca invatarea programarii ar fi fost ceva absolut banal, oricine ar fi facut-o si n-ar fi avut aproape nicio valoare. Dar tu nu esti oricine. Esti o persoana speciala, care nu se sperie de Bau-bau, ci isi infrunta temerile prin actiune.) 🙂
#7 Lipsa de exemple explicate
“Prea multa teorie si prea putine exemple practice, explicate pas cu pas.” Altii v-ati plans ca in materialele studiate doar vi se explica lucruri, fara sa vi se spuna despre aplicabilitatea practica a acelor lucruri. Va inteleg frustrarea — caci daca n-as fi avut inca de la inceputurile mele in ale programarii contact direct cu aplicatiile notiunilor invatate, exista riscul sa fi cedat pana acum.
#8 Matematica si logica
Da, e nevoie de matematica pentru a programa. In afara acestui chestionar am primit si in privat de foarte multe ori intrebarea “Trebuie sa stiu matematica pentru a putea sa programez?” Raspunsul e: Nu neaparat.
Dar pentru a fi un bun programator ai nevoie sa cunosti notiuni elementare de matematica. De exemplu, cum vei putea programa o aplicatie de contabilitate daca nu stii ce inseamna acela “procent”? Ba chiar si de notiuni de fizica poti avea nevoie. Cum ai putea programa un joc in care arunci o bila dintr-un tun fara sa stii despre ecuatia miscarii bilei?
Deci e nevoie de matematica. De aspectele practice din matematica. Si e nevoie de logica. De o logica foarte buna. (Calculatorul iti “taxeaza” orice eroare, caci el e ca un “copil mic” care intelege fix ceea ce ii spui — fara nuante sau subtilitati.)
#9 Limba engleza
O ultima dificultate care intra in acest top este neconoasterea limbii engleze. Aceasta dificultate nu e legata direct de programare — caci programarea e un limbaj universal, in ciuda faptului ca unele cuvinte utilizate in limbajele de programare sunt preluate din limba engleza. Dificultatea aceasta e legata de faptul ca documentatia (buna) in limba romana este destul de greu de gasit.
Oricum, faptul ca ai ajuns pe acest blog ar trebui sa iti ofere macar o raza de speranta. Iata aici primii pasi pe care ti-i recomand:
https://igotopia.ro/vreau-sa-invat-programare-cum-sa-fac-4-pasi
Iar pentru intrebari, scrie-mi!
(Oi fi eu mai tanar decat o parte serioasa dintre cei care mi-ati raspuns, dar poate ca va pot fi un “frate mai mare” in acest domeniu :-).)
Alătura-te “igotopienilor” din armata noastra de creiere cu mușchi și vei primi testul care îți va spune dacă ai sau nu minte de programator. [ găsești formularul de abonare în dreapta sus …^ ]
Cu drag,