introducere în informatic

Post on 28-Apr-2022

13 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Introducere în informatică

1. Intro

2. Ce este informatica?

3. Istoria calculatorului

4. Să desfacem un calculator

5. Despre programare

6. Informatica este prezentă peste tot

7. Prânz

8. Vreau să lucrez în domeniul IT

9. De ce am nevoie ca să fiu informatician?

10. Pauză

11. Programarea începe cu o provocare

12. Debriefing

2

Agenda

Ce este informatica?

Informatica este …

Știință care se ocupă cu studiul prelucrării informației cu ajutorul sistemelor automate de calcul. (DEX 2009)

Tehnologia necesară pentru prelucrarea (procurarea, procesarea, stocarea, convertirea și transmiterea) informației, în particular prin folosirea computerelor. (Wikipedia)

Ramură a matematiciiaplicate și a inginerieielectrice care se ocupă cu studierea cuantificării, stocării și comunicării informației.(Wikipedia)

5

Informatica Tehnologia informației Teoria informației

Sursa: https://www.google.ro/search?biw=1366&bih=657&tbm=isch&sa=1&ei=MxnWW5D2MMLVwALMxIXACg&q=copuer+science+versus+information+technology&oq=copuer+science+versus+information+technology&gs_l=img.3...53721.61774.0.61889.46.42.1.0.0.0.319.5189.0j34j3j1.38.0....0...1c.1.64.img..7.5.627...0j0i67k1j0i5i30k1j0i5i10i30k1j0i10i24k1.0.MUfDXUCCg-Q#imgrc=1oBYnPTtXGYnlM: Sursa: https://qph.fs.quoracdn.net/main-qimg-bf6988612a121cad07d2560c93337c51-c

Sursa: http://bboyseiok.com/assets/img/20180506/onezanzeroz.jpg

Istoria calculatorului

Evoluția calculatorului

Apariția primului

calculator electronic

(Z3)

Începutul primei

generații de computere

(cu tub catodic)

Începutul generației a

doua de computere

(cu tranzistori)

Today

cca 100 î. e.n. 1936 1940 1956 2010

7

Apariția primului

calculator analogic mecanic

(Antikythera)

Începutul generației a

cincea de computere

(cu inteligență artificială)

Începutul generației a

treia de computere (cu circuite integrate)

1964

Începutul generației a

patra de computere

(cu microproce-

sor)

1971

Mașini de calcul și calculatoare mecanice

- prima mașină de calculat folosită lanumărat

- confecționat din mărgele și bețe

9

Abacul (3.000 î. e.n.)

Sursa: https://www.google.ro/url?sa=i&source=images&cd=&cad=rja&uact=8&ved=2ahUKEwiTw8iss7veAhXFblAKHQ79DvsQjRx6BAgBEAU&url=https%3A%2F%2F34tm.wordpress.com%2F2014%2F09%2F14%2Fmetoda-de-dezvoltare-a-capacitatilor-creierului%2F&psig=AOvVaw0BfXp0gckA5j3eW0ylPzAI&ust=1541443682170927

10

Mecanismul de la Antikythera (100 î.e.n.)

Sursa: https://www.google.ro/url?sa=i&source=images&cd=&cad=rja&uact=8&ved=2ahUKEwiTw8iss7veAhXFblAKHQ79DvsQjRx6BAgBEAU&url=https%3A%2F%2F34tm.wordpress.com%2F2014%2F09%2F14%2Fmetoda-de-dezvoltare-a-capacitatilor-creierului%2F&psig=AOvVaw0BfXp0gckA5j3eW0ylPzAI&ust=1541443682170927

- este alcătuit din cuplaje și pârghii- este predecesorul calculatorului

electronic de astăzi- Pascal a construit 50 calculatoare bazate

pe angrenaje, cu o funcţie, de adunare, dar n-a vândut multe din pricina costului mare şi problemelor de acurateţe (atunci, imposibil de fabricat rotiţe cu o precizie cerută)

12

Calculatorul cu roți rotative - Pascalina (1642)

- proiectată de Charles Babbage, matematician și inginer britanic, supranumit ,,părintele computerului de astăzi”

