Dilema

In articolul asta voi vorbi despre cea mai proasta echipa de programatori din lume, desi mi se pare foarte nedrept sa nominalizez una singura, cind sint atitia imbecili care ne fac viata mai grea in fiecare zi prin faptul ca nu le trece prin cap ideea sa-si puna streangul de git.

Daca ar fi pe categorii, mi-ar fi mai usor. De exemplu cel mai prost soft facut vreodata de Microsoft este MSI, sau Windows Installer, sau cum mortii lui il mai cheama acum. Asta nici n-ar trebui sa fie un soft. Pina si hipsterii aia labagii ai lu’ Steve Jobs s-au prins ca 99.98% din programe (procent determinat stiintific) au nevoie doar sa-si puna niste fisiere intr-un director. Solutia lor pentru cei cu nevoi speciale este o voma cu mai multe bug-uri decit linii de cod si cu o interfata care l-ar face pe Sisif sa se bucure ca sint altii si mai oropsiti ca el, dar nu conteaza pentru ca nu ajungi in fundatura aia decit in 0.02% din cazuri. Microsoft Installer e fix pe dos: pretinde ca face un miliard de cacaturi care nu-s necesare nimanui (si oricum nu merg), insa nu poti pur si simplu sa pui niste fisiere intr-un director si gata. A fost nevoie de un tip special de prost care sa conceapa un sistem in care ai nevoie de installer-ul original pe disc ca sa poti sa stergi un program instalat. In plus este ridicol de incet si inevitabil se fute la un moment dat, astfel incit exista o tona de tool-uri si blog-uri dedicate aducerii lui pe calea cea dreapta. Daca Aron Pumnu’ ala ar lucra la mine in firma si ar sta sa scrie pe blog despre cautat “return value 3” prin log-uri in loc sa puna mina sa repare muia aia de soft, as incepe sa-mi pun intrebari.

Sau na, daca am vorbi doar de IDE-uri, ar cistiga detasat puroiul de Xcode. Sau daca ne-ar interesa doar soft open source, am putea alege unul la intimplare. Sau daca ne-am uita la site-uri, ar fi twitter sau failbook. Sau daca am cauta prostie concentrata in chestii mici, l-am putea mentiona pe trogloditul care s-a gindit sa sparga calculatorul din Windows 7 in “moduri”, pisa-l-as in ochii lui de muist. Dar nu, aici caut un soft care sa transcenda categoriile, granitele, spatiul si timpul. Ceva de o prostie absoluta, care sa te faca sa-ti doresti sa reaprinzi cuptoarele si sa-i trimiti la dusuri pe toti cei care au lucrat la el.

Stiu ca unii se gindesc deja la 3D Studio Max, dar nu. Ca sa intelegi proportiile ororii intruchipate in Max trebuie sa fii programator, iar eu vreau ceva care nu tine cont de caste, virste si aptitudini.

Cel mai prost soft facut vreodata este Yahoo Messenger. Este incredibil cum un cacat de program de trimis text prin retea poate sa manince atitea resurse si sa aiba atitea bug-uri. Cum pula mea sa ai nevoie de 110 MB de RAM ca sa trimiti text? Altii s-au dus pe Luna cu 4 KB, adica de 28 de mii de ori mai putin. Cum sa te blochezi ma de fiecare data cind pica conexiunea si incerci sa te reconectezi? Cum sa-ti ia atita timp sa pornesti? Cum sa te blochezi cind se stinge calculatoru’ si astfel sa nu lasi calculatoru’ sa se stinga? Cum pula mea sa umbli la setarile globale de window animations cind cineva da minimize la un geam de-al tau? Luati fratilor, sa le trimita cineva link-ul asta, poate la versiunea 11 le iese.

Da, stiu ca pe linga text mai trimite si voice si video prin retea. Mare cacat. Tot n-ai cum sa ajungi la 110 MB de RAM. Photoshop, Starcraft si versiunile mai vechi de Maya incap in mai putin. Muie.

