A treia corectura

Gata. Third time’s a charm, and “staff”. “unsigned long” s-a facut “long long” in codul minerului. Tineti minte: asta a fost ideea lui de la inceput, doar a zis si-n comentariu (pe care l-a si editat, ca nu i-a placut cum zisese “unsigned”). In nici un caz n-a facut modificarile astea pentru ca i-am aratat noi ca e prost. De fapt, ce modificari? Asa a fost codul de la inceput.

In momentul de fata, sentimentele mele fata de miner sint amestecate. Pe de-o parte, sint surprins si dezamagit ca dupa atitea mui pe care si le-a luat aici, inca mai scrie pe blog-ul ala. Incapatinarea lui este fenomenala, chiar si pentru un cretin ca el care crede ca poseda “inteligenta emotionala”. Ar putea macar sa verifice banalitatile pe care le posteaza, dar cred ca-i atit de incompetent ca nu-si da seama cum.

Pe de alta parte, sint satisfacut. Desi si-a editat toate timpeniile avind grija sa nu lase urme sau atribuind corecturile diversilor “Sorini” pe care i-a gasit prin preajma, el stie cine i-a zis, si eu stiu. Chiar si dupa ce gogoritele vor disparea din cache-ul lui Google, chiar si cind va pretinde pe blog-ul de atitudine ca noi mintim aici, chiar si cind va cenzura asiduu adresa acestui blog din screenshot-urile sale, chiar si dupa ce toata lumea va trece mai departe, noi doi – el si cu mine – vom sti cum a fost de fapt. Haterii au avut dreptate iar el a recunoscut asta fata de el si fata de noi scriind pina la urma codul dupa dictare. Toata “inteligenta emotionala” si pseudopsihologia din lume nu vor putea schimba adevarul asta pe care noi il impartasim, si asta e tot ce conteaza. Cind el va privi in ochii mei si eu voi scuipa intre ai lui, vom sti.

Tags: , , , , , ,