- funcționa pe principiu mecanic (analogic), dar a fost prima mașină care putea fi programată

- inventatorul nu a construit-o niciodată, fiind abandonată la 10 ani după proiectare

- a fost construită în 1991, după schițele originale, și s-a dovedit perfect funcțională

13

Mașina diferențială (1822)

- inventată de Herman Hollerith- utiliza cartele perforate- era de mărimea unui birou- citea găurile din cartele, contoriza

(număra, sorta și alătura date) prin intermediul unui mecanism cu roți bazat pe ideile lui Pascal și afișa cu ajutorul unui perete cu indicatori cu cadran

14

Mașina de perforat a lui Hollerith (1890)

Caculatoare electronice

- Computer (ABC)

16

ABC (1937)

- calculatoare de dimensiuni foarte mari- circuite cu tuburi catodice - limbaj mașină- rezolvau o singură problemă la un moment dat- informatica – armata americană, universități și institute de cercetare (caracter de

noutate)

1940-1956: Prima generație de computere – tub catodic

17

- folosea calculul binar (numere formate din 0 și 1) pentru adunare, scădere, înmulțire și împărțire

- costul de producție: 20.000$

19

Calculatorul de numere complexe (1940)

- calculator electromagnetic, considerat cel dintâi calculator universal

- este primul calculator programabil

20

Z3 (1941)

- primul computer proiectat pentru descifrarea criptării realizate de mașina construită de naizști, ,,Enigma”

- primul calculator electronic digital programabil în întregime

- nu avea memorie RAM- aveau comutatoare, panouri cu fișe și

fotocelule ce citeau banda de hârtie

21

Colossus (1943)

- primul calculator complet electronic- cântărea 30 de tone- avea aprox. 18.000 de tuburi catodice- realiza în jur de 100.000 de operații pe

secundă- nu avea sistem de operare- capacitate de memorare : aprox.1000

biți (aprox.20 numere zecimale cu 10 cifre fiecare)

- folosea cartele perforate pentru stocarea datelor

23

ENIAC (1943-1945)

24

Tranzistorul (1948)

- primul calculator care executa un program stocat în memorie

- avea o memorie de 32 de cuvinte- singura operație aritmetică pe care o

putea efectua era scăderea- a reprezentat momentul nașterii

software-ului

25

Manchester Baby (1948)

- primul calculator de uz comercial – the Universal Automatic Computer

- funcționa cu programe memorate- citea și scria date de 10 ori mai repede,

datorită unității de bandă magnetică

27

UNIVAC (1951)

- design-ul lui a fost făcut public în mod gratuit, drept urmare multe academii și institute de cercetare au început să-și construiască propriile calculatoare

28

IAS (1952)

- primul computer destinat uzului general- doar 19 astfel de computere au fost

create și puteau fi închiriate cu 15.000 de dolari pe lună

29

701 EDPM (1953)

- primul limbaj de programare ce folosea limba engleză

- era scris mai întâi pe foi de codificare, apoi perforate în cartele sau benzi de hârtie care erau citite de calculator

- era potrivit pentru computații numerice și calculații științifice

30

FORTRAN (1954-57)

- tranzistori în loc de tuburi de vid => micșorarea consumului de electricitate și a cantității de căldură emanate

- mai rapide și mai mici- aveau o memorie de bază, folosită alături de stocarea pe bază magnetică- tranzistorii foloseau drept input cartele perforate și printau ca output- foloseau limbaj de asamblare

1956-1963: A doua generație de computere – tranzistori

31

- primul calculator cu hard disk, care aînlocuit fișierele greoaie cu carteleperforate

- RAMAC stoca 5 mB de date și era demărimea a două frigidere

- IBM vindea acest hard disk cu 10.000$ pemB

32

IBM 305 RAMAC (1956)

- sistem de comunicații și control în timp real care lega 23 de site-uri de pe teritoriul SUA, coordonând sistemul de arme, radar, rapoarte meteo etc.

- sistemul se întindea pe patru etaje, mărimea și complexitatea lui erau fără precedent, solicitând milioane de instrucțiuni

