Cele doua fete ale tirnacopului

As vrea sa facem un exercitiu de imaginatie: inchipuiti-va Liceul de Informatica din Hunedoara intr-o dimineata de vara tirzie, la sfirsitul lui August 1999. E vacanta si liceul ar trebui sa fie pustiu, dar azi nu e, pentru ca a inceput a doua sesiune de bacalaureat. Alegeti o materie la intimplare – sa spunem informatica (merge si romana). Intrati cu ochiul mintii intr-una din salile de clasa si umpleti-va plaminii cu atmosfera de examen: susoteli, fituici, profesori care scriu rezolvarile pe tabla, elevi care se duc la celelalte sali sa vada daca acolo “s-a rezolvat subiectul 2”. Un singur om sta aplecat asupra foii sale, concentrat, superior, sclipitor, dar vizibil deranjat de forfota din jurul sau. Toti incearca sa copieze de la el, iar lui ii este din ce in ce mai greu sa ignore aceste agresiuni. Acest om este Silviu Ardelean.

Silviu se jura ca asa a fost. Saptamina trecuta a fost Sarbatoarea Bacalaureatului in Calendarul Datatorilor Cu Parerea si nu putea sa lipseasca tocmai el de la festivitati, asa ca a tinut sa-si proclame admiratia fata de camerele lui Funeriu si “adevarul, normalitatea, lucrurile frumoase, realitatea” pe care acestea le-au adus in viata romanilor. Noi am avea totusi niste obiectii…

La doar patru zile dupa ce l-a batut incurajator pe spate pe Funeriu, Silviu a decis ca a sosit timpul pentru a pune inca o data umarul la progresul programarologiei, asa ca a publicat un tratat despre functia _chkstk(). Articolul incepe in felul urmator:

A process starts with a fixed stack space. The top of a stack is pointed to by the ESP register (Extended Stack Pointer) and this is a decrementing pointer.

E ceva dubios aici, nu? Exprimarea curata, informatiile corecte, mentionarea cuvintului “registru” – toate acestea ii dau cititorului fidel un sentiment de alienare si-l fac sa verifice textul din address bar. Am intrat cumva din greseala pe o alta pagina? Nu, adresa e corecta, deci citim mai departe:

This is in contrast with the heap that can theoretically grow to a limit of 4 GB.

This is in contrast with“? Pe bune, dupa “electric power manufacture base on water“, “I’m acting into a C++ Romanian programming community” si “it depends on your’s algorithmic intellection, cleverness“? Ajuns aici am simtit nevoia sa-l intreb pe Google ce parere are despre alfabetizarea subita a lui Silviu, iar el mi-a raspuns fara sa pregete cu acest link de la codeguru. Pai ce facem Silviu? Iar copiem? Iar ne inspiram? Ce-ar fi sa punem niste camere d-alea de supraveghere si la calculatorul tau, pentru ca “rigoarea inpusă în această sesiune de examene să fie un nou început”? (“Inpusa”, mai gunoiule?)

Sigur, articolul nu e copy/paste in intregime. Putem determina unde incep contributiile originale ale minerului urmarind momentele in care fata gramaticii se intuneca brusc:

If you have an infinite recursion then you will gate same stack overflow error

I have started the study of _chkstk() function in the moment when I got few bugs with crashes with some similarly details.

I stopped to some trace function calls and I studied deeply.

Observam ca lucrarea minerului se incheie cu o lista de referinte, din care lipseste insa tocmai thread-ul de pe codeguru din care s-a inspirat. Deci:

Incheiem cu cuvintele directoarei liceului unde zice Silviu ca au copiat altii dupa el (si nu ne putem abtine sa ne intrebam cit de prosti erau aia):

Un mare filosof spunea că numai prin educaţie se poate asigura dominaţia minţii peste întuneric. Educaţia de care au avut parte atâtea generaţii care au trecut pragul acestei şcoli a însemnat colaborare, comunicare şi dialog, a asigurat elevilor libertatea să se întrebe şi să ne întrebe.

Sau, mai direct, cum cintau rapsozii aventurile lui Silviu in Piata Universitatii:

Minerul isi construieste singur cerul.
Minerul din mici lampase lucitoare isi face luna, stele, soare la fel ca si un vrajitor.
Minerul c-o mana poate s-atinga cerul
Si poate-n noapte-ntotdeauna s-aprinda stelele si luna.

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

10 Responses to “Cele doua fete ale tirnacopului”

  1. Liviu Lalescu Says:

    1) Nu-mi place formularea “se jura”. Nu sunt expert in gramatica, dar cred ca nu se poate pune “se”.

    2) Nu merge butonul “Like” Facebook.

  2. Mihnea Says:

    1) JURÁ, jur, vb. I. 1. Tranz. și refl. A afirma, a declara ceva sub jurământ, a depune un jurământ. ◊ Tranz. A întări, a confirma la judecată, prin jurământ, o depoziție sau o mărturie. ◊ Refl. A promite prin jurământ.

    Sau, mai simplu, din intelepciunea populara: el se jura ca nu fura, eu l-am prins cu rata-n gura. Intelepciunea populara nu se insala NICIODATA.

    2) Cred ca a putrezit in cele 2 luni de inactivitate, vom investiga problema.

  3. Mihnea Says:

    Am schimbat plug-in-u’ responsabil cu butonu’, acum pare sa mearga.

  4. Liviu Lalescu Says:

    Da, merge, ma jur! :-)

  5. Valentin Galea Says:

    Eu imi donez calculatorul pentru participarea la un atac DDOS pentru blocarea site-ului acestui individ deosebit de periculos in prostia lui :)

    Am descoperit ieri acest site, si am citit toate post-urile pe nerasuflate, productivitate mea a scazut la minim, dar nu conteaza! Nu am mai ras asa de mult de la Old Man Murray!

  6. wasile Says:

    1. “cu cuvintele” e cacafonie.
    2. wb!

  7. Stefan Says:

    Valentin, ej nebun? Și noi de cine plm o să mai râdem?

  8. Stefan Says:

    Bine, articolul minier mai are câteva perle pe lângă alea punctate:

    – m-a băgat în ceață fraza cu “This happens because the 1MB limit is overloaded even on a win32 OS: 4000*200*4 = 3.2MB (approx.).”, până mi-am dat seama că la el overload și overflow e tot aia

    – “The solution is to avoid using recursive functions as much as possible and try to implement an iterative function. ” – cum ar veni, poate ești prea prost să scrii funcții recursive și ca un principiu general ar fi ok să te concentrezi pe funcții iterative :).

    – “similarly thing”, “similarly details” :)

    – “in a business application every milliseconds matters for the log system” lolz

  9. thefatredguy Says:

    Vai de stiva ta, Siviule maica. Pai bine ma baiatule, atatia ani de bagat in galerie si stack corruption e aceeasi mancare de peste cu stack overflow ? Ia roaga-l pe confratele Cucu sa-ti explice el cum e cu stiva.

    Imi place cum e scris articolul : “I have started the study of _chkstk()….”, “a new study of xyz() showed that…” – zici ca e un documentar d’ala gen FBI files de pe Discovery :)
    Iar observatiile a la Captain Obvious (mai ales aia ca orice functie recursiva poate fi scrisa iterativ) sunt cireasa de pe tarnacop.

    Pfuaii acuma vazui ca, pe 7 iulie, autobaza a sarbatorit un anisor de la darea ei in exploatare. La multi ani!

  10. Andrei Rinea Says:

    Nu se da 1 pentru copiat?

Leave a Reply

Optionally add an image (JPEG only)