Sa ma fut in politete

retard-baby2Cum pula mea s-a ajuns sa fie mai important sa fii politicos decit sa stii despre ce vorbesti?

Este o chestie pe care o tot vad pe forumuri, liste de discutii etc. Sa-i spunem sindromul Marius Bancila. Vine un prost – sa-i spunem Silviu Ardelean – si emite o timpenie. Ii arati ca-i prost si-l rogi sa nu mai posteze imbecilitati. Apare un moderator – sa-i spunem tot Marius Bancila, ca sa rimeze cu sindromul – si te avertizeaza sa nu-i mai spui lui Silviu Ardelean sa-si tina gura, ca nu-i frumos. CUM SLOBOZ BA? In loc sa-i spuna Silviului ca e inacceptabil sa vorbesti timpenii (sau sa-l baneze direct), Mariusul e preocupat de mentinerea atmosferei de voie buna si cooperare tovaraseasca. Ca si retardatii e oameni, si are si ei inteligenta lor emotionala, nu?

Da, stiu. Daca iti antagonizezi interlocutorul, comunicarea se duce pulii, asa ca daca vrei sa fii constructiv trebuie s-o iei cu frumosul. Problema cu aceasta regula de cacat este ca presupune existenta unui interlocutor. Eu nu vorbeam de cazurile in care cineva greseste pur si simplu si il corectezi, ci de situatiile in care e implicat un Silviu, unde e evident de la inceput ca n-ai cu cine sa discuti. Presupusul interlocutor e atit de prost incit nu numai ca nu poate, dar nici nu vrea sa inteleaga argumentele pe care le aduci. In mod normal, Mariusul ar trebui sa-i stearga aberatiile. Daca n-o face, ceilalti participanti la discutie au obligatia morala de a face misto de retardat, pentru a se asigura ca viitorii cititori ai thread-ului nu sint indusi in eroare. Eu asa vad lucrurile.

Dar sa lasam numele generice si sa trecem la un exemplu practic. Un domn de la Valve a propus ca VC++ sa dea warning-uri cind dai parametri aiurea la functii care accepta format string-uri, asa cum fac deja diverse alte compilatoare. VC++ da si el warning-uri d-astea, dar doar cind ii dai cu /analyze, ceea ce dureaza inacceptabil de mult IRL. Validarea asta nu e costisitoare (dupa cum ne dicteaza atit bunul simt, cit si faptul ca nu incetineste semnificativ compilarea acolo unde e implementata deja), deci ar putea fi mutata din analizorul static in compilator.

In acest moment se amesteca in discutie Silviul de serviciu, cu numele de scena UnitUniverse, care nu vrea ca compilatorul sa faca “special process” pentru printf, care e o functie ordinara. Fiind foarte prost, el este de parere ca problema reala sta in faptul ca printf foloseste “extractie binara” si “masti binare” pentru a extrage parametrii, deci compilatorul n-are ce face. Ca si Silviul real, este preocupat de noile cuceriri ale tehnicii in materie de generat code bloat si incetinit compilatorul, asa ca face si el o Propunere: sa inlocuim printf cu template-uri variadice (sigur, nu inainte de a inlocui enumurile cu vectori).

Imboldit iar de spiritul civic, am considerat ca-i datoria mea sa-i spun boului ca nu e vorba de printf, ci de un mecanism pentru marcat format string-urile ca sa le poata verifica compilatorul. Care mecanism exista deja in VC++ sub forma macro-ului _Printf_format_string_. Ce a inteles retardatul (care stapineste limba lui Shakespeares la fel de bine ca omologul sau din Valea Jiului):

Yes, providen switchers to enable the detecting is an considerable idea. But, as i written previously, the printf extracting tail arguments with binary cutters, I’m doubt if they could implement such kind of checking mechanism.

I-au zis doi oameni ca e facut. I-am zis si cum e facut si i-am dat si link la cum fac alte compilatoare. De aici, el a concluzionat ca nu se poate face din cauza “taietoarelor binare”. In pula mea.

I-am raspuns ca nu stiu ce-s alea binary cutters si ca-s convins ca nici el nu stie, dar ca indiferent de ce crede el, mecanismul exista deja si trebuie doar mutat din analizor in compilator. De asemenea i-am recomandat sa nu-si mai dea cu parerea in probleme pe care nu le stapineste. Nu i-am zis sa nu-si mai dea IN PULA MEA cu parerea. I-am zis fara mui si puli. Rezultatul a fost ca s-a autosesizat Mariusul local si mi-a sters comentariul.