33

SAGE (1958)

34

Mouse (1963)

- circuitele integrate (cipurile semiconductoare) = conglomerat de tranzistori în miniatură, atașați pe cipuri de silicon

- viteză mai mare, dimensiuni mai mici, putere mai mare, prețuri mai mici- tastaturi și monitoare și sisteme de operare- puteau rula mai multe aplicații simultan- informatica pătrunde în întreprinderi, în special în companiile comerciale și petroliere

1964-1971: A treia generație de computere – circuite integrate

35

- familie de calculatoare cu scop general- programul lui putea fi rulat de toate

calculatoarele- oferea peste 50 de programe

specializate destinate inginerilor

36

Sistemul IBM 360 (1964)

- cel mai ieftin calculator comercializat de IBM până atunci (32.000$)

- oferea disc de stocare mobil și o întreagă gamă de periferice, inclusiv cititoare de carduri și imprimante

37

IBM 1130 (1965)

- primul calculator al producătorului de minicalculatoare Hewlett-Packard

38

HP 2116 (1966)

- rețea de calculatoare descentralizată, precursoarea internetului de astăzi

- patru computere diferite au fost conectate la acel moment, cu mesajul ,,IO”, în locul datelor de logare, din pricină că sistemul format nu era suficient de puternic

39

ARPANET (1969)

- primul PC- avea memorie de 256 B- costa 750$

40

Kenbak - 1 (1971)

- mii de circuite integrate erau construite pe un singur cip de silicon- în 1971 a fost inventat Intel 4004, primul microprocesor comercializat, care a dus la

dezvoltarea industriei computerelor personale- au apărut laptopurile, GUI (Graphical user interface)- aveau mouse, joystick- memoria și capacitatea de stocare au fost îmbunătățite major- 1970-1990 – informatica se bazează pe utilizarea calculatoarelor de capacitate medie,

pătrunzând în toate mediile cotidiene (activitatea militară, economică, cercetare științifică și învățământ)

- 1990-2000 – PC-urile pătrund și în casele oamenilor

1971-2010: A patra generație de computere – microprocesor

41

- este inventat limbajul de programare C, cu versiunea sa îmubunătățită (C++) apărând în 1979

42

C (1972)

- întregul sistem era cuprins într-o cutie- nu exista tastatură- datele se introduceau cu ajutorul unor

comutatoare situate pe partea din față a carcasei echipamentului

- nu avea monitor, rezultatele fiind citite prin interpretarea unor semnale luminoase

44

Altair 8800 (1975)

- primul PC cu microprocesor (Intel 8008), non-kit

45

Micral (1973)

- calculatorul era vândut inițial sub formă de kit, ulterior abia acesta fiind livrat gata montat

- acesta includea, pe lângă unitate, o tastatură și un monitor

- calculatoarele deja montate au facut că numărul cumpărătorilor să crească

46

Sphere 1 (1975)

- cuprindea o tablă printată pentru circuite, componente și un manual de asamblare la prețul de 666$

48

Apple – 1 (1976)

- se naște sistemul de operare Microsoft Disk Operating System

- MS-DOS a constituit punctul de plecare pentru viitoarele sisteme de operare (Windows) Microsoft

50

Ms-Dos (1980)

- IBM lansează modelul 5150, care venea cu floppy disk încorporat și rula sistemul de operare MS-DOS

- acesta avea prețul de 1.565 de dolari și a ajuns să domine piața

- a fost folosit în școli- design-ul a fost făcut public de IBM, care

a menținut însă dreptul de autor doar asupra unei componente numită BIOS, un singur chip ce conținea instrucțiuni privind modalitățile de comunicare între software-ul ce rula pe computer și părțile sale componente

51

IBM 5150 (1981)

- computer lansat de Apple- avea interfață prietenoasă, cu

pictograme (GUI)

52

Macintosh (1984)

- în România se introduc HC-urile, calculatoare personale ce au rezistat pe piață până în anul 1994