Daca proiectul asta ar fi fost facut pe rentacoder, ar fi costat 50 de dolari, ar fi durat 2 saptamini si probabil ar fi mers mai bine. Orice indian nespalat care maninca de pe jos si bea apa in care se pisa vacile comunitare l-ar fi facut mai bine. Dar nu, Yahoo a reusit cumva sa stringa atitia prosti intr-o singura echipa, incit prostia lor reunita a devenit ceva mai mult decit suma partilor, ca Capitanu’ Planeta.

Problema e ca daca stii sa programezi, nu te intereseaza sa lucrezi la programe de chat, la twitter sau alte mui. Daca loazele care fac astea s-ar fi nascut cu 10 ani mai devreme, ar fi muncit la state de plata in FoxPro si Paradox. Sau la Canal. Din nefericire, e nevoie si de programele astea, ceea ce creeaza o dilema: cum putem face ca si proiectele de cacat sa fie facute totusi de programatori competenti? Asta ar trebui sa-i preocupe pe toti cretinii aia care se duc la conferinte despre project management, nu cum sa pui cite doi prosti la un calculator, ca la cercul de informatica cind erau mai multi boraci decit HC-uri.

Poate ar merge o chestie gen munca in folosul comunitatii. Daca esti programator si o comiti, poti sa alegi intre amenda, puscarie, luat bataie de la mascati sau ce urmeaza sa ti se intimple si contribuit la un proiect de cacat. S-ar putea face un site unde proiectele de cacat isi prezinta nevoile si tu ti-ai alege. Evident, asta n-ar rezolva toate problemele, ca orice om intreg la cap ar prefera sa faca puscarie in aripa de violatori necrofili fani Mac decit sa incerce sa repare ceva in Max, dar rau n-are cum sa fie. Eu de exemplu as face un program de chat daca mi-ar da mai repede carnetu’ inapoi.

Tags: , , , , , , , , , , , , , ,