Lasind la o parte faptul ca-i urez cancer militianului care a facut asta, doresc sa insist un pic asupra unui model de comportament (ca nu pot sa-i spun gindire) ce este des intilnit printre Silvii. Cum ajunge imbecilul sa deduca cu mintea lui ca nu se poate face, dupa ce i-am aratat cum e facut, si i-am dat si link-uri?

Raspunsul e simplu si nesurprinzator: prostia. Silviul porneste cu o Opinie. Desi undeva adinc in fiinta lui licare ideea ca de fapt nu prea stie despre ce e vorba, odata ce-si formeaza si exprima Opinia, vocea interioara este sugrumata si Silviul se lanseaza cu toata forta intru sustinerea Opiniei. Nu conteaza daca ii dai argumente, link-uri sau bucati de cod pe care le-ar putea baga intr-un compilator ca sa verifice ca-i prost. Cind parcurge raspunsul tau, Silviul sare pur si simplu peste partile pe care nu le intelege. Nu le vede. Este un mecanism de aparare: faptul ca nu intelege ceva ar insemna ca e prost. El nu vrea sa fie prost, asa ca lucrurile pe care nu le pricepe trebuie sa fie irelevante. De la irelevant la inexistent este un pas foarte mic, pe care intelectul sau de batracian cu trisomie il face fara ezitare.

Pentru a vedea cum percepe un Silviu o discutie, iti poti sterge toate argumentele. Textul ramas pare o simpla Opinie. Aha! Silviul are si el o Opinie. De ce ar fi Opinia ta mai buna decit Opinia lui?

Revenind: e OK ca intr-o discutie despre compilatoare pe MSDN sa spui ca printf foloseste taietoare binare pentru extras argumente, dar nu e OK sa ii recomanzi unui bou sa nu vorbeasca despre lucruri pe care nu le intelege. Idiocracy.

PS: tag-urile pentru acest post s-au scris practic singure. Le-am luat direct de la ultimul post de pe blogul de atitudine al minerului.

PPS (adica post-post-scriptum, Ovidiu): in curind e ziua de nastere a minerului si i-am pregatit o surpriza.

EDIT: multumim Pintea:

yPuhX91

Tags: , , , , , , , , ,

