ABONAMENTE VIDEO REDACȚIA
RO
EN
NOU
Numărul 150
Numărul 149 Numărul 148 Numărul 147 Numărul 146 Numărul 145 Numărul 144 Numărul 143 Numărul 142 Numărul 141 Numărul 140 Numărul 139 Numărul 138 Numărul 137 Numărul 136 Numărul 135 Numărul 134 Numărul 133 Numărul 132 Numărul 131 Numărul 130 Numărul 129 Numărul 128 Numărul 127 Numărul 126 Numărul 125 Numărul 124 Numărul 123 Numărul 122 Numărul 121 Numărul 120 Numărul 119 Numărul 118 Numărul 117 Numărul 116 Numărul 115 Numărul 114 Numărul 113 Numărul 112 Numărul 111 Numărul 110 Numărul 109 Numărul 108 Numărul 107 Numărul 106 Numărul 105 Numărul 104 Numărul 103 Numărul 102 Numărul 101 Numărul 100 Numărul 99 Numărul 98 Numărul 97 Numărul 96 Numărul 95 Numărul 94 Numărul 93 Numărul 92 Numărul 91 Numărul 90 Numărul 89 Numărul 88 Numărul 87 Numărul 86 Numărul 85 Numărul 84 Numărul 83 Numărul 82 Numărul 81 Numărul 80 Numărul 79 Numărul 78 Numărul 77 Numărul 76 Numărul 75 Numărul 74 Numărul 73 Numărul 72 Numărul 71 Numărul 70 Numărul 69 Numărul 68 Numărul 67 Numărul 66 Numărul 65 Numărul 64 Numărul 63 Numărul 62 Numărul 61 Numărul 60 Numărul 59 Numărul 58 Numărul 57 Numărul 56 Numărul 55 Numărul 54 Numărul 53 Numărul 52 Numărul 51 Numărul 50 Numărul 49 Numărul 48 Numărul 47 Numărul 46 Numărul 45 Numărul 44 Numărul 43 Numărul 42 Numărul 41 Numărul 40 Numărul 39 Numărul 38 Numărul 37 Numărul 36 Numărul 35 Numărul 34 Numărul 33 Numărul 32 Numărul 31 Numărul 30 Numărul 29 Numărul 28 Numărul 27 Numărul 26 Numărul 25 Numărul 24 Numărul 23 Numărul 22 Numărul 21 Numărul 20 Numărul 19 Numărul 18 Numărul 17 Numărul 16 Numărul 15 Numărul 14 Numărul 13 Numărul 12 Numărul 11 Numărul 10 Numărul 9 Numărul 8 Numărul 7 Numărul 6 Numărul 5 Numărul 4 Numărul 3 Numărul 2 Numărul 1
×
▼ LISTĂ EDIȚII ▼
Numărul 126
Abonament PDF

Experts Panel – Programare

Ovidiu Mățan
Fondator @ Today Software Magazine



PROGRAMARE

În cadrul evenimentului de lansare a numărului 124 al revistei Today Software Magazine, am discutat cu invitații noștri despre ce înseamnă să fi programator în 2022. I-am avut alături de noi pe:

Ovidiu Mățan: Vă invit să spuneți câteva cuvinte despre voi și proiectele în care sunteți implicați

Gelu Vac: Sunt CTO și partener într-o firmă germană de anul acesta. Sunt programator de meserie și sunt absolvent de informatică. Am făcut și economie. Am vrut să înțeleg cum pot valorifica pasiunea mea pentru informatică. În ultimii ani am făcut consultanță. Sunt cunoscut drept accelerator de produs. Am o serie de criterii de arhitectură pe care le aplic pur și simplu pentru a accelera produse. Ultimul proiect la care am lucrat este un produs care a fost construit în patru ani și pe care eu l-am restructurat în patru luni.

Alexandra Damaschin: Eu am terminat facultatea în Sibiu și lucrez din Sibiu. Lucrez pe Flutter. Inițial am lucrat pe aplicații native, pe Android. Colaborez și cu start-upuri.

Darius Matiesi: În afară de Big Data, am început și eu un master în economie. E un domeniu care mă pasionează și în care încă mă perfecționez. În proiectele la care lucrez în IT interacționez cu Scala, cu Terraform. Am terminat UTCN și am și un internship în AI la activ.

Cum e Flutter raportat la Android? Există limitări?

Alexandra Damaschin: Și Android e ok cu ceea ce a adus nou. Există diferențe. Cu Android rămâi doar acolo.