13 Responses to “Dilema”

  1. Mircea Says:

    Problema e ca vezi lucrurile foarte static. De ex: YM nu a fost intotdeauna un soft de rahat. Cu cat au bagat mai multe in el, cu atat a devenit mai instabil si mai penal. Si asta se intampla invariabil cu toate softurile unde nu exista o minte clara care sa isi puna o intrebare simpla: ce conteaza cu adevarat pt utilizatori? care sunt chestiile care ii fac sa imi foloseasca produsul? In momentul in care uiti asta si fiecare “feature” pe care il adaugi e ca sa bifezi o casutza pe un check list se duce naibii totul.
    Plus problema scalabilitatii. Una e sa scrii “un program de chat” pentru 10-100 de useri si alta e sa il scrii pentru milioane de useri.

  2. Radu Says:

    lista mea ar fi: Quicktime-ul pe primul loc (in special versiunea pe windows.. care da “illegal non stop”), apoi pe locul 0 Xcodeul (are un loc special de nedefinit alaturi de sistemul minunat de provisioning si featureul de corupt fisiere si booleana Yes/No .. si Apple, Itunes, Ipod, Iphone ) … macar pentru yahoo messenger exista alternative… probabil ca daca era scris de mai putini oameni iesea mai bine.
    In alta ordine de idei exista si programe simplute care imi fac viata mai usoara spre exemplu “Launchy” sau “WinMerge”.. Cred ca sunt si programatori buni care lucreaza la proiecte mici. (desi nu stiu daca WinMerge-ul e chiar un proiect mic).
    Ideea cu carnetul ar trebui propusa.. mi se pare buna :))

  3. Mihnea Says:

    Mircea, nu vad lucrurile static. Yahoo este in momentul de fata o atrocitate din punct de vedere tehnic si nu ma intereseaza cum a ajuns asa. Mai mult, e asa de foarte multa vreme, deci e destul de irelevant ca acum 9 versiuni era mai OK. Si nu e o problema de scalabilitate. Sa injectezi dll-uri in toate aplicatiile ca sa vezi cind e user-ul idle ca asa a scris un indian analfabet pe codeguru nu are nici o legatura cu numarul de utilizatori (vad ca ultima versiune nu mai face asta si ma mir foarte). Sa crapi cind incerci sa restabilesti conexiunea nu are nici aia vreo legatura. Sa umbli la setarile window manager-ului pentru animatii pentru ca iti plac rapirile din serai si ferestrele care se precipita inspre task bar n-are legatura cu scalabilitatea. Sa halesti 100 de megi de ram n-ar fi justificat nici daca ai vorbi cu toate milioanele alea de useri de-odata.

    Nu e vorba ca a venit marketingu’ si a cerut feature-uri idioate. E vorba ca feature-urile alea au fost implementare de idioti. Si nu orice fel de idioti, unii care au nevoie de 100 de megi de ram pentru asta. Oameni care nu stiu sa programeze.

    Radu, n-am zis ca nu sint programatori buni care lucreaza la proiecte mici. Am zis ca nu prea se gasesc programatori buni care sa lucreze la proiecte de cacat. Proiectele mici nu-s neaparat de cacat.

  4. soferu de pe emacs Says:

    Deci te vad frustat rau de tot din cauza YM, MSI, probabil Win7
    Tu esti fan Win deci nu-mi fac probleme. O sa treci cu usurinta peste toate astea, ca doar n-o sa stai tu sa scrii Makefile-uri in vi
    Apropo, ti-au luat carnetul ? Ai trecut cu motorul pe rosu ?

  5. teddy Says:

    prin 2007 am descoperit pidgin (la vremea aia se numea gaim dar au fost prostii de la AOL sa se autosesizeze ca le lezeaza licentele si proprietatea intelectuala) … oricum de atunci nu am mai folosit niciodata yahoo messenger varianta desktop … de la munca pt ca nu prea e voie cu messenger mai intru pe webmessenger.yahoo.com desi meebo e o varianta demna de luat in calcul …

    insa pt desktop NU se merita yahoo messenger … de la varianta 8 nu a mai fost utilizabil in limite rezonabile …

    si apropo … pt cine vrea sa faca spume si mai mari sa va uitati cat consuma alte 2 softuri “inteligente” … care in clasamentul meu ocupa si ele locuri fruntase….

    1. Adobe Reader – o scula de soft care a ajuns si la cate 200 MB de RAM macat cand PDF-ul e cu semnatura digitala. poze si mai permite si alte porcarii gen copy-paste … statul roman il baga insa pe gat la greu si niciun formular de tip PDF nu merge fara el in birocratia romaneasca … exista o alternativa gen Foxit Reader de 4-5 MB care nu necesita instalare ci doar o dezarhivare si atata tot … oricum cireasa de pe tort la Adobe este ca desi debifezi la preferinte updateul pe ei ii doare-n … basca de preferinta ta si la restartul calculatorului tot te trezesti ca porneste in fundal updateul fara ca tu sa ai ceva de zis in prinvinta asta … doar constati ca iti merge conexiunea mai slab si injuri aiurea ISP-ul crezand ca e de la el …

    2. Winamp … cel mai mare bloatware al ultimului cincinal … e incarcat cu tone de pluginuri si mananca mai mult RAM ca un joc full 3D uneori … ce pana mea o fi asa mare smecherie sa asculti niste muzica nu stiu … astuia din pacate nu i-am gasit niciun inlocuitor capabil … playerul de la Sonique nu se mai face de ani buni si nici nu stie sa redea multe tipuri de melodii encodate in mai multe fitze decat librarii de sunet…

  6. jos8cal Says:

    Adobe Reader a deprins abilitati artistice si de supravietuire intre timp. Utilizatorul din 2010 doreste entertainment cind deschide un pdf. Doreste mai mult decit un citit de text. Doreste o experienta de viata, un imbold nebunesc in necunoscut, o sansa la mai bine.

    In pula mea, stie sa interpreteze textul cu voce de barbati sau de femei de parca lumea care foloseste Reader-ul e compusa dintr-un procent mai mare de 50% din chiori. De ce cacat nu vine ca un addon separat pe care chiorii sa-l downloadeze?

    Mai are suport si pentru geospatial shit de parca toata lumea a intrat in Pirate Mode si isi imparte harti pe care apoi sa le masoare si sa scrie pe harta: “I was here”. De ce nu este cicatul asta un addon separat?

    De Winamp nu mai zic, ultima data cind l-am pus dorea sa-mi instaleze un joc si sa-l lase gravid pe IE cu un toolbar. Bine, mai nou IE este curva tuturor. Majoritatea installerelor doresc sa faca sex viteza cu el si sa-l lase greu. A ajuns ca o banca d`aia de lemn pe care scriu toti filosofii cu briceagu. La fel, MUIE la Agentul Winamp care se pune automat pe facut treaba in traybar.

    Ar mai fi BSPlayer si Netlimiter. Doi candidati cu potential maxim in a ajunge sisteme de operare intr-un final. Orice om de pe planeta asta doreste sa faca click pe un film si sa-l vada. Si GATA in pula mea. De ce e nevoie sa am geamuri skinate in care nu mai stiu care e buton si care e label? De ce am un organizer pe albume/titluri/nume/mui in cur PENTRU FILME? Cine pula mea isi face playlist la filme? Cine cicat se uita la filme fara pauza intre ele? 100 metri filme? De ce mai tine lumea filme (ca mai apoi sa le organizeze) cind ele sint pe net si le dai jos in 10 minute? De ce in loc sa faca skinuri nu stie sa vine cu codecuri ca amicul sau VLC si sa mearga din prima cind dai click pe un film?

    Si NetLimiter. Initial impaciuitor de banda de net, azi firewall, client de mail, hot de cai si poet. In pula mea, daca facea doar ce sugereaza numele, ce era?

  7. zeltera Says:

    Sunt multe aplicatii facute de persoane nontehnice – de manageri. Acesti manageri isi formuleaza cererile in functie de analizele lor de piata. Daca in lume 90% dintre utilizatorii de YM vor animatie si floricele pe ecran, atunci asta or sa ceara. Nu am zis ca programatorii nu ar fi putut gasi solutii mai elegante de implementat aceste cereri, insa uneori poate fi dificil sa realizezi anumite cerinte, mai ales daca ele se schimba o data la 2 saptamani.

    Eu am lucrat – si uneori mai lucrez – cu clienti care schimba datele problemei la 2 saptamani, si care, uneori, vor maine implementat ceva ce ar lua 2 saptamani. Asa se poate ajunge la softuri care nu fac nimic insa au nevoie de 100Mb si blocheaza calculatorul cand pornesc. Pe undeva vina e impartita: managerul prost plus programatorul sictirit de miile de schimbari, manager prost plus programator prost etc.

    Ca sa inchei: topul cele mai proaste (ineficiente) aplicatii in varianta mea: YM, winamp, media player.

  8. Liviu Lalescu Says:

    Interesant blogul acesta. Mi-a placut cautarea in map de la begin la end :-)

    Nu sunt de acord ca daca vrei o aplicatie proasta open source, sa alegi una la intamplare. Eu lucrez pe GNU/Linux de vreo 7 ani si dupa parerea mea e mult mai bun ca Windows. Folosesc aplicatii libere precum: mc (Midnight Commander, rapid si stabil), Xmms (Winamp simplu), XChat2 (IRC), Pidgin (Yahoo Messenger fara voce si video), Firefox, KMail, KDiff3 (vizualizare diferente intre fisiere), gcc (GNU Compiler Collection), Qt (GUI, gen MFC), K3b (gen Nero). De asemenea, sunt si autor de free software si nu merge chiar asa prost softul facut de mine.

    Windows: de exemplu, azi am avut nevoie sa intru un pic pe Windows 7 (dupa o luna de GNU/Linux only). Si-a facut niste update-uri si mi-a aparut o fereastra ca va restarta in 15 minute (ma rog, pot sa fac postpone, dar trebuie sa apas asta). Acum, eu las calculatorul sa faca anumite simulari pentru toata noaptea. As fi pierdut tot timpul cu un restart de Windows.

  9. Mihnea Says:

    Blog-ul asta e pentru facut misto (ca sa nu zic pamflet, ca sa nu zic ca sa nu zic ca Ec. Fulga Marian), deci rigurozitatea limbajului nu-i tocmai pe primul loc. Sigur ca exista aplicatii open source bune, dar exista si foarte multe proaste, deci daca alegi una la intimplare ai sanse sa dai peste un dezastru neterminat cu prea mult sau prea putin UI, facut de cineva pentru ca a avut nevoie, nu neaparat pentru ca se pricepe la domeniul in care s-a bagat, si abandonat la scurt timp dupa incepere. Asta era sensul, dar nu era amuzant daca scriam asta si intirziam defularea principala din post la adresa lui YM. In plus, jignirile gratuite scapate din cind in cind constutie o manevra stilistica de mare efect in comedie, motiv pentru care probabil ca nu mi-a iesit mie.

    Totusi, o pagina pe internet nu are nici o valoare pina nu contine un flame despre Windows vs. Linux, asa ca ma simt obligat sa-mi etalez pozitia ferma si intemeiata in aceasta problema, mentionind pentru inceput ca ma stiu cu pinguinu’ de cind eram amindoi copii si ne jucam cu kernelu’ 2.0 in spatele blocului lu’ Slackware. In adolescenta am sperat si eu ca mi-am gasit un partener de viata zoofila si ca impreuna vom infringe imperiul malefic al FUD-ului si BSOD-urilor, dar anii au trecut si promisiunile s-au frint.

    Eu sint de parere ca Linux nu se poate utiliza deloc daca nu esti programator si ca daca esti programator, n-ai de ce sa vrei sa-l utilizezi. De fiecare data cind ma apropii de el, ceva nu merge si trebuie sa ma uit in sursele de la vreo chestie ca sa aflu de ce: kernel, KDE, samba, cups, scripturi de init, IDE-ul zilei, iproute2, apt-get etc. Pe vremuri mi se parea misto chestia asta (si mai ales mi se parea leet ca puteam s-o fac, spre diferenta de persoanele din jur), dar intre timp am decis ca imi plac lucrurile simple care merg. Aia care spun ca Linux si OpenGL sint misto pentru ca-ti ofera un challenge sint niste hippioti redusi si macabri care a) traiesc din banii parintilor si b) n-au inteles ce-i ala un challenge.

    Luind cazul concret al update-urilor (caci daca am lua cazul concret al lui KDE mi-as petrece urmatoarea saptamina scriind), nu mi s-a intimplat niciodata ca Windows update sa-mi distruga sistemul. E adevarat ca mai doreste el cite un restart ocazional, dar toate distro-urile de Linux de azi fac exact acelasi lucru cind le pocneste cite un update de securitate la kernel, glibc sau alta componenta de baza. Apare triunghiu’ rosu in tray si iti spune ca daca nu restartezi o sa mori de SIDA. In schimb, in ultimii 2 ani, un Debian care ruleaza pe un server la birou a reusit prin update-uri sa-mi stearga un wiki, sa-mi stearga viewvc, sa strice cups-ul, sa faca serverul de IMAP sa trimita clientilor mesaje criptice despre biblioteci lipsa, sa upgradeze kernel-ul de mai multe ori fara sa reinstaleze lilo-ul dupa si alte citeva minunatii. Si asta, repet, pe un server cu citeva servicii folosite intern, nu pe un sistem desktop cu mult mai multe chestii. Cum ar fi Suse-ul de acasa, care a vrut sa-si faca upgrade la intreaga distributie pentru ca in 2009 au descoperit si ei in sfirsit driverele de X-Fi, si care s-a futut cu aceasta ocazie pentru ca lipsea un icon dintr-un pachet de la KDE, deci s-a oprit upgrade-ul la jumate si asa a ramas. Sau Ubuntu de pe desktop-ul de la birou, caruia dupa citeva update-uri i s-a stricat applet-ul ala de update din KDE, si acum zice tot timpul ca are update-uri, dar crapa daca-i zici sa le faca (asta printre multe alte lucruri pe care le face, dar nu vreau sa intru in detalii).

    As putea sa perorez kilometri de text despre ergonomia unui Linux folosit pe desktop, sau despre tool-urile pe care le pune dinsul la dispozitia programatorilor (ca tot e autobaza cu programatori aici). N-o s-o fac, pentru e greu sa demonstrezi teoretic cit de nasol e, in timp ce practic e banal sa-i pui cuiva Visual Studio si Total Commander in fata, sa-i arati cum se folosesc si sa descopere ce bine e sa faci chestii apasind o singura tasta, nu facind human centipede din find, cat, xargs, cut, sed, grep, awk si perl. Evident, cineva ala trebuie sa fie cooperant, ca unii vor spune ca ei “se descurca” si cu vi si make.

    Unii trag concluzia ca daca ma oftica Linux ca desktop sau mediu de programare, am ceva cu open source-ul ca concept. Dimpotriva, folosesc si eu soft open source ca tot omu’ si ma bucur de el, ba am si incercat sa contribui la miscarea asta neocomunista. Din pacate insa multi freetarzi imprumuta si alte idei din comunism, cum ar fi aia ca orice face Partidul e bun, si daca critici o particica, critici si destabilizezi Intregul. Dar despre rsandu intr-un post viitor.

  10. Mario Says:

    1st am aceeasi impresie ca Mircea.
    Remarc o anumita inchistare a autorului articolului doar spre lumea programatorilor. Probabil, a interactionat rar cu adevaratii clienti a.i. sa le ia pulsul si sa vada ce ii incanta.

    Nu stiu cum ai putut tu sa obtii 110MB dar la mine lucrurile stau cu totul altfel. Intr-adevar, probabil era insarcinat. :))
    La mine,Pidgin-ul manca 28MB iar YMsg 10.0 surize: doar 25MB. Ca sa nu mai punem la socoteala ca YMsg aduce bani lu’ Yahoo din reclame in flash (spre deosebire de Pidgin).

  11. Mihnea Says:

    Alo, site-ul se cheama standupprogramming. De acolo vine “inchistarea spre lumea programatorilor”. E un site despre programatori. Am mai avut profileri d-astia p-aci care fac presupuneri despre originea f(r)ustrarii si interactiunea cu clientii si a rezultat plictiseala. Nu mai poate omu’ sa faca misto de o prostie evidenta ca se gasesc Luceferii Corectitudinii sa analizeze etica si rigurozitatea misto-ului.

    Sa mor daca pricep totusi care-i legatura intre ce-i incinta pe clienti si priceperea programatorilor. Daca stii sa programezi, faci cacaturile care-i umecteaza pe clienti fara sa ocupi sute de megi de ram. Modul groaznic in care haleste Yahoo resurse nu e datorat managerilor si clientilor care au cerut nu stiu ce. E datorat prostiei colosale a programatorilor care au implementat chestiile alea.

    Uite asa l-am facut sa haleasca 110 MB de RAM. L-am instalat si l-am pornit. Asa face pe toate calculatoarele si Windows-urile pe care l-am incercat.

  12. siEu Says:

    =))

    Da, ar fi interesant un articol despre discutiile pro si contra open source si despre zelotii din cele doua tabere. E plin netul de ei

  13. Smith Says:

    Și eu am avut o problemă YM într-o vreme (pe care și acuma’ o am http://bit.ly/ieR6tD ). Am tot căutat alte programe cu care să-l înlocuiesc dar dijaba. Miranda im mi s-a părut un client destul de bun dar avea și el problemele lui (printre care și un nume ciudat de țigancă).

Leave a Reply

Optionally add an image (JPEG only)