- fabrica se afla la Pipera și producea de la modele cu un procesor și sistemul BASIC cu bandă magnetică și fără floppy disc (versiunea HC 85), până la versiuni cu floppy-disk încorporat (HC-2000)

- un HC-85 costa aproximativ 15.000 de lei (aproximativ 700 de dolari), în timp ce un HC 2000 costa în anul 1992 5.500 de lei.

54

HC - Home Computer (1985)

- Microsoft introduce Windows 1.0 în 1986- în 1990, introduce Windows 3.0- la mijlocul anilor 90, mai mult de 95% din

calculatoarele din lumea întreagă rulau Windows

55

Windows (1986)

- calculatoare mici, de ținut în mână, care au fost inițial proiectate să fie agende personale electronice, dar care în decursul timpului au devenit polivalente

- permitea recunoașterea scrisului de mână, introducerea cardurilor de memorie, servicii de fax și e-mail etc.

57

PDA (1993)

- primul smartphone s-a numit IBM Simon Personal Communicator

- era primul PDA care integra caracteristici telefonice

- bateria dura doar o oră- cântărea 510 grame- avea 1 MB de memorie

58

Smartphone (1994)

- tehnologia continuă să evolueze (nanotehnologie, inteligență artificială, calcule cuantice)- se dorește ca noile calculatoare sî răspundă la limbajul natural uman și să fie capabile de

învățare și organizare proprieSe bazează pe utilizarea:-inteligenţei artificiale;

- circuitelor integrate specializate;- procesării paralele;- superconductorilor;- procesării moleculare şi cuantice – se bazează pe anumite proprietăţi ale atomilor şi nucleelor care le permit să lucreze împreună drept biţi cuantici (“qubits“) pentru a fi utilizaţi de procesor şi memorie;- nanotehnologiilor

Ex: recunoașterea vorbirii

2010-prezent: A cincea generație de computere – tehnologii noi

59

60

Generația a 5-a de calculatoare

Exemple de calculatoare din viața de zi cu zi

Smartphone

Smartwatch

Smart TV

Arduino

Raspberry Pi

Să desfacem un calculator

68

Care sunt tipurile de componente pe care le are un calculator?

69

Să identificăm împreună câteva componente hardware

1

2

3

4

5

70

Din ce este formată componenta software?

71

Interfață sistem de operare

Kernel

Procesor Memorie Periferice

Cum comunică cele două componente ?

Despre programare

Programarea declarativă

Exemplu:

Afișează dintr-o bază de date următoarele informații

Numele și prenumele elevilor cu ochii verzi care sunt în clasa a

11-a, la specializarea matematică-informatică.

Programarea imperativă

Exemplu:

declara a

declara b

citeste a

citeste b

afiseaza a+b

73

Câte tipuri de programare există?

CUM? CE?

Un set de reguli sintactice și semantice care sunt

înțelese de calculator.

• reguli sinctactice - după fiecare instrucțiune se pune ;

• reguli semantice – cuvintele au un sens bine definit

74

Ce este un limbaj de programare?

Limbaje de programare imperative: C, C++, Java etc.

Limbaje de programare declarative: SQL, T-SQL etc.

Powershell

Unde se folosește?

• Dezvoltare de scripturi pentru administrarea acțiunilor în sistemul de operare

C

Unde se folosește?

• Dezvoltare de sisteme integrate (embedded systems)

• Dezvoltare de sisteme de operare (99% din kernelul Linux-ului, Windows, Unix, kernel MacOS X)

C++

Unde se folosește?

• Dezvoltare de sisteme de operare (Windows)

• Dezvoltare de motor de căutare (Google – o parte)

• Dezvoltare de aplicații de gestiune a bazelor de date (Postgress, MySQL)

Java

Unde se folosește?

• Dezvoltare de aplicații mobile (Spotify –Android)

• Dezvoltarea site-urilor pe parte de server (Amazon.com, Facebook.com, e-Bay.com)

• Dezvoltare de interfețe grafice

Python

Unde se folosește?

• Dezvoltare web

• Aplicații bazate pe analiza datelor (Spotify, Facebook, Google, Youtube -sistemul de recomandare)

• Automatizare de acțiuni

