Programarea si banda de montaj

Autor: Mircea Sarbu Postat la 20 septembrie 2010 27 afişări

S-au facut previziuni sumbre privind viitorul programatorilor. Se spera ca se vor concepe computere capabile sa elaboreze programe sau ca vor deveni simple rotite intr-un urias angrenaj. Nimic nu s-a adeverit, iar marii programatori raman in continuare eroii vremurilor noastre.

Programarea si banda de montaj

In primele luni in care am lucrat ca programator am avut parte de un test interesant. Se punea problema lansarii unui proiect software, iar conducatorul de proiect venit de la "centru" (CTCE, pentru cine-si mai aminteste) si seful meu direct (in calitate de beneficiar) s-au retras intr-un birou si au discutat vreme de vreo doua ore cerintele pe care aplicatia trebuia sa le satisfaca. Probabil s-a ajuns la o neintelegere cu privire la termene, pentru ca seful m-a chemat, mi-a expus pe scurt problema, dupa care m-a intrebat in cat timp apreciez eu ca se poate realiza. Aplicatia imi parea simpla, mi-am facut o socoteala si am dat verdictul: o saptamana. Stupoare. Pana la urma s-a convenit la sase luni si a fost randul meu sa raman mirat.

Diferenta de estimare venea din abordare: in vreme ce eu consideram dezvoltarea de software mai degraba un mestesug, oamenii de la "centru" il considerau un soi de industrie. Adica un proces cu o metodologie stricta, cu o planificare riguroasa, cu etape care se succedau si toate celelalte detalii care ma duceau cu gandul la banda de montaj din "Timpuri noi" (Chaplin, 1936). Pentru a-mi confirma mie insumi ca n-am facut o gafa majora, am realizat in cinci zile un prototip functional pe cerintele date, dupa care am colaborat la procesul standard care, intr-adevar, a durat ceva mai mult de o jumatate de an.

Partea buna a procesului de tip industrial este ca lasa in urma lui multa documentatie si se poate realiza cu programatori mediocri, care primesc specificatii detaliate, fara sa aiba nevoie de imaginea de ansamblu. In felul acesta, oricine poate fi inlocuit oricand, de pilda pentru a ajuta la un alt proiect. Insa nici acum, dupa atatia ani si proiecte, nu stiu cine a avut dreptate. Este dezvoltarea de software un proces de tip industrial sau este un soi de mestesug high-tech? E mai rentabil sa lucrezi cu programatori foarte buni sau sa "depersonalizezi" munca?

Mi-am pus din nou aceasta problema dupa ce am regasit blogul "Joel on Software", unde aceste intrebari sunt mereu discutate. Joel Spolsky a lucrat cativa ani la Microsoft si a condus echipa care a realizat programul Excel, asadar cunoaste la modul practic cum functioneaza marea industrie de software. Cu toate acestea, cand a parasit Microsoft si a fondat firma Fog Creek Software, formula pe care a adoptat-o s-a rezumat la patru obiective, ce decurg unele din altele: sa creeze cele mai bune conditii de munca, astfel incat sa atraga cei mai buni programatori, care sa realizeze cel mai bun software, iar de aici sa vina profitul. Convingerea sa este ca programatorii foarte buni sunt cheia intregului edificiu, fiindca cinci programatori mediocri nu vor realiza niciodata (iar Joel accentueaza acest "niciodata") un soft de calitatea celui realizat de un programator foarte bun, asa cum cinci Salieri nu vor produce Recviemul lui Mozart nici daca ar lucra 100 de ani.

Comparatia ii apartine si nu este intamplator ca se refera la arta, care implica viziune, inspiratie, dar si mestesug stapanit la perfectie. Exista insa si explicatii mai pragmatice, cum ar fi "Legea lui Brooks", care spune ca adaugand mai multi programatori la un proiect intarziat nu vei obtine decat o intarziere si mai mare. Evident, un singur proiectant cu mare productivitate nu va avea problemele de coordonare si de comunicare pe care le are o echipa, mai ales cand se adauga oameni noi. Pana la urma, Joel considera ca programatorul bun este mai degraba un designer, ceea ce aduce si putina arta in ecuatie, deci implicit si mestesug.

