Incep cu poza de final:

Pe 22-23 Mai 2009 s-a tinut conferinta eLiberatica. Conferinta a avut tenta enterprise/bussiness si s-au prezentat beneficiile programelor open-source in noul context economic. Eu am ajutat la organizare, prin Ceata, si mi-am petrecut majoritatea timpului in camera de Open Agile – in total erau 3 camere, din care una principala si una de metodologii software.
Din punctul meu de vedere, lucrurile au fost ok; am fost doar la cateva prezentari din camera de baza a conferintei. Au fost persoane tehnice care, pe buna dreptate, erau nemultumite de continutul prezentarilor si vroiau sa vada un cod/ceva tehnic. Sloganul conferintei a fost: “Open Source in an Economic Downturn.” si m-a dus cu gandul la promovare de produse, nu la productie. Cea mai tehnica prezentare non-Agile (din afara camerei de Agile) a fost tinuta de un reprezentant Sun, venit din Grecia. In urma prezentarii m-am ales cu un tricou
) – s-au pus intrebari de genul: Sun products are: best, good looking, low power consuption, all of above; dpdv tehnic s-a prezentat posibilitatea de cache-ing intre memorie si hdd prin adaugarea de flash-uri – ideea nu mi s-a parut tocmai geniala, avand in vedere ca bottleneck-ul dintre procesor si memorie s-a redus cu ajutorul cache-urilor L1, L2, L3. Din pacate, doar atat; ma asteptam la mai mult din partea Sun, dar n-a fost sa fie; se simte faptul ca au fost cumparati de Oracle. Aveau stand dedicat care a fost gol pe toata durata conferintei.
Mi-a placut foarte mult camera Open Agile. Pe scurt, s-au prezentat metodologii de dezvoltare software bazate pe Agile Development.
Totusi, au fost cateva mici scapari: s-a ridicat in slavi metodologia si nu s-a spus nimic de calitatea programatorului. Dupa parerea mea, degeaba ai management si metodologii super tari daca nu ai oameni tehnici foarte buni; evident, lucru e valabil si invers: un om tehnic foarte bun fara o infrastructura solida se va irosi. Ideile agile-ului. asa cum am inteles eu, sunt: iteratii scurte care au ca rezultat un produs functional, feedback rapid din parte clientilor/utilizatorilor din care deduci clar ce trebuie schimbat intr-un stagiu incipient.
Cel mai important castig din aceasta conferinta il reprezinta ideile pe care le-am vazut la Open Agile. Este metoda de dezvoltare care se mapeaza cel mai bine peste ce vreau sa fac in viitor: sa lucrez la proiecte noi si challenging; nu vreau sa fac mentenanta si bug fixing – lucruri specifice proiectelor foarte mari.
Eu nu stiam o metodologie de dezvoltare a programelor. La internship-ul de vara trecuta se programa dupa ureche; nu e de mirare ca am vazut la Open Agile manageri de la Freescale. La scoala, ce sa zic…programez astfel incat sa tema sa treaca testele de calitate(daca e cazul)…dureaza prea mult sa-mi fac o arhitectura si/sau sa scriu codul misto; de metodologii nici nu se pune problema – temele nu sunt atat de complicate incat e nevoie de release la 2 saptamani, de fapt e deadline si dezavantajul e ca nu mai poti schimba nimic in codul temei – de fapt poti, dar nu va mai conta la nota pe care o vei primi.
Pe scurt, am stat majoritatea timpului la Open Agile si am invatat despre metodologii de dezvoltare a programelor, in particular agile development, extreme programming, pair programming, test driven development, feature driven development si altele. Lucrurile acestea se preteaza pe proiectele de dimensiune mica/medie cu o echipa omogena si locala; si nu prea se invata la scoala
.