PHP

Unde se folosește?

• Dezvoltare web pe parte de server (Yahoo.com, Google.com, WordPress.com)

• Dezvoltare de aplicații desktop

Javascript

Unde se folosește?

• Dezvoltare de site-uri împreună cu HTML si CSS (e-Bay.com, Google.com, Youtube.com, Facebook.com)

• Servicii pe partea de server a site-urilor (e-Bay.com)

C#

Unde se folosește?

• Dezvoltare de aplicații windows

• Dezvoltare de aplicații web

Swift

Unde se folosește?

Dezvoltare de aplicații pentru produsele Apple (Firefox-IOS, WordPress, Flappy Bird, 2048, SoundCloud)

Ruby

Unde se folosește?

• Dezvoltare de aplicații web (airbnb, SoundCloud)

• Dezvoltare de aplicații mobile

• Dezvoltare de aplicații desktop

Kotlin

Unde se folosește?

• Dezvoltare de aplicații mobile Android (Pinterest)

• Dezvoltare de aplicații web

SQL

Unde se folosește?

• Administrare de baze de date

• Modelare de baze date

87

Cum știe calculatorul să facă ce îi specifică programatorul

Informatica este prezentă peste tot

Medicină

Exemple:

• Poți folosi un computer să simuleze reacțiile chimice și să ne ajute săaflam ce medicamente ar fi eficiente în combaterea anumitei boli;

• Poți folosi informatica să previzionezi la ce boli genetice ești predispus;

• Chiar și pentru lucruri simple, cum ar fi să îți faci o programare on-line.

93

Cum este prezentă informatica în medicină?

Muzică

Exemple:

• Poți scrie un software care analizează muzica ascultată de tine și ți-o sortează în funcție de gen

• Poți crea muzică cu ajutorul computerului

• Există aplicații care ascultă muzică și o pot identifica

95

Cum este prezentă informatica în muzică?

Geografie

Exemple:

• Google Maps/GPS

• GIS – un sistem care măsoară și analizează datele spațiale

97

Cum este prezentă informatica în geografie?

Psihologie

Exemple:

• Creezi programe care arată ce gandesc oamenii

• Credeți că pe viitor vor exista roboți cu sentimente?

99

Cum este prezentă informatica în psiholohgie?

Educație, jocuri video, industria auto

101

Exemplu practic

• Cum este salvată informația pecalculatorul vostru?

• Ce se întamplă când dai zoom la o pozăpe calculator?

102

Exemplu practic

• Informatica este de fapt despre rezolvarea unor probleme, iar

problemele pot fi de orice natură;

• Nu este doar programare și cod;

• În final este o modalitate de a face lumea mai bună.

103

Concluzie

Vreau să lucrez în domeniul IT

Giganții din IT

Joburile în IT sunt cool, motivante și bănoase

Sunt mai multe joburi pe piață decât candidați

Ai ocazia să oferi soluții la diverse probleme din industrie

Îți poți vedea ideile transformate în realitate

Ai libertatea de a veni cu propuneri noi

Înveți constant

106

De ce să lucrezi în domeniul IT?

Industria IT este recunoscută pentru lista mare de titluri de locuri de muncă și roluri, ceea ce poate face dificilă identificarea exactă a activităților.

Astfel, am decodat câteva dintre cele mai populare poziții în micul nostru ghid:

Software engineer

System analyst

Inginer de rețea

Web developer

Software tester

Helpdesk support

Dezvoltator baze de date

Dezvoltator aplicaţii mobile

107

Mic ghid pentru rolurile din IT

• Cunoscut și sub denumirea de:Programator/inginer de sistem, software arhitect, programator de aplicații, software developer.

• Despre rol pe scurt:• Activitatea principală a unui Software Engineer este de

a-şi imagina şi crea cu ajutorul calculatorului, soluţii la problemele zilnice întâlnite de persoane sau firme, pentru a le uşura viaţa sau a le creşte productivitatea.

• Implementează cerinţele venite de la clienţi şiîncearcă să o facă în concordanţă cu tehnologiileactuale.

