Toamna se numără… stagiarii

Vara aceasta, DEX online a avut plăcerea să colaboreze cu doi stagiari de la Universitatea Politehnică din București (ne ferim să le spunem interni, cum li s-a încetățenit numele studenților din IT care fac practica pe vară, căci nu i-am găzduit la internat, nici nu le-am dat voie să opereze pacienți). Rezultatele sunt fantastice pentru noi și — sperăm — și pentru ei.

Mihai Trifu a îmbunătățit rezultatele căutării aproximative, care intră în acțiune atunci când un cuvânt căutat nu este găsit. Algoritmul anterior era mai lent și dădea rezultate mai proaste. Cu algoritmul implementat de Mihai, sistemul răspunde de 3 ori mai repede și „înțelege” ce a vrut utilizatorul să spună când a tastat pignuin, judetz sau chiar calrvizunne.

Pentru cei interesați, algoritmul folosit este căutarea cu trigrame, prin care fiecare cuvânt din baza noastră de date este împărțit în grupuri de trei litere. Pentru pinguin obținem (__p, _pi, pin, ing, ngu, gui, uin, in_, n__). Când utilizatorul tastează pignuin, sistemul caută cuvântul (sau cuvintele) care au cele mai multe trigrame în comun cu pignuin și găsește pinguin.

Cristian Chilipirea a scris un nou joc cu care sperăm să vă ajutăm să vă perfecționați cunoștințele de limba română într-un mod distractiv. El este încă în lucru (unele din întrebări sunt prost alese, iar grafica mai are nevoie de îmbunătățiri), dar îl puteți vedea în versiune beta la Moara cuvintelor.

Cum orice joc are și un scop util, pe viitor sperăm să putem folosi Moara cuvintelor ca să colectăm statistici despre dificultatea cuvintelor limbii române, observând care dintre ele sunt ghicite mai des sau mai rar. Acest proces este iterativ și ne va ajuta să rafinăm nivelurile de dificultate pentru Moara cuvintelor și pentru Spânzurătoarea. Pe termen mai lung, o ordonare bună a cuvintelor limbii române după frecvență servește ca suport pentru estimarea numărului de cuvinte ale limbii pe care le cunoaște un vorbitor.

Această colaborare a fost posibilă prin efortul depus de ROSEdu, o comunitate de entuziaști ai programării și ai educației în programare, în special cea open source. Misiunea ROSEdu este să sprijine educația IT bazată pe valorile open source. Una dintre activitățile ROSEdu în 2012 a fost ROSEdu Summer of Code (RSoC), un program care a oferit multor studenți un stagiu pe timpul verii la diverse proiecte open source, printre care s-a numărat și DEX online.

Le mulțumim călduros și pe această cale lui Cristian, Mihai și comunității ROSEdu!

Cîteva cifre

    A mai trecut un an din viața noastră și a dexonline.ro, iar din cînd în cînd e bine să ne mai lăudăm și noi… Și nu există metodă mai obiectivă decît prezentarea cîtorva cifre!

    De la ultima aniversare, ne-au vizitat peste 11 milioane și jumătate de vizitatori unici, deci mai mult de 50% + 1 din totalul persoanelor cu drept de vot din România! Chiar considerînd că doar 80% dintre ei au provenit din România (restul provenind din Moldova – 10% Italia, Germania, cîte 1%), tot depășim cvorumul! Acești vizitatori au deschis circa 120 de milioane de pagini (în 40 de milioane de vizite), în creștere mică (circa 5%) față de anul trecut.

    Nici pe facebook lucrurile nu stau tocmai rău! Am ajuns la peste 140.000 de like-uri (creșterea fiind de mai bine de 100.000 în acest an). O parte a acestui succes se datorează Cuvîntului Zilei, ale cărui postări sînt vizualizate de circa 20.000 de persoane zilnic pe facebook. Și dacă am ajuns aici, chiar dacă nu am primit premiul Oscar, trebuie să îi mulțumim lui Vasile Alboiu, care ne-a ajutat cu ilustrațiile începînd cu 15 februarie!

    Planurile pentru viitor sînt mărețe; timp suficient (și voluntari) să fie!