41 Responses to “A treia corectura”

  1. bullshit Says:

    Cum am zis: still wrong. _wstat64 se asteapta la “wchar_t *”. El insa are TCHAR * pentru szFilePath, care in mod ANSI o sa fie “char *”. Fail. Urmatorul hint: w -> t in _wstat64.

  2. Mihnea Says:

    N-ai inteles. Codul lui e “UNICODE ready”. Daca tu nu esti si te dai cu prostii d-astea ANSI, e problema ta, da? TCHAR ala de acolo e pus tocmai ca sa-i prinda p-astia care umbla cu ANSI-ul vopsit.

    PS: micile probleme legate de character set-uri sint o prezenta uzuala in activitatea lui.

  3. statu Says:

    Yep, vrem a patra nesfanta corectura: _tstat64(), in loc de _wstat64(). Altfel compilatorul de C (nu si C++) da warning, dar compileaza. wstat asteapta doi octeti de zero si cam poa’ sa crape.

  4. Marius Says:

    Hai Silviu, hai că poți!

  5. Mihnea Says:

    Stati ba usor ca e si el un umil blogaras, nu poate sa fie in mai multe locuri de-odata. Acum tocmai a respins un atac mirsav pe blog din partea unui element destabilizator care il intreba ce-i cu unsigned long ala din comment. Se face si a patra corectura, da’ aveti rabdare, ce dracu’. Daca te imparti asa in mai multe locuri fara sa ai grija, se surpa galeria, se pravale compresoru’ and staff.

  6. Cristi Says:

    Pe mine mă dă pe spate fraza asta: “English next time, please.”

  7. jos8cal Says:

    Da, geniala.

  8. Mihai Says:

    Ii pusesem comment-ul pe romana si mi l-a tradus el pentru ca blogul lui e de renume mondial.

  9. Mihai Says:

    “Somebody wonders why I should I returned -1” English indeed

  10. Mihnea Says:

    A scris ca daca proiectu’ e cu ANSI trebuie inlocuit TCHAR cu char. Evident nu ne putem astepta sa stie ce e TCHAR de fapt si de ce exista el. Aparent pina si minerii prosti au mindria lor si prefera sa lase codul gresit decit sa corecteze a 4-a oara. A pus totusi “stuff” in loc de “staff”. Unicode and staff.

  11. Mihai Says:

    Unicode and snuff

  12. gg Says:

    Asteptam de ceva timp niste update-uri.
    Data viitoare sa faci si niste screenshot-uri ca sa fie treaba clara. Oricum GG.

  13. Mihnea Says:

    S-a dat si raspunsul la intrebarea “la ce-s bune cartile, help-urile si FAQ-urile”:

    One friend said: “helps files, books or FAQs are not perfect. It doesn’t fit everywhere and are not designed for a simple copy/paste without using any neurons”.

    English next time, please.

  14. leavemealone Says:

    major – staff – stuff – muff

  15. Fan Ronua Says:

    Ma gandesc cat de bine se pot distra colegii lui de mina cand se uita prin codul scris de el. Asta daca nu sunt toti ca el….si nu cred sa fie. Luceafarul e doar unul.

  16. Mihnea Says:

    Eu m-as cam enerva sa fiu coleg de ferma cu asta. Asa, de pe margine, e amuzant sa vezi cit de prost e, da’ sa dea mineru’ commit la timpenii prin fisierele mele? Nasol, zic.

  17. Fan Ronua Says:

    Ai dreptate, dar poate are bucata lui unde sapa numai el. Daca nu e pe tronson separat e nasol. :)

  18. ESul Says:

    Am refacut testele de performanta (se poate citi commentul pe blogul lui Silviu). Cu stat, FindFirst, GetFileSize si open/tell/close. Cel putin de data asta, in ciuda incurcaturilor cu WIN32 si variantele de wchar vs. char, ca performanta e ok vagonetul (probabil e turbo).
    Concluzia (repet, ma pronunt doar pentru acest test): winners==haters, close runner-up==Silviu (despre Dan as avea o vorba de duh dar prefer sa ma abtin).

  19. Mihnea Says:

    Totusi, “close runner-up” merge de 2 ori mai incet decit FindFirstFile() in testul tau, deci nu-i chiar asa de “fast”. La asta ma refeream cind am zis in primul post ca stat() isi petrece juma’ de zi impacindu-l pe Grigore al 13-lea cu Dennis Ritchie, desi nici unul din ei n-are treaba cu mineritul.

  20. ESul Says:

    True :)
    Ai dreptate, sper totusi ca a fost :cough: apreciata informatia!

  21. Mihnea Says:

    Sigur, sigur, s-a notat, multumim. :>

  22. bullshit Says:

    Am facut testul bun:
    Runtime with open/close: 4890 ms
    Runtime with stat: 6531 ms
    Runtime with GetFileSize: 4047 ms

    E logic ca CreateFile/GetFileSize/CloseHandle este cel mai rapid.
    @Dan merita tras de urechi un pic, pentru invalid handle, pentru shiftul aberant cu sizeof(DWORD) si pentru alocarea variabilelor in bucla.
    @ESul insa nu stiu ce a facut, dar clar a belit si el ceva. Cum naiba sa fie mai rapid open/close decat API-ul in sine, cand fopen e wrapper peste API? Sa nu mai vorbim de stat.

  23. Mihnea Says:

    Cite fisiere ai scanat in testul ala? Daca doar ai reparat problema cu string-ul pe post de handle din codul lui Dan, nu-i bine, ca ala freaca un singur fisier de o groaza de ori, deci totul va fi in cache. Scenariul realistic in care te-ar interesa performanta lui stat() e cind treci prin multe fisiere, ceea ce a facut ESul.

    PS: Probabil diferentele alea intre open()/close() si API-ul nativ sint doar noise, pentru ca timpii sint atit de mici. E vorba de 2% pina la urma, adica in practica au mers la fel.

  24. bullshit Says:

    Am scos si variabilele locale, si if-urile, ca sa nu altereze timpul API-urilor. In rest da, am mers pe numai un fisier. E foarte corect ce zici: cache-ul are un cuvant de spus. Da intr-adevar, asa la random access aparent stat (ma rog FindFirstFile – ca si stat asta foloseste) e mai rapid. Ce-i drept am ignorat chestia cu fisierele random la postul lui ESul, n-am citit atent, am crezut ca a refacut testul tot pe un fisier ca Dan.

  25. siEu Says:

    da, fa niste screen-shoturi data viitoare. probabil o sa prinzi toate modificarile, ca el modifica doar dupa ce citeste pe acisilea :-)

  26. șișiEu Says:

    Eu zic să îi puneți codul pe github, să avem toate reviziile. Că doamne ferește mergem în concediu și nu avem net și nu putem vedea tot codul life [sic].

  27. Mihnea Says:

    Asta e ideea zilei. De fapt ar merge puse blogurile lui cu totu’ pe github, ca e pacat cum ard efemer timpeniile pe masura ce citeste despre ele aici.

  28. DarkByte Says:

    Ca o curiozitate (fara legatura cu file size-ul asta mirific): am postat pe blogul omului acum vreo saptamana si l-am intrebat de ce poceste limba engleza cand nu stie nici romana …

    Din pacate, comentariul meu a disparut … putin ….

  29. Mihnea Says:

    Permite-mi sa te indrum catre raspunsul oficial:

    Cât timp suntem români, noi, nu avem pretenţia vorbirii şi scrierii unei limbi engleze perfecte.

    In caz ca vroiai sa te legi de virgula aia dintre subiect si predicat, sau de cantitatile variabile de i-uri din cuvinte, sau de restul pocelilor la care supune si limba romana, avem justificare si pentru asta (penultimul comentariu):

    Poate ca nu ma exprim la fel de frumos ca ei, dar acest fapt are cel putin o justificare.
    Si eu sunt absolvent de liceu informatic, chiar si politehnica, dar spre deosebire de “informaticianul” Badea eu chiar lucrez in, poate, ceea mai mare si emblematica companie software din acesta tara.

    PS: exuviile post-ului cu engleza perfecta se pot gasi aici si aici. Ar fi pacat sa citesti doar ultima versiune, avind in vedere prin ce-a trecut ca sa ajunga aici.

  30. DarkByte Says:

    Apreciez rapiditatea si cantitatea de informatii pe care mi-ai oferit-o :))

    Uneori, cand mai citesc cate ceva, scot citate din text si mi le pastrez. Am scos vreo doua citate si dintr-un articol de balta si le voi pastra aici, daca se poate :)

    “Diferenta e ca facut-o de ceea ce discuta si pot sa debiteze cei doi.”

    “Gheorghe nu e perfect, dar faptul ca a trecut prin mai multe joburi destul de diferite la viata lui arata polivanta sa.”

    P.S. Sper ca sa iasa italicele … si sper sa-mi confirme cineva faptul ca omul a facut scoala generala la FF … si nu ma refer la browser.

  31. Mihnea Says:

    Mie imi place asta:

    “La câtă reclamă au facut danşi, s-a ajuns ca unele cunostinţe să mă întrebe daca site-ul lor e site-ul meu”

    Faptul ca prietenii lui vad un site in care se face misto de el si-l intreaba daca e al lui nu-l ingrijoreaza deloc.

  32. Radu Says:

    boost::filesystem

  33. Marius Says:

    Eu v-aș propune să nu mai postați pe blogul lui. E tot ce-și dorește, știm toți asta. Un post care a fost scris de alții, după care o discuție tehnică eventual contradictorie în spate. Hai să punem mână de la mână să-i facem o diplomă de MVP și să i-o dăruim.

  34. DarkByte Says:

    Inca o perla :D De data asta, de la prietena-mea.

    Discutam cu ea despre intelijentul care nu are pretentia vorbirii unei limbi engleze perfecte si ii spuneam ca e senior developer la BitDefender (asa am inteles, sper ca nu m-am inselat).

    Raspunsul ei, spontan si amuzat, a fost de milioane: “Si oare restu’ cum sunt ?!” :)

  35. Mihnea Says:

    Eu cred ca asta cu senioritatea e secretul lui, inca nu le-a spus si celorlalti ce-si inchipuie el ca e cind il vineaza pe ManBearPig printre iteratorii postincrementati din codul statelor de plata.

    Oricum, in urma remarcii tale cu citatele de ieri, ne-am gindit sa recoltam aforismele pe care le-am documentat de-a lungul timpului in post-urile de aici intr-un loc unde sa poata fi accesate rapid, pentru referinte ulterioare. A iesit pagina asta (accesibila si din dreapta-sus din widget-ul cu Postez pentru Tine).

  36. DarkByte Says:

    Apreciez, da’ marturisesc ca ma depaseste (pagina si continutul).

    Actually, m-am blocat la True / Clear Type si faza cu modulo x. Mi-e frica sa merg mai departe :)

  37. Radu Says:

    cel mai mult imi place citatul cu “cea mai mare si mai emblematica companie din Romania” :))… dar nu mentioneaza ce face efectiv acolo… sau la ce sucursala este.. oricum nu e in Bucuresti.

  38. Another whatever Says:

    Dom’le, ce flame de vineri (care s-a intins si pe sambata) e aici!

  39. siEu Says:

    Eu nu vad niciun flame.

  40. Mihnea Says:

    Important e ca altii vad, si se intreaba…

  41. Co Says:

    Nu putem s-o punem de un serial numit ‘Persoane din staff-ul maiorului ne informeaza’? Cand se strang suficiente informatii, mai bagam un episod.

Leave a Reply

Optionally add an image (JPEG only)