• Este nevoie, astfel, de un proces continuu de învaţare a noilor tehnologii.

• Competențe necesare: Analiză, gândire logică, lucrul în echipă, curiozitate, adaptare la noile tehnologii și atenție la detalii.

Software Engineer

108

• Cunoscut și sub denumirea de:Product specialist, systems engineer, solutions specialist, technical designer.

• Despre rol pe scurt:• Analistul de sistem realizează analiza în vederea

definirii specificațiilor pentru construirea efectivă a sistemelor informatice;

• Transformă nevoile clientului în cerințe de business;• Rolul necesită o combinație de cunoștințe de business

și tehnice, dar și o bună înțelegere a oamenilor.• Competențe necesare: Abilitatea de a extrage și analiza

informații, o bună comunicare și putere de convingere.

109

System Analyst

• Cunoscut și sub denumirea de:• Network engineer, network designer, network admin.

• Despre rol pe scurt:• În general, rolul implică definirea, administrarea,

întreținerea și modernizarea sistemelor de comunicații, a rețelelor locale și globale pentru o organizație.

• Inginerii de rețea sunt responsabili de strategiile desecuritate, stocare a datelor și disaster recovery.

• Acesta este un rol tehnic și va fi nevoie de anumite certificări de specialitate pe măsură ce avansați.

• O diplomă în domeniul telecomunicațiilor poate fi utilă.• Competențe necesare: cunoștințe de rețelistică specializate,

comunicare, planificare, analiză și problem-solving.

Inginer de rețea

111

• Cunoscut și sub denumirea de:Web designer, arhitect multimedia, internet engineer, front-end/back-end developers, full stack developer.

• Despre rol pe scurt:• Dezvoltarea web este un termen larg și acoperă totul

în legătură cu construirea site-urilor web și a întregii infrastructuri care se află în spatele lor.

• Dezvoltatorii Web se impart în front-end și back-end.• Primii sunt responsabili cu scrierea codului ce

determină modul în care arată un website și cum esteprezentat conținutul.

• Back-end developers vor scrie cod și alte programecomplexe pentru managementul conținutului.

• Competențe necesare: înțelegere a tehnologiilor web (client side, server side și baze de date), gândire analitică, creativitate și problem solving.

112

Web Developer

• Cunoscut și sub denumirea de:Software quality assurance tester, QA tester, QA analyst, QA engineer.

• Despre rol pe scurt:• Bug-urile pot avea un impact masiv asupra productivității

și reputației unei firme. • Testerii încearcă să detecteze toate modurile în care o

aplicație sau sistem ar putea fi folosit(ă) și cum ar putea eșua.

• Dacă nu programează, au nevoie de o bună înțelegere a codului.

• Pregătesc scripturi de testare (funcționale și de regresie) și analizează rezultatele.

• “este mult mai ușor să previi decât să tratezi”• Competențe necesare: Atenție la detalii, creativitate,

organizare, gândire analitică și de investigație, răbdare și comunicare.

Software tester

113

• Cunoscut și sub denumirea de:Technical support, operations analyst, tehnician Helpdesk, operator Helpdesk, support engineer.

• Despre rol pe scurt:• Oferă suport și asistență tehnică clienților care

utilizează software, hardware sau alte sisteme informatice

• Unele linii de asistență necesită profesioniști cu experiență și cunoștințe specifice, dar suportul tehnic poate fi, de asemenea, o oportunitate în IT pentru absolvenți.

• Competențe necesare: Diverse cunoștințe tehnice, problem solving, comunicare / ascultare, răbdare și diplomație.

114

Helpdesk support

• Cunoscut și sub denumirea de:Database admin, Database specialist, DBA.

• Despre rol pe scurt:• O bază de date este o colecție de informații care este

organizată astfel încât să poată fi ușor accesată, gestionată și actualizată (în rânduri, coloane și tabele și sunt indexate pentru a facilita găsirea informațiilor relevante).

• DBA este responsabil cu crearea, întreținerea, interogarea, optimizarea, atribuirea drepturilor utilizatorilor și securitatea bazelor de date ale unei organizații.

