Analiza pulo-etimologica a limbii romane

Pe forumurile de lingvistica comparata pe unde o mai ard in ultimul timp cand nu am ce face am gasit tot felul de studii interesante asupra unor limbi in functie de etimologia si originea etnica a anumitor cuvinte.
Limba romana este, asa cum credem noi, un pic mai speciala, asa ca, rezumand foarte pe scurt, putem deosebi urmatoarele influente majore asupra ei:

– latina in perioada initiala/ de conceptie, (datorita izolarii posibil chiar latina clasica,  dupa unele ipoteze) pentru structura, morfologie si sintaxa, plus o buna parte din vocabular. In acest moment se vehiculeaza cifre gen 75% dar este destul de posibil ca o parte din acest procent sa fie datorat importului tarziu din franceza

– slava in evul mediu timpuriu, pentru o parte din vocabular, in special multe verbe si cuvintele care definesc emotii, e.g. iubire (, am pierdut radacina aimer/amor/amare etc).

– franceza in secolul 19, cand o campanie de “re-latinizare” sau mai corect franceziare a inlocuit multe cuvinte slave cu echivalentul francez si a intrudus nelologisme din aceeasi surse.

Revenind la pulele noastre, toate acestea mi-au dat ideea sa schitez un studiu comparat al originii injuraturilor si cuvintelor asociate in limba romana. Vom vedea daca si acest studiu va confirma sau nu latinitatea profunda a limbii noastre mult iubite. Ce m-a facut sa fac acest mic studiu a fost banuiala ca limba slava ar putea sa influenteze destul de mult aceasta parte a vocabularului, datorita legaturii evidente intre emotii si injuraturi. Sloboz este un cuvant care imi vine acum in minte care este evident de origine slava. Dar sa vedem ce am obtinut.
O nota despre esantion: desi nu este statistic vorbind reprezentativ, calitativ vorbind este, pentru ca am incercat sa acopar celee mai utilizate substantive si verbe.

Injuratura Origine Etimologie
pula latina pulla
muie tiganeasca avand in vedere legatura clara intre (in)muiat si rezultatul muiei, si faptul ca si in franceza poate avea acelasi sens, consider ca avem o origine comuna latina Am verificat in dex, vine din tiganeasca cum bine mi-a atras atentia un cititor. Poate ca si alte limbi l-au preluat tot de acolo.
sloboz slava evident legat de verbul a slobozi, a elibera
pizda slava pizda
fute (a) latina futuere
gaoaza latina cavum, gaura
cordi (a) tigan. kurdo
coi latina coleus … mai tine cineva minte magazinul de la romana?
suge pula (a) latina sugere pulla, evident
cur latina culus
muie in cur latina muie in culus
bagaboant(a) latina vagabuntus
cacat latina cacare
fetite(la) latina ad feta
laba maghiara lab
namol(a o da la) ucrain. namil
lindic franceza landie
buci (a da la) latina bucca, gura. Probabil ca inaintasii nostri se gandeau la gura curului, de unde si expresia “mananci salam barbos cu curul”.
panarama germana panoramieren
parasuta franceza parachute

Asa cum se observa, sursa a peste 80 % dintre elementele analizate este latina, intarind astfel intr-un mod esential  latinitatea superba a limbii romane.

P.S. Pentru analiza am utilizat in principal excelentul webdex.

Unde pula mea e MODELUL ?

model view controller pula

Deci in pula mea, eram ieri la servici, pe la pranz, si ma ia  A-C, sefa mea cu ea la etajul 1 (nu sa-i dau o muie cum poate va gandeati) ci pentru o “reuniune”. Reuniunea de fata insemna de fapt ca am intrat in biroul unuia si ne-am asezat pe niste scaune, el urmand sa ne prezinte, si apoi sa ne predea un maret backoffice de moderare. Backofficeul asta, teoretic, ar trebui sa ma scuteasca pe mine de sarcina de a scrie unul noul pentru proiectul la care lucrez, asa ca putea fi util, daca era adaptabil.

Ok, individul intoarce monitorul si ne arata cum se logheaza el, cu vede niste inregistrari, si le “modereaza”. Adica alege daca sunt spam sau nu, evident. Aplicatia are un aer invechit si arata destul de naspa, dar, ni se precizeaza, a fost utilizata intensiv de echipele care fac moderarea, deci sunt deja obisnuite cu modul de utilizare. In plus, si aici devin brusc interesat, este scrisa foarte curat, obiectual, si poate fi extinsa/adaptata usor pentru a obtine ce avem nevoie.
“Perfect”, imi zic, hai sa vedem codul ala. Reunionistul deschide pspad (intotdeaua mi s-au parut dubiosi programatorii care folosesc pspad, intre noi fie vorba), si imi arata structura de clase. “E arhitectura MVC”, ma asigura el triumfator.  Asa cum aveam deja sentimentul, mvc la el inseamna ca are un fisier, index.php, in care foloseste un switch pentru a selecta codul care se va executa. Exact asa si era …
Restul codului era intr-un folder separat de “clase”, si inca unul de “functii”. Ok, zic eu, arata-mi “clasele” tale.