Prețul libertății este vigilența eternă

DEX online va participa astă-seară la mitingul din Piața Revoluției, pentru a protesta împotriva acțiunilor USL din ultimele zile, care amenință grav statul de drept.
Ne implicăm fără tragere de inimă în evenimente politice. Într-o zi normală, am prefera să facem ce știm mai bine: să lucrăm la dexonline.ro. Așa am făcut în ultimii 11 ani și nu am cerut nimic de la nimeni. Cuvintele ocazionale de apreciere din partea utilizatorilor ne sunt de ajuns.
Dar astăzi nu mai este o zi normală și există un pericol real ca multe zile de acum înainte să nu mai fie normale în România. Astăzi avem ceva de cerut, ceva atât de elementar încât toată lumea civilizată îl consideră de la sine înțeles. Cerem salvarea cadrului normal al unui stat de drept, cadru care dă sens și permanență muncii proiectului DEX online și oricărei alte inițiative private.
Un stat de drept este prin definiție într-un echilibru fragil, în care diversele ramuri se țin în șah una pe alta pentru a preveni abuzurile. Orice pas care afectează acest echilibru este un pas într-o direcție greșită, căci el diminuează libertatea și siguranța cetățenilor. USL a făcut numeroși astfel de pași în ultimele zile:

  • a redus drastic puterea Curții Constituționale;
  • a schimbat fără un motiv real avocatul poporului și președinții camerelor parlamentare;
  • a trecut, fără un motiv real, Monitorul Oficial în subordinea Guvernului, pentru a avea controlul asupra datelor intrării în vigoare a actelor;
  • intenționează să modifice legea referendumului, urmărind să acapareze și ultima instituție pe care nu o deține — președinția;
  • a binecuvântat plagiatul și câștigul fără muncă, numind un prim-ministru care și-a luat doctoratul cu 10% transpirație și 90% copy-paste;
  • a binecuvântat chiulul, numind un Președinte al Senatului cu prezența la vot de 6% în ultimii patru ani de mandat.
Ne ținem pentru noi opiniile politice. Nimeni din echipa DEX online nu știe cum votează ceilalți. Dar ce se întâmplă în aceste zile transcende culoarea politică. Dacă acest blitzkrieg reușește, consecințele asupra României și asupra raporturilor României cu lumea vor fi devastatoare.
Vă rugăm și pe dumneavoastră să nu fiți indiferenți. Puterea absolută corupe în mod absolut.

Cântă, zeiță, mânia ce-aprinse pe gicuion@yahoo.com

Nu cunosc cheia succesului, dar cheia eșecului este să încerci să mulțumești pe toată lumea.

– autor necunoscut 

Am primit un mesaj cu un ton foarte… colorat pe adresa de contact. Nu ne face plăcere să dăm din casă, dar i-am promis omului că, dacă nu se potolește, îi publicăm mesajele aici. Acum nu facem decât să ne ținem de cuvânt. 🙂

Voi ce părere aveți? Puteam să facem ceva mai bine și n-am făcut, de am stârnit furia acestui nene?

                                                                        


From: george <gicuion@yahoo.com>
Subject: Unelte | Top |
To: „contact@dexonline.ro” <contact@dexonline.ro>

OARE UNDE ATI GASIT VOI CAPETE LUMINATE CUVANTUL „Unelte” si „Top” in limba romana ? basini in nas si aroganta prostului vad ca nu va lipseste invatati macar la scrieti romaneste

                                                                        