• Realizează operaţiunile de salvare (backup) şi restaurare (restore) a datelor.

• Competențe necesare: hardware, software, modele şistructuri de date, abilități analitice.

Dezvoltator baze de date

115

• Cunoscut și sub denumirea de:Mobile app developer, mobile app programmer.

• Despre rol pe scurt:• Crează aplicaţii mobile şi realizează designului lor.• Ajută utilizatorii de smartphone-uri şi de tablete să

citească, să facă cumpărături sau să se joace prin intermediul aplicațiilor.

• In acest moment, 3 platforme principale împart 85% din piață: iOS, Android și Windows Phone.

• dezvoltarea de aplicații mobile este similară cu cea de aplicații Web. O diferență critică este însă că aplicațiile mobile sunt adesea scrise pentru a profita de caracteristicile unice pe care le oferă un dispozitiv mobil.

• Competențe necesare: creativitate(UX/UI design), comunicare, limbaje de programare pentru platforme mobile.

116

Dezvoltator de aplicaţii mobile

Roluri IT din viitorul apropiat:

Machine learning engineer

Internet of Things architect

Blockchain expert

Cyber security engineer

DevOps engineer

“The sky is not the limit. Your mind is.”

117

• Cunoscut și sub denumirea de:Machine learning researcher/cerecetator, machine trainer, machine expert.

• Despre rol pe scurt:• Rolul presupune implementarea de programe

bazate pe ML(o subdivizie a InteligențeiArtificiale; capacitatea unui computer de a ‘învăța’ singur, pe baza datelor oferite).

• Algoritmul este implementat o singură dată, iar computerul va procesa noi seturi de date.

• Programele bazate pe ML pot învăța sărecunoască diverse trenduri și să realizezepredicții pe baza informațiilor stocate.

• Competențe necesare: algoritmică, limbajele de programare, statistică, probabilități.

Machine learning engineer

118

Machine learning - exemple

119

• Cunoscut și sub denumirea de:• IoT engineer, IoT developer.• Despre rol pe scurt:

• Rolul presupune construirea de soluții IoT• IoT este un concept prin care obiecte sau aparate

moderne folosite la scară largă, precum mașini, electrocasnice, sisteme de încalzire sau de iluminat, calculatoare de diferite tipuri (desktop, laptop, tableta, telefon si ceas inteligent) etc., vor putea comunica și relaționa între ele prin intermediul internetului.

• Avantaje: • controlul de la distanta al aparatelor, nu doar a

calculatoarelor din reteaua de internet• posibilitatea de a avea acces in timp real la date de

diferite tipuri preluate din mediul inconjurator, prinintermediul senzorilor.

• Competențe necesare: Creativitate!!

Internet of Things (IoT) arhitect

120

Watch video (IoT - beyond our current imagination)https://www.youtube.com/watch?v=sgMG7zRrcPk

• Cunoscut și sub denumirea de:Blockchain engineer, Blockchain Developer.

• Despre rol pe scurt:• Dezvoltă aplicaţii utilizând tehnologia Blockchain.• Multă lume confundă această tehnologie cu moneda

digitală bitcoin. Însă, în afara faptului că bitcoin este creat pe baza blockchain, aplicațiile acestei tehnologii sunt mult mai variate (servicii financiare, gaming, alegeri electorale, gadgeturi, posibilitatea de a urmări originea bijuteriilor sau a alimentelor).

• Blockchain este un lanț de blocuri, ca un dosar în care paginile se așază una după alta sau ca un raft de bibliotecă pe care se așază cărțile. Fiecare bloc conține informațiile despre o “tranzacție”, stocate securizat și criptat.

• Competențe necesare: platforme blockchain, capacitate de învățare, problem-solving, structuri de date

121

Blockchain expert

• Cunoscut și sub denumirea de:Cyber security expert, Cyber security analyst.

• Despre rol pe scurt:• Pe cât de multe lucruri utile fac programatorii care vor

să ne ușureze viața, pe atât de multe fac și hackerii.• Cum informațiile tuturor ‘plutesc’ la discreție pe

