Îndreptar pentru limba română în IT


Francezii au calculatoarele (de regulă echipate cu Windows) în limba franceză. Germanii în germană, italienii în italiană șamd. Am mai scris chestii similare dar vreau să completez și să extind.

Românii însă fug de limba lor în IT ca necuratul de tămâie. Din păcate și pentru că mulți dintre ei s-au cam încurcat cu necuratul oricum. Dar să nu divagăm. Îmi doresc ca și noi să fim mândri de limba noastră și să ne-o respectăm cum fac și alții cu a lor.

Totuși mulți dintre cei care și-ar dori asta nu știu cum se numesc în română tot felul de termeni tehnici. Voi încerca să fac un ”serial” în care să scriu despre ce corespondențe am mai găsit.

  • input – date de intrare
  • trend – tendință
  • hash table – tabelă de dispersie (.NET, Java etc.)
  • hash code – cod  de dispersie (.NET, Java etc.)
  • trunk – trunchi (SVN, TFS, VSS etc)
  • array – tablou sau vector
  • branch – ramură
  • to disable – a dezactiva (NU dizabla/enabla, vă știți cei la care fac referire 😛 )
  • bug – defect
  • to debug – a depana
  • soft skills – abilități interpersonale (nu sunt 100% sigur)
  • organizational culture – spălare pe creier ( 🙂 😛 )

Totodată văd tot felul de antipractici de ”traducere”:

  • a fixa un bug – a repara un defect
  • face sens – are sens (de la ”makes sense”)
  • patetic – jalnic/penibil (de la pathetic)
  • debugări – depana

va urma 🙂

 

Adăugire1:

  • LE, Later Update – Adăugire [ulterioară]
  • fixedish, fixed-ish – „rezolvat, … gen” (dedicatie pentru Traian si Mihnea :P)

Adobe Reader în limba română


Deosebit de plăcută surpriză mi-a făcut Adobe. Am încercat astă-seară să descarc un PDF cu un CV și am remarcat că nu am instalat Adobe Reader. Nici o problemă, îmi zic eu, doar am Windows 7 proaspăt, cu licență. Mă duc pe un motor de căutare, scriu „Adobe Reader” și primul link cel bun.

Îmi propune versiunea de Windows 7, în engleză. De curiozitate apăs pe „Another OS or language” mai mult de amuzament. Ei bine ce văd eu?  Au pentru Windows 7 în română!! iiiiiiiii 🙂

Super, apreciez Adobe! În sfârșit ne iau în seamă firmele mai mari (Microsoft, Adobe etc.)

PS: Și Windows 7-le îl am tot în română.

PPS : Da, îmi place mai mult în română, e limba mea.

.NET Framework – stiri


Nu mare lucru, au schimbat sigla. Din :

.NET 3.5 Logo
.NET 3.5 Logo

in

.NET 4.0 Logo
.NET 4.0 Logo

Sincer mi se parea mai ok cea veche.

Pe de alta parte deja este anuntat .NET Framework 4.0 pentru 2010. Mai multe puteti citi aici.

In mare vom avea mai mult suport pentru utilizarea tuturor procesoarelor logice (fizice si core-urile lor) fara prea multa bataie de cap. PLINQ este un exemplu la indemana. In rest tot ce nu a apucat sa intre in .NET 3.5 SP1 va intra in 4.0 si vom avea mult mai mult suport pentru depanarea bug-urilor greu de reprodus si managementul vietii unei aplicatii (ALM).

Cum sa scrii cod nementenabil – demential


Pe StackOverflow.com citeam (varianta beta – cea oficiala va iesi pe la mijlocul lui Septembrie (2008)) despre ce articole considera cititorii drept cele mai utile pentru cariera lor de programatori. Ei bine am dat de un articol recomandat care sincer mi s-a parut demential!

How To Write Unmaintainable Code scris de Roedy Green.

Este un contraexemplu lung si bine structurat, acopera cam toate prostiile pe care le fac voit sau nevoit programatorii mediocrii si cei prosti. Este o combinatie excelenta intre umor si disciplinare.

In principiu va las sa cititi articolul original, la adresa de mai sus insa va voi spicui cateva fragmente ce m-au facut sa rad ca prostu’ in fata monitorului pe la 4 dimineata cand il citeam :

O mica introducere asupra scopului lucrarii :

In the interests of creating employment opportunities in the Java programming field, I am passing on these tips from the masters on how to write code that is so difficult to maintain, that the people who come after you will take years to make even the simplest changes. Further, if you follow all these rules religiously, you will even guarantee yourself a lifetime of employment, since no one but you has a hope in hell of maintaining the code. Then again, if you followed all these rules religiously, even you wouldn’t be able to maintain the code!

Apoi ajungem la detalii mai concrete :

Be Abstract
In naming functions and variables, make heavy use of abstract words like it, everything, data, handle, stuff, do, routine, perform and the digits e.g. routineX48, PerformDataFunction, DoIt, HandleStuff and do_args_method.

Ne plimbam prin notiuni mai abstracte iar :

Programmers are lulled into complacency by conventions. By every once in a while, by subtly violating convention, you force him to read every line of your code with a magnifying glass.
You might get the idea that every language feature makes code unmaintainable – not so, only if properly misused.

Conventiile de notare par sa fie un lait-motiv :