Daca acceptam varianta mestesugului, cum se explica faptul ca exista o industrie de software (si exista cu adevarat), in vreme ce dezvoltarea de software nu este un proces industrial? Mitul eficientei metodologiilor riguroase, de tip banda de montaj, a fost spulberat de modelul de dezvoltare practicat in multe proiecte open source ("bazarul"), care abandoneaza orice rigoare cu exceptia celei privind calitatea codului. La fel de haotice par la prima vedere noile metode de dezvoltare reunite sub numele de "programare agila", in care mai important este raspunsul rapid la schimbari decat urmarea unui plan, iar programul trebuie sa fie functional cat mai repede.

Pana la urma, cred ca am avut dreptate cand am estimat la o saptamana un proiect care avea sa dureze o jumatate de an. Daca primesti feedback foarte devreme nu risti sa dezvolti doua luni intr-o directie gresita. Este un principiu al bazarului: "Release early, release often".

Urmărește Business Magazin

Am mai scris despre:
weboscop,
Mircea Sarbu,
programatori,
viitor
/opinii/programarea-si-banda-de-montaj-7286054
7286054
comments powered by Disqus
Ambiţia mea este să conduc banca nr. 1 din România Ambiţia mea este să conduc banca nr. 1 din România

Cu o experienţă de peste 15 ani în industria bancară, Bogdan Neacşu, în prezent preşedinte - director general al CEC Bank, a povestit în cadrul celui mai recent eveniment Meet the CEO organizat de Business MAGAZIN cu ce provocări vine meseria de bancher, ce a învăţat din fiecare experienţă avută în cadrul altor instituţii bancare şi cum şi-a propus să îmbine modelul de banking tradiţional al celei mai vechi bănci din România cu transformările venite prin prisma digitalizării.

vezi continuarea
CUM VEDEȚI ZIARUL FINANCIAR PESTE 21 DE ANI?

TOTUL PENTRU BUSINESS. TOTUL ESTE BUSINESS

ZF.ro
RĂSTURNARE uriaşă de teatru de la unul dintre cei mai mari producători auto. ADIO motoare pe benzină şi diesel. A renunţat complet RĂSTURNARE uriaşă de teatru de la unul dintre cei mai mari producători auto. ADIO motoare pe benzină şi diesel. A renunţat complet
BREAKING NEWS: Metoda LEGALĂ prin care puteţi câştiga mai mulţi bani
ProMotor.ro
Este atât de UȘOR să aduci o mașină din Germania! Procedura care a convins mulți ROMÂNI Este atât de UȘOR să aduci o mașină din Germania! Procedura care a convins mulți ROMÂNI
Primele imagini cu viitorul Logan arată o mașină RADICAL schimbată. Românii sunt mândri de cum a ieșit
Senzațional: Dacia electrică există deja! Când a fost produsă, Elon Musk purta scutece
Descopera.ro
Noul Xiaomi Mi 10 Pro este mai bun decât Iphone 11 Pro la aproape toate capitolele Noul Xiaomi Mi 10 Pro este mai bun decât Iphone 11 Pro la aproape toate capitolele
Documentul PERVERS prin care Churchill şi Stalin şi-au împărţit Europa, iar ROMÂNIA a căzut pe mâna ruşilor a ieşit la iveală după 75 de ani. Ce scrie în el este pe puţin ŞOCANT
Tinerele ce SEDUCEAU soldaţii nazişti: „Era TRAGIC plângeam mereu după ACT” Ce se întâmpla după ce bărbaţii finalizau
Go4it.ro
Agenţii Hamas au „spart” telefoanele soldaţilor israelieni folosind conturi false de fete pe Facebook şi Instagram Agenţii Hamas au „spart” telefoanele soldaţilor israelieni folosind conturi false de fete pe Facebook şi Instagram
Unde găseşti cel mai ieftin iPhone 11 la ora actuală. Pe eMAG, evoMAG, Altex sau Flanco?
Telefoane de TOP la preţuri excelente. Pe care să îl alegi în 2020
Csid.ro
Portretul psihologic al unui violator: cum îl recunoaştem şi cum evităm să devenim victime Portretul psihologic al unui violator: cum îl recunoaştem şi cum evităm să devenim victime
Cum poţi ajuta o femeie care este abuzată
HOROSCOP AUGUST 2019: se anunţă noi câştiguri financiare şi multe relaţii pasagere

Preluarea fără cost a materialelor de presă (text, foto si/sau video), purtătoare de drepturi de proprietate intelectuală, este aprobată de către www.bmag.ro doar în limita a 250 de semne. Spaţiile şi URL-ul/hyperlink-ul nu sunt luate în considerare în numerotarea semnelor. Preluarea de informaţii poate fi făcută numai în acord cu termenii agreaţi şi menţionaţi in această pagină.