Salut, numele meu e Nick Parlante, iar acesta este cursul care exploreaza
calitatile de baza ale computerelor. Cum functioneaza, ce pot si ce nu pot face. Si nu
necesita deloc cunostinte anterioare despre computere. E facut pentru toata lumea. Inainte de a
incepe, as vrea sa ma opresc un moment pentru a multumi celor de la Google pentru suportul oferit
cercetarilor mele initiale pe acest subiect, care in cele din urma m-au ajutat sa creez acest curs. De asemenea
o nota rapida despre format: Acest curs nu cuprinde doar inregistrari video. Pentru fiecare sectiune video
exista acest document scris in care sunt eu intrat si navighez, care
ofera explicatii paralele si are diagrame, exemple de cod si alte chestii.
Deci, practic in orice moment, puteti schimba intre video si document daca
vreti sa re-cititi o explicatie sau sa incercati unul din exemple sau altceva.
E o mare diferenta intre a ma vedea pe mine facand ceva si a incerca voi insiva sa faceti lucrul acela. Asa ca
sfatul meu e... de multe ori, la sfarsitul unei sectiuni, vom avea niste
exercitii. Si in acel moment, inainte sa incercati exercitiile, puteti decide.
Sunteti gata sa treceti la exercitii sau at vrea sa va intoarceti la
document si sa incercati unele, sa incercati unele din experimente voi insiva pentru a
solidifica acele cunostinte? Asa ca ar trebui sa stiti macar ca sunt disponibile pentru fiecare
din aceste sectiuni. Deci voi spune ca ecuatia fundamentala a computerelor e
"computer = puternic + stupid". Puternic deoarece computerele pot
face miliarde de operatiuni. Functioneaza inimaginabil de rapid. Dar
operatiunile sunt stupide in sensul ca operatiunile pe care le poate face computerul
sunt foarte simple, cu totul mecanice. Nu au nimic care
sa poti defini ca intuitie umana despre ceea ce fac. Deci aceasta ciudata
combinatie de, un fel, mare putere combinata cu un fel de stupiditate mecanica.
Acest model va avea mai mult sens odata ce vom lucra la aceste mici
exemple de cod pentru a ne cam juca in lumea computerelor. Acum sunt
un pic provocativ, cam fac misto de computere. Oh, sunt asa de stupide,
si, pe de alta parta, vedem cum computerele sunt foarte utile. Deci intr-un fel
cam despre asta e vorba in curs. Pe de-o parte vizitam aceasta
lume amuzanta a computerelor care e cam mecanica, iar apoi facem legatura la
stiti voi, lucruri ca email-ul si audio MP3. Lucruri care in lumea reala
sunt foarte utile. Incercam sa legam aceste doua lumi si sa va aratam
cum functioneaza computerele si care e locul lor in lumea asta. Scopul meu e ca dupa acest
curs sa intelegeti cum functioneaza computerele si care e locul lor. Si
intr-un fel nu esti intimidat de computer. Nu te gandesti la el ca la un fel
de cutie magica, de neinteles. De asemenea am o... agenda secreta. Sunt prea putini oameni ai
stiintei computerelor in lume. Sunt prea multe probleme pe care am vrea sa
le rezolvam, dar nu sunt destui oameni care sa le programeze pe toate. Deci
agenda mea secreta e ca, deschizandu-va ochii la lumea computerelor si cum
mergea ea, unii dintre voi poate veti afla ca sunteti interesati in a continua sa studiati aceasta stiinta
a computerelor in viitor. Deci, prima aproximare pe care o voi studia; Cum
merge un computer? Deci un computer e practic dirijat de cod. Si vom
intra in detaliu ceva mai tarziu. Acum doar vom arunca o privire. Deci aici
am facut o mica imagine a unui computer. Si codul dintr-un computer e
facut din aceste mici instructiuni simple. Si una din aceste instructiuni ar putea fi sa adune doua numere,
stiti voi, sa calculeze cat face 1 + 1 sau sa verifice daca 2 e mai mic ca 10. Si ce
face computerul e sa urmeze aceasta lista de
instructiuni. Fiecare instructiune e foarte simple si computerul doar merge
in jos pe lista si le urmeaza, cu toate ca ce-i drept o face foarte rapid. Dar fiecare
instructiune da senzatia de ceva mecanic. Deci o sa spun asta,
cred ca asta ne duce cu gandul la o intrebare naturala. Care este, pai... Daca un computer este
atat de mecanic ca doar urmeaza niste instructiuni, cum se face ca exista atat de
multe caracteristici utile? Si am aici o diagrama pentru cazul asta. Deci
pe partea dreapta o sa-mi imaginez niste caracteristici utile. Ca reducerea efectului
de ochii rosii, sau mesagerie instant. Si o sa spun pentru discutia asta ca, stiti voi,
telefonul vostru, aparatul foto digital, acestea sunt toate computere. Deci in dreapta
sunt caracteristicile utile, reducerea efectului de ochii rosii. Si pe partea stanga
avem computerul, care doar urmeaza, stiti voi, niste simple
instructiuni mecanice. Deci ce leaga aceste doua parti? Si raspunsul
e chiar asta. Asta reprezinta programarea computerelor. Exista o persoana,
un programator, care la inceput are o idee. Oh, ar trebui sa avem reducerea efectului
de ochii rosii, asta ar fi foarte util. Asa ca isi folosesc creativitatea si
imaginatia ca sa se gandeasca la ce ar fi util sa poata face
un computer. Si apoi ce face programatorul e sa structureze
si sa defineasca problema, pentru ca un computer s-o poata rezolva. Ei de fapt instruiesc
si, stiti voi, structureaza problemele pentru ca apoi computerele sa poata face aceste
lucruri folositoare. Asta e programarea. Si de fapt, orice
lucru util pe care l-ati facut cu aparatul foto, sau telefonul, sau
computerul vostru, in spatele scenelor a fost o persoana care a facut asta sa fie posibil.
Si-mi cam place aceasta combinatie. Intr-un fel, programatorul, persoana,
isi aduce creativitatea si intuitia despre lumea si se gandeste la lucruri care ar putea
fi utile. Si asta e jumatatea lor din problema. Si computerul
face ceea ce stie el sa faca. Si as putea spune ca, computerul e bun la a fi
in cele din urma convenabil. Si computerul poate urma aceste instructiuni
foarte, foarte rapid asa ca obtinem, stiti voi. In cele din urma obtinem aceasta
combinatie. Si intr-un fel de-asta sunt atat de multe computere
in lumea asta care fac atatea lucruri utile. Ne arata ca asta e un parteneriat bun
intre oameni si computere. Intr-un fel aceasta diagrama e si cam
sumarul acestui curs. Vom vizita partea stanga pentru a vedea
cum arata lumea computerelor. Si ne vom uita la legatura dintre ea
si caracteristicile pe care le folositi pentru a intelege ce loc are computerul
in lume si cum face ceea ce face. Deci, in a doua parte a acestei sectiuni, voi
incepe sa va arat niste exemple de cod. Si ar trebui sa mentionez ca
veti avea nevoie de putina rabdare. O sa incep sa scriu niste cod. Si
primele noastre exemple de cod nu vor face ceva
extravagant. As putea spune ca e un pic ca niste caramizi de LEGO. Fiecare bucata de cod pe care
o invatam e o noua caramida si in cele din urma vom putea sa punem aceste lucruri
impreuna si sa facem lucruri destul de faine. Dar in aceste prime doua sectiuni
lucrurile, trebuie sa incepem undeva, iar aceste prime exemple sunt foarte simple. Deci am
sa va rog sa aveti rabdare, va promita ca vom ajunge undeva super cu materialul asta. Oh,
si de fapt aici o sa prezic ca in
doua ore de lectura vom incepe sa facem niste efecte speciale vizuale. Si asa
ne vom juca cu faimoasa problema Maimuta Luna Banana. Si asta e
doar o mica prevestire in legatura cu unde vom ajunge. Dar pentru asta doar vom scrie
niste bucatele simple de cod. Deci pentru aceste exercitii de programare vom folosi un limbaj de
programare numit JavaScript. JavaScript e un limbaj foarte popular. Functioneaza in
browserele web noi si de-asta e asa popular. Si de-asta e
potrivit pentru curs. Pentru ca noi lucram in browserul web,
ceea ce inseamna ca va merge destul de bine codul nostru. Vom folosi JavaScript plus
niste extensii pe care le-am adaugat special pentru cursul asta. Deci asta nu va arata
exact ca un JavaScript profesionar. vom lucra la bucati de cod care
sunt in cele din urma scurte. Doar destul cat sa trecem peste lucrurile
pe care vreau sa le explic si sa exploram computerele. Dar fara a aduce prea multe din greutatile
care ar exista in programarea unor programe profesionale, complete.
Bun, deci asta e primul meu exemplu de cod.