internet, fie că suntem oameni simpli sau de afaceri, hackerii au cam toate resursele pentru a ne da bătăide cap.

• Experții în securitate cibernetică sunt acei oameni de IT care ne protejează sistemele si calculatoarele de potențiali hackeri și de atacurile lor cibernetice.

• Competențe necesare: Gândire analitică, atenție la detalii, problem-solving, rezistență la stres.

Cyber security engineer

122

• Cunoscut și sub denumirea de:DevOps specialist.

• Despre rol pe scurt:• DevOps reprezintă un set de practici pentru o bună

colaborare între echipele de dezvoltare și cele de operațiuni, care pune accentul pe o schimbare a mentalității.

• Conform culturii DevOps, un singur grup de ingineri (programatori, administratori de sistem, QA testerietc.) are responsabilitatea finală a aplicației, de la colectarea cerințelor, la dezvoltare, testare, pregărireainfrastructurii, implementarea cerințelor și, în final, monitorizare și suport. Apoi ciclul este reluat.

• Acest concept îi ajută să devină mai eficienți, săinoveze și să livreze mai rapid software.

• Competențe necesare: Flexibilitate, testare, colaborare, tehnologii, infrastructură, imagine de ansamblu.

123

DevOps engineer

De ce am nevoie ca să fiuinformatician?

De ce am nevoie ca să fiu informatician?

Unii cred că a fi programator

înseamnă să știi foarte bine

C++ sau Java …

Realitatea este că IT-ul reprezintă mai mult de atât.

Cunoașterea unui limbajde programare

Toate celelalte lucruri pe care le folosesc zilnic în jobul meu din IT

128

Gandire logică și structurată

Limba englezăCuriozitate și

disponibilitate de a învăța

Munca în echipă Atenție la detalii Creativitate

Programarea începe cu o provocare

…ce-ar fi să învăt să dezvolt un joc

…hai unul “retro” totuși

OK, cool…. de unde încep?

??#@!@!...

alegem “problema” de rezolvat

…vrem să scriem “cod” pentru:

este clasic

este “retro”

….cu alte cuvinte puțin mai simplu

dar nu este Matematică

este un mod practic de a găsi soluții ușoare pentru probleme grele

e ca și cum avem un elefant de mâncat

pare imposibil, cum începem!!?

hai să vedem împreună

părțile care compun această provocare?

folosește-ți imaginația, vizualizează

analizează

un exemplu de zi cu zi:updates iOS/Android

…putem sa îmbunătăţim jocul la infinit(feature engineering)

părțile care compun această provocare?

welcome screen

afișează

nume jucător

afișează

high score

deseneazănava spațială

lanseazăproiectil cu

taste/mouse

mișcă cu tastele/mouse

nava

calculează

points per alien

1. Primul lucru pe care-l vede userul: welcomescreen ❶

2. Start game ❷1. game engine:

1. desenează nava spatiala2. mișcare taste/mouse => user input =>

mișca nava spatială (mouse vs taste) 3. desenează aliens4. mișcă aliens5. foloște nava spatială pentru a elimina

aliens: fire! 6. mișcă proiectil7. verifică dacă proiectilul a lovit un alien8. verifică daca alienul în cădere lovește nava

…2. game economics:

1. câte puncte pentru fiecare alien distrus….

144

❶ welcome screen, background

145

schimbă culoareade la linia 8

❶ welcome screen, adaugă titlul jocului

146

verifică mesajele de logare în consola

browserului

F12>Console

❷ start game, învață modificând codul și pregatete-te pentru Tema 2

147

Q & A

Feedback

Temă pentru acasă

Săptămâna 1:

1. Vizionare film artistic The Imitation Game/ Joculcodurilor (2014)

2. Dezbatere

Temă pentru acasă

Săptămâna 2:

Ce computer din a cincea generație de calculatoare v-arplăcea să aveți/construiți și de ce?

Temă pentru acasă

Săptămâna 3:

Legat de capitolul ‘Programarea începe cu o provocare’, propuneți noi funcționalități/ îmbunătățiri în jocul cu extratereștrii și nave.

Thank you

top related