Subject: Re: [Ticket#2012042510000021] Unelte | Top |
To: george <gicuion@yahoo.com>
From: DEX online <contact@dexonline.ro>



Bună ziua,

Apropo de scris românește, îmi permit să corectez brambureala trimisă de dumneavoastră:

Oare unde ați găsit voi, capete luminate, cuvintele „unelte” și „top” în limba română ? Bășini în nas și aroganța prostului văd că nu vă lipsesc; învățați măcar să scrieți românește.

Diferențe notabile:
– Litere mici, în afară de cazul în care sunteți isteric cu certificat
– Diacritice (ăâîșț)
– Virgule înainte și după apoziție („capete luminate”)
– Ghilimele jos și sus („unelte”), nu doar sus, ca în limba engleză („unelte”).
– Literă mare la începutul propoziției („Bășini”)
– Acordul subiectului cu predicatul („lipsesc”, nu „lipsește”)
– Punct și virgulă (sau cel puțin virgulă) între două propoziții nelegate prin conjuncție (după „lipsesc”)
– Corectarea greșelii de tipar, („să” în loc de „la”) probabil datorată grabei de a termina fraza înainte să vă pierdeți ideea (prețioasă, de altfel).

Pe lângă sintaxă, aveți și o gravă eroare semantică: „unealtă” și „top” sunt cuvinte românești:

http://dexonline.ro/definitie/unealta
http://dexonline.ro/definitie/top

Așadar,  9 greșeli în 30 de cuvinte. Nu pot să răspund decât: prost sunteți dumneavoastră. 🙂

Din partea echipei DEX online,
Cătălin Frâncu

PS: Dacă continuați pe acest ton, vom publica aceste emailuri, și pe toate cele care vor urma, pe blogul nostru și/sau pe Facebook. Cred că utilizatorii noștri se vor distra copios. Alegeți-vă bine cuvintele.

                                                                        


From: george <gicuion@yahoo.com>
Subject: Re: [Ticket#2012042510000021] Unelte | Top |
To: DEX online <contact@dexonline.ro>
Vad ca de tampiti ce sunteti nu va dati inapoi de la prostie, cum dracu a tunat si va adunat ? mai bine v-ati corecta rahatul vostru ca pute pana departe.

Greva împotriva PIPA și SOPA, 18 ianuarie 2012

    Echipa DEX online a decis să participe la greva împotriva PIPA și SOPA din 18 ianuarie 2012 prin afișarea unui mesaj informativ pe toate paginile site-ului. Sigur, este posibil să deranjăm cei peste 100.000 de utilizatori care intră uzual pe site-ul nostru, însă considerăm că această cauză trebuie susținută!

    Mai multe amănunte găsiți pe această pagină.

DEX online folosește OpenID

Dacă aveți un cont pe DEX online și obișnuiți să stați autentificați în el, veți observa că mecanismul de autentificare s-a schimbat. DEX online a migrat la OpenID, o modalitate de autentificare mai simplă și mai sigură.

  • Nu mai este nevoie să rețineți un nume de cont și o parolă în plus;
  • Nu mai este nevoie să completați formulare cu detalii personale;
  • Un cont OpenID, odată creat, poate fi refolosit pe orice site care admite OpenID, iar numărul acestora este în creștere;
  • Sunt șanse mari să aveți deja un OpenID, deoarece multe site-uri mari (Google, Yahoo și altele) servesc și ca furnizori de OpenID;
  • Dacă aveați deja un cont pe DEX online, îl veți putea revendica și asocia cu OpenID-ul dumneavoastră, imediat după ce vă autentificați cu OpenID.

Dacă erați autentificați în momentul migrării, ați fost deconectat și veți fi rugați să vă autentificați folosind un OpenID.

Precizăm că autentificarea pe DEX online nu este necesară. Toate funcțiile de căutare funcționează exact la fel și pentru utilizatorii autentificați, și pentru cei anonimi. Site-ul răspunde chiar mai repede pentru utilizatorii anonimi, deoarece ei beneficiază de pagini precalculate, care sunt servite instantaneu. Vă recomandăm să vă autentificați numai în două cazuri:

  • Contribuiți cu definiții și doriți să primiți credit pentru ele;
  • Doriți să vă creați o listă de definiții favorite pentru acces ușor.

Definiții favorite

Începând de astăzi, utilizatorii autentificați își pot crea propria colecție de definiții favorite, pentru a le găsi cu ușurință mai târziu. După fiecare definiție veți găsi o legătură numită Adaugă la favorite. De asemenea, în meniul utilizatorului (sus-dreapta) veți găsi o legătură către colecția dumneavoastră.

Mulțumiri lui Andrei Gudiu, care a scris codul necesar!

DEX online caută programator

Descrierea postului

DEX online a crescut până la punctul în care avem nenumărate idei fascinante de implementat, dar nu avem destui oameni care să le implementeze (suntem doi programatori fără timp liber).

Oferta

În prezent DEX online caută un programator voluntar. O colaborare reușită pentru ambele părți se poate concretiza într-un contract de muncă la nivelul pieței, îndată ce DEX online va începe să angajeze.

Beneficii

  • Veți face un mare bine culturii românești. Nu este demodat sau jenant să fiți idealiști, chiar dacă trăim într-o societate care tinde să râdă de idealism. Noi așa suntem și ne este bine.
  • Unde împărțim munca, împărțim și prestigiul care decurge din ea. DEX online este o marcă îndrăgită; primim frecvent emailuri de mulțumire, iar ocazional stăm de vorbă și cu ziare, reviste, posturi de radio sau TV. În general, oamenii care află că lucrăm pentru DEX online au o reacție foarte puternică de admirație, mai ales când le spunem că suntem doar 6-7 oameni activi în echipă.
  • Întrucât oferta noastră se adresează în primul rând studenților, ne angajăm să vă fim mentori, să vă ajutăm să faceți o trecere ușoară și productivă de la teorie la practică, de la mediul academic la cel industrial. Unul dintre noi (Cătălin Frâncu) a lucrat la Google între 2001-2006 și promite să vă învețe, pe cât posibil, toate bunele deprinderi care formează un bun inginer software.
  • Pentru că nu avem o ierarhie, munca voastră va ajunge direct în producție și va fi folosită de un milion de oameni. Distanța între editorul vostru de texte și serverul principal al dexonline.ro este infimă.
  • Vă vom încuraja să lucrați, măcar din când în când, la componente de care avem nevoie stringentă (de exemplu buguri grave sau funcții foarte des cerute de utilizatori). În general, însă, veți putea lucra la absolut orice componentă vă atrage, cu singura condiție să nu faceți site-ul mai greu de utilizat sau mai lent.
  • Nu avem ședințe, ore fixe, obiective sau team buildinguri, dar nu refuzăm niciodată un pahar în Centrul Vechi.
  • Puteți lucra de acasă, în afară de cazul în care voi veți simți nevoia să lucrați alături de unul dintre programatorii DEX online.
  • Numărul de ore pe săptămână este la alegerea voastră. Vă recomandăm totuși minim 10 și ideal 20 de ore pe săptămână.
  • Dacă în timpul lucrului aveți nevoie de operatori umani care să proceseze volume mari de date pentru o cauză bună, DEX online poate coopta o echipă remarcabilă de voluntari.

Cerințe

  • Cunoștințe de PHP, MySQL, GNU/Linux
  • Cunoștințe de (sau dorința de a învăța din mers componente ca) Subversion, Smarty, AdoDB
  • Cunoștințe minime de algoritmi și structuri de date

Exemple de proiecte

Deoarece lumea ne tot întreabă „păi și ce mai e de făcut, nu aveți deja toate cuvintele?”, enumerăm o mică parte din proiectele la care ne gândim cu jind.

  • Depistarea automată a noilor cuvinte intrate în limbă. Avem nevoie de un crawler pe texte românești de încredere (ziare mari, literatură etc.) care să ruleze periodic și să țină o evidență a cuvintelor pe care nu le avem, împreună cu o frază din contextul unde au fost găsite. Când un cuvânt apare suficient de frecvent, el și toate contextele găsite sunt trimise unei echipe de lexicografi pentru a îi elabora o definiție (interfața pentru accesul lexicografilor trebuie și ea scrisă).
  • Exemple pe lângă definiții. Există multă literatură românească ieșită de sub incidența copyrightului pe care o putem indexa și servi pe marginea definițiilor, ca exemple (citate).
  • Restructurarea ghidului de exprimare. În prezent, ghidul este pe o singură pagină, nu este ordonat, nu este căutabil, iar articolele tind să fie mici și să nu dezbată toate argumentele. Unele înregistrări (de exemplu cea despre acordul substantivului „majoritate”) necesită un articol amplu de minim un ecran. Dorim să cooptăm un lexicograf și să-i creăm un sistem wiki în care să poată expanda acest ghid într-o serie de articole. Apoi, acest ghid trebuie integrat cu motorul de căutare („Ați căutat «majoritate»? Avem un articol detaliat despre folosirea acestui cuvânt!”).
  • O infrastructură pentru testare (unit testing, stress testing, functional testing etc.)
  • O unealtă pentru estimarea vocabularului unei persoane, după modelul testyourvocab.com.
  • Îmbunătățirea profilurilor de utilizator și integrarea cu OpenID; introducerea de „insigne” pentru diverse tipuri de contribuții, pentru a ne motiva voluntarii.
  • Restructurarea definițiilor într-un format XML general. Formatul curent (simple bule de text cu indicații pentru bold și italic) nu se pretează la analize statistice, are o redundanță uriașă între diversele dicționare și comasează sensuri, sinonime, expresii, etimologii indicații de uz (de exemplu „peiorativ”).

Puteți consulta lista noastră de buguri și idei grele și ușoare.

Filtru

Dacă următorul gen de întrebări vă sperie, probabil nu ați fi mulțumiți de munca la DEX online.

  • Ce se întâmplă de când tastez un URL în browser și până îmi apare pagina pe ecran? (răspunsul vostru ar vorbi câte puțin despre DNS, porturi, serverul de HTTP, cookie-uri, pagini dinamice, redirectări, Javascript, CSS și altele).
  • Ce este un cookie?
  • Care sunt diferențele între cererile de tip GET și POST? Când sunt de preferat una sau cealaltă?
  • Cum interclasez două șiruri ordonate de numere (de exemplu, interclasarea lui [1, 3, 5 10] cu [3, 4, 8] produce șirul [1, 3, 3, 4, 5, 8, 10])? Care este complexitatea? Cum interclasez k șiruri ordonate de câte n numere?  Care este complexitatea?

Descrierea proiectului

DEX online este o colecție de dicționare ale limbii române. Codul-sursă este software liber. O bună parte din datele deținute sunt de asemenea disponibile pentru descărcare și utilizare sub licența GNU GPL. DEX online are circa 1,4 milioane de vizitatori unici lunari și circa 11 milioane de pagini afișate lunar. Codul și datele au fost produse exclusiv prin eforturi voluntare.

Cum să ne contactați

Scrieți-ne la contact@dexonline.ro pentru a stabili un interviu pe teme de algoritmi și dezvoltare web.

Dicționarul de cuvinte recente – ediția a II-a

    Cu sprijinul celor de la Editura Logos, am importat Dicționarul de cuvinte recente, ediția a II-a al Floricăi Dimitrescu. Ce este foarte important: în acest dicționar majoritatea intrărilor beneficiază de cel puțin un exemplu (împreună cu sursa preluării). Sperăm ca această colaborare să continue și cu editia a III-a a dicționarului, plănuită pentru această toamnă!

dexonline pe facebook

    Din motive de popularitate am hotărît să ne exhibăm și pe facebook 🙂 Asta pentru că majoritatea utilizatorilor noștri intră în categoria 20-30 de ani, mult utilizatoare de rețele sociale. Sigur, acesta nu a fost argumentul hotărîtor, ci faptul că se pot deschide posibilități noi de dialog cu utilizatorii (de exemplu Websterul a început să aibă o legătură strînsă cu facebook-ul).
    De asemenea, acest experiment nu poate eșua, deoarece în cazul în care nu se vor fructifica avantajele folosirii unei platforme externe putem renunța la ea fără mari regrete…