16 Responses to “Sa ma fut in politete”

  1. thefatredguy Says:

    Mi se pare mie sau Visual C++ ramane tot mai in spate fata de GCC si clang ? N-au timp sa implementeze ISO C++11, in schimb si-au gasit timp sa mai scoata o abominatie (C++/CX) care probabil va ajunge acolo unde este si C++/CLI (adica nicaieri).

  2. Pintea Says:

    http://i.imgur.com/yPuhX91.jpg

    PS: pls un meme template image cu Silviu Ardelean.

  3. RRR Says:

    Mihnea, care era nick-ul cu care postai pe codexpert, de se dădea cucu cu cucul de pământ că te pitești în spatele nick-ului ca un laș ce te afli, deși toată lumea știa cum te cheamă, mai puțin ei?
    Nu mi-l amintesc nici mort.

  4. Mihnea Says:

    Pintea: template cu Silviu este o idee buna. In curind va putea deveni realitate multumita unei initiative pe care ne chinuim s-o initiem, doar ca se tot auto-initiaza Realitatea intr-un mod total neconstructiv. Stay tuned.

    RRR: cind postam “oficial” ma chema Dark. Dupa ce m-au banat, m-a chemat in multe feluri, dar nu-mi mai aduc aminte decit ce a ramas in password manager la chrome: scutieriiprogramatori, ispywithmylittleeye, Knuth si betiv masochist.

  5. RRR Says:

    Așa, mă, Dark!

    Acum, ca să fiu pe subiect, ratatul ăla care ți-a tăiat comentariul era 100% neprogramator. E vreun bot ca orice bot plătit să scaneze cuvinte și fraze care trec de dicționarele cu cuvinte urâte ale lui Microsoft ( cum ar fi dicționarul ăsta: http://goo.gl/SulUbC ).
    De unde căcat să știe el că “binary cutters” nu înseamnă nimic?!
    Asta e… dai bani, ai moderatori; nu dai, ai boți.

  6. Vic Says:

    @silviu: Cand citesti comentariile de pe aici, te rog frumos sa faci un tutorial despre taietoarele astea binare – eventual poate elucidezi si misterul functiilor cu numar variabil de argumente. Ba chiar asta cred ca ar fi o intrebare numa buna de filtrat plebeii la un interviu, nu crezi?

    Shake-the-spear translation: When you get around to reading these comments, please write a tutorial about these binary cutters – maybe you could also reveal the pixie-dust behind variable arguments functions. This would make a great interview question for filtering out the plebs, don’t you think so?

  7. Snob Says:

    Felicitarile au fost in privat? Ca a cam trecut ziua lui, s-a spart si cheful…

  8. :)) Says:

    :))

  9. cosminu Says:

    Ce-mi place de voi cum vorbiti ca niste oameni mari :)
    Ca si cand programarea asta e chiar chintesenta existentei umane :)

    Sugi pula Mihnea! N-am un motiv anume sa-ti spun asta. Sau poate am – mai multe chiar.
    Dar o zic mai ales pentru ca simt ca asa putem comunica mai bine. Plus ca n-am mai zis asta de ani buni. Pur si simplu nu am gasit destinatarul potrivit.

  10. Mihnea Says:

    Ce-mi place cind vine cite un retardat si comenteaza o imbecilitate la un articol despre retardarea celor care comenteaza imbecilitati.

    Te superi daca-ti spun Silviu? Sugi pula Silviule!

  11. cosminu Says:

    ma sconfuzi, muistule. pe mine m-a deranjat usurinta cu care urezi cancer in stanga si-n dreapta. si nu, nu sunt nici ala care ti-a sters postul.
    dar e tare blogul tau. se pare ca ai o relatie personala cu silviu.

  12. cosminu Says:

    ah, si-mi cer scuze daca ti-am lasat impresia de “retard”. incerc sa vorbesc pe limba ta si nu am prea multa experienta cu vocabularul asta. se prea poate ca ceea ce spui tu sa fie adevarat/relevant/interesant iar eu sa nu inteleg, cum spuneam, din cauza vocabularului.
    dar ma retrag. nu observasem ca e “autobaza”…

  13. Mihnea Says:

    Nu te confund, te etichetez. Nu cred ca esti Silviu Ardelean, dar cred ca esti un Silviu. Sau ma rog, un silviu, ca prin aceste parti a devenit substantiv comun.

    Nu mi-ai lasat impresia de retardare prin forma mesajului tau, ci prin continutul sau, asa ca pseudoscuzele nu functioneaza. Dar daca ti se pare ca exista o chintesenta a umanitatii, si ca stii care e (sau ca stii care NU e, tot aia), poti sa incerci sa-mi explici pe limba ta, aia in care nu urezi felatie nimanui cu anii. Locul asta chiar avea nevoie de un suflu moralizator de la un supravietuitor de cancer (ceea ce sper ca esti, altfel nu inteleg oripilarea fata de urarile mele).

  14. Françoise Dolto Says:

    tot nu inteleg mihnirea ta.
    banuiesc ca tot ce-ti doresti e atentie. atentia pe care nu ai primit-o in copilarie. imi pare rau de tine.

  15. Mihnea Says:

    Stiu ca nu intelegi. Nu stiu de ce ai simtit nevoia sa vii aici si sa ne spui noua. Stiu ca lumea e plina de prosti, nu-i nevoie sa vina fiecare si sa recunoasca in fata poporului conditia sa.

    Mi se pare un pic jignitor insa ca imi desconsideri abilitatea de a intelege ca esti prost. Ma prinsesem si inainte sa faci pe psihologul online. Stiu ca pentru voi (prostii), chestia asta e un fel de semnatura, dar crede-ma, te identificasem si fara ea. Nici macar nu ai urmat canonul. Credeam ca “frustrat” (sau ma rog, “fustrat” cum zice dumnezeul vostru) este o parte obligatorie din secret handshake. Sint dezamagit ca nu l-ai folosit.

    In orice caz, iti urez sa-ti revina cancerul.

    PS: sper ca nu te superi ca ti-am schimbat numele in ceva mai potrivit inclinatiilor tale.

  16. fanmihn Says:

    {
    Mihnea, o stii pe Foka? bai,
    nimic si…da-i in #%$% de ortaci ca esti singurul la care-i zic “ba, iti meriti pulele!”
    fii mandru! :) in pula mea
    }

Leave a Reply

Optionally add an image (JPEG only)