Ce părere ai despre frameworkurile web, despre vue, React? Să folosim frameworkuri sau să creăm de la zero?

Gelu Vac: Trebuie să existe un mix. Este o linie foarte fină legată de cât de mult mergi într-o direcție sau alta. A existat o schimbare în piață acum câțiva ani când au apărut frameworkuri de dezvoltare de produse full stack. Apăruse node.js, multe frameworkuri plurifuncționale. Ne-am trezit cu multe abordări full stack. Îmi aduc mereu aminte de principiul Entity. Mulți spun că sunt dinozaur că îl aduc în discuție. Mai nou i se spune "separation of concerns". E același lucru. Trebuie să decizi până unde te întinzi. Ce vrei să faci? Să faci streaming de date, să persiști date. Te ocupi de prelucrări, de fluxuri de business. Trebuie să identifici corect acest "separation of concerns", ulterior să îl păstrezi, să îl subliniezi. La proiectele foarte mari e foarte greu. Ai nevoie de arhitecții inițiali, de cei care au avut viziunea inițială. Când accelerez produse, trebuie să am o strategie clară care să definească unde vreau să ajung și în cât timp cu un anumit proiect. Arhitectura este o mare filosofie aplicată. Aveam o discuție cu un prieten despre limbajul pe care copiii ar trebui să îl învețe când încep programare. I-am spus că e nevoie de un domain specific language (DSL) potrivit nivelului lor. De exemplu, în Visual Studio sunt multe modele, multe template-uri care îți pot da un start bun.

Cât de mult este Data Engineering legat de programare și cât de mult de sortarea datelor pentru a fi apoi ronțăite de AI?

Darius Matiesi: Aș spune 40% pentru sortare, dar depinde foarte mult de tipul de date. Dacă datele sunt foarte variate, vei sta mai mult să despici firul în patru, dar va fi mai puțin cod de scris pentru use case-uri mai mici.

Recent au apărut multe template-uri bazate pe AI care să ne ajute să scriem cod mai rapid. Le-ați folosit? Care este experiența cu ele?

Alexandra Damaschin: Pentru mine a fost folositor la nivel de scris comentarii. Nu mi s-a părut extrem de folositor, dar este o idee interesantă care ar mai putea fi îmbunătățită.

Cum vedeți programarea obiectuală, design pattern? Le mai folosiți? Mai citiți cărți?

Alexandra Damaschin: Nu citesc cărți, dar sunt conectată la lumea articolelor și la lumea video care a explodat. Lucrurile sunt foarte bine explicate în tutoriale. Programarea orientată spre obiect este o bază bună pentru orice programator. E nevoie de aceste concepte.

Darius Matiesi: Consider că universitatea a reușit să pună bazele foarte bine cu câteva cursuri specifice de Java. Fără ele mi-ar fi fost mult mai greu să intru în IT. Chiar și programarea funcțională să o învăț de la zero fără a avea principiile de bază ar fi fost ceva foarte greu. Îmi place mult mai mult să învăț din imagini, din obiecte, mai puțin din cărți. Îmi plac mai mult articolele scurte, concrete și tutorialele de acest fel care îți permit să te specializezi.

Când ai o problemă te uiți pe StackOverflow sau consulți documentația limbajului?

Darius Matiesi: Prima dată îmi întreb seniorul din echipă, apoi merg la StackOverflow și doar apoi la documentație.

Ce părere ai despre AI?

Gelu Vac: Am săpat puțin în acest domeniu, dar ca viziune de piață și perspective, momentan, în industria globală, cred că suntem foarte la început. Foarte mulți ani, au lipsit eșantioanele de date. Fără date bune nu poți genera ceva de calitate. Acum suntem într-o etapă de storming profund. Deși nu sunt specialist, folosesc identificare de patternuri, de template-uri. Am anumite rigori pe care le folosesc curent.

Cu ce se ocupă start-upul cu care colaborezi? Ce tehnologii folosiți?

Gelu Vac: Start-upul din Germania cu care colaborez face asistență video remote. Există o mare contracție a forței de muncă. De exemplu, există puțini evaluatori de daune și ca să se economisească timp și să se folosească resursa potrivită este nevoie de un sistem care să permită asistența specialistului de la distanță. În sesiunile remote, folosim realitatea augmentată. Folosim foarte mult tehnologii. Folosim Visual Studio ca platformă de dezvoltare. Folosim C#, .ASP, .NET, TypeScript, un engine propriu.