Bedazzling Names
Choose variable names with irrelevant emotional connotation. e.g.:
marypoppins = (superman + starship) / god;
This confuses the reader because they have difficulty disassociating the emotional connotations of the words from the logic they’re trying to think about.

Reuse of Global Names as Private
Declare a global array in module A, and a private one of the same name in the header file for module B, so that it appears that it’s the global array you are using in module B, but it isn’t. Make no reference in the comments to this duplication.

O chestie pentru care mi s-ar parea normal sa faci puscarie :

Overload new
Overload the „new” operator – much more dangerous than overloading the +-/*. This can cause total havoc if overloaded to do something different from it’s original function (but vital to the object’s function so it’s very difficult to change). This should ensure users trying to create a dynamic instance get really stumped. You can combine this with the case sensitivity trickalso have a member function, and variable called „New”.

O perla permanent valabila :

Clone & Modify
In the name of efficiency, use cut/paste/clone/modify. This works much faster than using many small reusable modules. This is especially useful in shops that measure your progress by the number of lines of code you’ve written.

Traznai nemaiauzite (de mine macar) :

Use Three Dimensional Arrays
Lots of them. Move data between the arrays in convoluted ways, say, filling the columns in arrayB with the rows from arrayA. Doing it with an offset of 1, for no apparent reason, is a nice touch. Makes the maintenance programmer nervous.

Daca nici acum nu v-am convins sa cititi intreg articolul atunci va pot asigura ca ce am pus aici nu e nici macar 5% din ce puteti gasi acolo.

Glume de-ale programatorilor


Two strings walk into a bar. The first one says:
Hello, I’d like some Vodka andytewsr@)W$(#*$&!^Y@)^&30@#!
„You’ll have to excuse my friend,” the second one says, „he’s not null-terminated.”

––––––

As soon as she walked through my door I knew her type: she was an argument waiting to happen. I wondered if the argument was required… or merely optional? Guess I’d know the parameters soon enough.

„I’m Star At Data”, she offered.
She made it sound like a pass. But was the pass by name? Or by position?
„I think someone’s trying to execute me. Some caller.”
„Okay, I’ll see what I can find out. Meanwhile, we’re gonna have to limit the scope of your accessibility.”
„I’d prefer not to be bound like that,” she replied.
„I see you know my methods,” I shot back.
She just stared at me, like I was a block. Suddenly I wasn’t surprised someone wanted to dispatch her.
„I’ll return later,” she purred. „Meanwhile, I’m counting on you to give me some closure”.
It was gonna be another routine investigation.
– Dashiell Hammett, „The Maltese Camel”

––––––

De ce prefer Java sau .NET

De ce prefer Java sau .NET

Definitii


<pentru programatori 😛 >

Cea mai tare definitie pentru iad auzita recent :

Iadul este codul scris de altii.

Gazduire Windows – chiar asa scumpa? Sau nu!


Mi-am luat un domeniu .ro si ulterior mi-am luat si un cont de gazduire la el. O groaza de fani (cativa din ei chiar extremisti) LAMP radeau de mine si/sau ma denumeau nebun.

Aici Ionut_D imi spunea ” aoleeeeeeeeeeeeu! si te duci sa faci blogging pe windows?
Bleah! ca sa zic asa si felicitari ca renunti la free blogging.”

Toata lumea vai ca nu merita ca e scump etc. etc. etc.

Acum cinci minute tocmai am facut un calcul. Eu platesc la Livehosting.ro Pentru abonamentul LH Express 79 RON pe an cu totul.

Ce am de banii astia?

2 GB spatiu de stocare
4 GB trafic lunar
100 adrese de email (ai si catch-all-uri)
liste de email
5 subdomenii
1 baza de date
SQL Server si MySQL.
ASP.NET 2.0 si PHP 4 si 5
IIS 7.0 – care, credeti-ma, face TOTI banii

Repet, total 79 RON / an.

buuuuuuun…..

Hai sa luam o alta firma de gazduire al carui nume as vrea sa nu il divulg (desi unii se vor prinde la care ma refer) care este LAMP-only.

Cel mai ieftin abonament :

2,95 EUR / luna :

100 MB spatiu stocare
2 GB transfer date
3 adrese email
0 liste email
0 baze de date
0 subdomenii

Acum cat costa pe an aceasta „super-oferta” ?

Pai 2,95 EUR x 12 luni = 35,4 EUR
Cu TVA => 42,126 EUR
Cu reducere 20% pentru plata integrala pe un an : 33,7 EUR (33,7008 EUR ca sa fiu precis 😛 )
Si in RON? Pai BNR din 21-Mai-2008 zice 3,6412; Majoritatea firmelor iau insa BNR+2% deci 3,714024;
In total rezulta 125 RON / an.

Rezulta  122 RON 125 RON fata de 79 RON. Asta inseamna +54% 58% !!!

Si asta pentru ce? PHP aveam si acolo. MySQL aveam si acolo. In plus nu aveam 100MB stocare ci 2000MB. si nu 2GB de trafic ci 4GB. Si aici n-am baze de date. Samd….

Asa ca cei care cred ca LAMPa este neaparat mai ieftina ii rog sa refaca putin calculele.

Modificare ulterioara : Am scos +2%-ul din calcule conform ce spune Ionut Dragota.