Clasele erau de fapt bucati de cod care se executau pentru fiecare pagina a siteului, si care tratau tot fluxul, de la intrare pana la template-ul smarty. As face aici o paranteza, legat de smarty. Smarty este un cacat inutil, utilizat de fraieri ca sa dea impresia ca sunt mari programatori si separa “codul” de “view”. De fapt obti acelasi rezultat daca scri un template in php (php este in esenta pulii lui un limbaj de template-uri!) si ii pasezi argumentele intr-un array. La fel de usor ajungi sa bagi business logic in template si in smarty si in php. Si aici inchid paranteza.
Asadar, fiecare pagina avea codul ei,100 % procedural, jalnic inchis intre o declaratie de clasa si paranteza de inchidere corespunzatoare.
Dar asta nu e tot, continua programatorul. Exista si un (simulacru) de sistem de mostenire, pe un nivel: toate clasele mostenesc o clasa de baza pentru a mosteni niste functii comune (si destul de dubioase) de autentificare si acces la baza de date. Pentru ca, da, nici macar o abstractizare BD calumea nu a fost implementata, pentru ca, imi explica el usor jenat, nu a reusit sa gestioneze problema cele 2 servere BD (unul pentru citit, frontul si altul master, pentru scris). “Deci ai facut o treaba de cacat” imi zic eu in gand, apoi zambesc protocolar, pentru ca urma sa-l mai intalnesc pe individ la cafea.

Si acum partea didactica pentru toti pularaii care au deschis un editor si au inceput sa “programeze” in PHP, in principal pentru ca ca are  bariera de intrare foarte joasa.
In cuvinte simple, model view controller este un pattern care ar trebui in principiu sa izoleze logica aplicatiei, cum s-ar zice Business Model-ul, de interfata, de afisare. Asta inseamna ce … de exemplu daca ai de implementat afisarea listei de sefi carora trebuie sa le sugi pula ca sa ajungi un sef mai mic, in modelul aplicatiei incarci lista, din baza de date sa zicem, o prelucrezi, aplici reguli specifice (sa zicem ca ai o filtrare, numai sefi cu acelasi etaj cu tine sa va intalniti la aceeasi toaleta), dupa care pasezi aceste informatii, intr-un format neutru, afisarii. Si cine paseaza datele si face legatura intre model si afisare (view) ? Controllerul.
Aici este momentul in care fraierul cade in plasa … o regula foarte ignorata este TC-FM (thin controller – fat model), adica controllerul trebuie sa faca STRICT doar interfata intre cele 2, sa nu contina business logic. Dar, este mult mai usor sa bagi la greu cod in asa zisa ta “clasa” care devine un fat controller curand singleton curand o mare laba.
In poza de sus, in partea acoperita de pula, scrie “encapsulates application logic” si “exposes functionality”. Adica … adica ofera un acces selectiv la sistemul care e modelat. Deci fara query-uri in controller, desi pare mai usor. Izolarea scopului, asta e esential.
Muirea continua cu viewul: intr-o aplicatie web nivelul view este de fapt o combinatie intre codul server side care prepara afisarea, codul client side care o modifica/afiseaza (html + javascript care manipuleaza html) + browserul web, exact cois… Daca vrei sa fi ortodox nu faci query-uri in template-uri php sau altceva, nu prelucreazi informatie in view si nimic altceva. Doar afisezi, faci un for chestii de genu asta.
Mult mai ingrijorator este persistenta acestei abordari, daca pot macar sa-i zic asa, in framework-uri cu pretentii. Un trist exemplu este Zend Framework care nu ofera absolut nici un suport pentru partea de model, parca incearca sa fie o continuare a “traditiei” scriptkiddies legata atat de des de PHP.
Ca sa revin la intrebarea initiala: “unde pula mea e modelul?”

P.S.

Dupa amiaza m-am intalnit la o tigara cu Mikael, din celula de securitate, care mi- a zis ca cunoaste backoffice-ul respectiv, ca e “un truc de merde” dpdv securitate,  si tradus mai pe scurt, ca “isi baga pula, el nu aproba utilizarea lui in aplicatie”.