Oamenii din Germania scriu comentarii în germană sau în engleză?

Gelu Vac: E un chin teribil. Folosesc doar germană. Sunt amabili și vorbesc în engleză dacă îi rogi, dar preferă germana. Și la francezi este la fel. Cel mai trist este cu Țările de Jos.

Când eram mai tânăr și lucram, noi nu aveam conceptul acesta că e seara, că e weekend, că e târziu și trebuie să mergem acasă. Totul era Waterfall. Pe toată lumea interesa data de lansare, deoarece așa se dictau bonusurile și avantajele. În perioada pre-release se stătea poate chiar toată noaptea la lucru. Voi, ca tânără generație, mai pățiți așa ceva?

Alexandra Damaschin: Aș spune că DA, mai ales cu schimbarea aceasta pe remote. Dacă ceva trebuie să se întâmple, atunci depunem efort pentru asta. Când avem Black Friday lucrăm 24/24.

Darius Matiesi: Noi nu avem Black Friday, dar avem și noi deadline-uri și uneori e greu. Eu fiind junior, trebuie să acumulez experiență, iar dacă e ceva training în mijlocul zilei trebuie să recuperez.

Ce tendințe vezi în zona de Big Data? Ce părere ai de virtualizare?

Darius Matiesi: Scala, DataBricks, Spark sunt în tendințe de ceva vreme. Virtualizarea, containerizarea sunt și ele de viitor. Inclusiv pe subiectul AI, consider că nu se acordă suficient timp unui proiect bun de AI. Clienții vor ca în trei săptămâni să le dai un proiect bun de AI cu setul de date existent. De multe ori nu este posibil, deoarece AI înseamnă matematică, iar pentru a înțelege matematica aceea e nevoie de mult timp pentru rezultate personalizate.

Cum vezi evoluția Flutter și a aplicațiilor UI, client-web?

Alexandra Damaschin: Cu Flutter sunt destul de stabili pe mobile, deci vor investi mai mult în web și desktop, dar tot cei de la Google au inventat Kotlin Multi-platform unde modelele și view-urile le scrii în cod Kotlin, iar apoi butonul îl scrii în Kotlin sau SwiftUI.

Cum vezi evoluția arhitecturii, a paradigmei de programare?

Gelu Vac: Paradigmele de programare sunt fixe. Mixul dintre ele diferă. Acolo apar discuțiile. De exemplu, pe un proiect am făcut printre altele o migrare de bază de date din Mongo în SQL. Nu se preta de la început. Când lucrezi cu Mongo ai nevoie de niște layere suplimentare de date. În proiectul acesta, eu am fost chemat inițial să fac audit, pentru că nimeni nu mai știa ce este acolo. S-a decis să ducem totul în SQL ca să nu stea proiectul pe loc. Revenind la tendințe, noi în România suntem consumatori de tehnologie second hand, la nivel de implementare software. Noi având outsourcing undeva la 95%, noi primim proiecte de multe ori abandonate de alții. Când folosești un limbaj de programare, este nevoie de decență. În lumea vestică, când se face release la un framework, acesta se folosește exact pentru scopul cu care a fost creat. Când acel framework ajunge în Europa de Est sau India noi vedem dacă putem să îl folosim și pentru alte scopuri. Eu fac foarte mulți bani pe seama acestui comportament și a acestor greșeli. M-aș aștepta ca în viitor să existe niște engine-uri care să îți semnaleze că un framework este folosit în scopuri pentru care nu a fost menit. Totuși, nu cred că asta se va întâmpla. Frameworkurile se creează în vest, iar noi, cei din est le consumăm. Ce trebuie să facem? Este să devenim decenți în utilizarea tehnologiei.

Dacă mâine ar fi să faci un start-up, ce ai face?

Alexandra Damaschin: Cred că aș face ceva în domeniul organizării de evenimente.

Darius Matiesi : Eu sunt pasionat de board games și aș face un site care să dea indicații în funcție de experiența jucătorului.

Gelu Vac : O idee fără implementare este zero. O implementare fără vânzare este sub zero, înseamnă că intri pe datorie. Eu mă implic în orice start-up care știe să vândă.

NUMĂRUL 149 - Development with AI

Sponsori

  • Accenture
  • BT Code Crafters
  • Accesa
  • Bosch
  • Betfair
  • MHP
  • BoatyardX
  • .msg systems
  • P3 group
  • Ing Hubs
  • Cognizant Softvision
  • Colors in projects