Claudiu Persoiu

Blog-ul lui Claudiu Persoiu


Archive for the ‘Web stuff’ Category

Google stie acum unde stau

without comments

Acum mai bine de un an de zile am scris un blog, in care ziceam ca Google nu stie unde stau.

Problema era ca Goole Maps avea o acoperire deosebit de proasta pentru Romania, iar Yahoo! Maps este o alternative mult mai buna pentru aceasta parte a europei. Inca mai cred ca Yahoo! Maps este o alternativa mult mai buna dar am fost surprins totusi de un lucru. In decursul tipului am tot intrat pe Google Maps pentru ca sa vad cum mai sta acoperirea pe Bucuresti, practic era o singura cale reprezentata pentru a ajunge de la autostrada A1 la A2 si nimic mai mult.

Acum aproximativ o luna, am intrat din nou pentru ca trebuia sa construiesc o aplicatie de turism in Romania si… surpriza, surprize, chiar daca pozele din satelit sunt de calitate mai proasta acum, am putut nu doar sa gasesc folosind cautarea strada pe care stau dar si blocul. Mai mult de atat, am putut calcula trasee alternative catre diverse locatii din Bucuresti.

Se pare ca Google a inceput sa aiba ceva mai mult interes pentru aceasta zona din centru Europei, acum permitand formarea unei concurente reale cu Yahoo!. Asta este un foarte mare avantaj pentru cei care au telefoane cu Android si folosesc Google Maps ca aplicatie de GPS. Acum cativa ani, sa folosesti Google Maps in Romania era complet inutil, puteai sa vezi intradevar imaginile din satelit, dar cam atat, nu puteai sa gasesti adrese utile, iar daca erau cumva marcate pe harta nu puteai sa calculezi un traseu catre acestea.

Pana la urma aplicatia am rezlizat-o folosind Google Maps, desi inca sunt de parere ca Yahoo! Maps este o foarte buna alternativa, atat de punctul de vedere al calitatii cat si ca API. Si ca tot vine vorba de API, ambele mi se par ok si nu cred ca acest criteriu este unul de diferentiere intre cei doi giganti.

O chestie putin socanta totusi legata de Google stie unde stau a fost intr-o seara cand curios sa vad daca GPS-ul de pe telefonul meu functioneaza am iesit pe balcon. Totul a fost ok, m-a gasit cu o aproximatie intre 50 si 100m pe harta Google folosind conexiunea mea de wireless pentru transferul de date. Intr-o alta seara un prieten a venit la mine si am incercat acelasi lucru, tot pe aceeasi conexiune de internet, acelasi program Google Maps, cu o apximatie constanta de 100m.

Teoretic nimic anormal, totul a devenit bizar cand a doua zi am aflat ca de fapt telefonul lui nu are GPS, deci ce vedeam noi era ultima conecare de la dispozitivul meu… deci Google chiar stie unde stau… la propriu…

Written by Claudiu Persoiu

1 March 2010 at 9:38 PM

Posted in Diverse,Web stuff

Tagged with ,

Douglas Crockford despre JavaScript

without comments

Asteptam de ceva vreme video-ul acesta si intr-un final a aparut.

Douglas Crockford este una dintre cele mai importante persoane in comunitatea JavaScript. Modul in care pointeaza toate problemele legate de JavaScript mi se pare genial, parca te tine in tensiune pana la final sa vezi care sunt si partile bune.

Written by Claudiu Persoiu

10 March 2009 at 3:30 PM

Rel nofallow, “don’t fallow him please!”

with one comment

Toata lumea tanjeste dupa PR de la Google, dar cum sa faci sa nu dai PR fara rost?

Aceasta problema este foarte comuna, incepand de la site-uri de prezentare pana la blog-uri si forumuri. Sau mai exista si cazuri speciale cand preferi sa nu se indexeze anumite link-uri, cum ar fi link-urile care tin locul formularelor de tip GET.

Raspunsul este foarte simplu! Argumentul rel=”nofallow”. Sa luam un exemplu:

<a href="http://www.claudiupersoiu.ro">Claudiu Persoiu</a>

Cam asa arata un link normal, acum nu mai trebuie adaugat decat rel=”nofallow”:

<a href="http://www.claudiupersoiu.ro" rel="nofallow">Claudiu Persoiu</a>

Hmmm… ce mai trebuie? Nimic! Practic cu acest mic argument s-a rezolvat problema.

De multe ori pentru site-uri externe se marchiaza cu “external nofollow”, practic rezultatul este similar. In acest mod sunt marcate si link-urile de la comentarii de la acest blog.

Written by Claudiu Persoiu

6 February 2009 at 9:01 PM

Posted in Web stuff

Tagged with , ,

trafic.ro pe bani

with one comment

Arhicunoscutul site trafic.ro a devenit de curand serviciu pe bani, mai exact 10 euro fara TVA pe an.

Eu personal pentru acest blog folosesc google analytics, deci nu e ca si cum ma afecteaza pe mine dar undeva in sinea mea chiar imi pare rau. Era un mod foarte bun de a aflat date care altfel sunt condifentiale despre concurenta, era o unealta foarte buna si pe care multi o lasa complet neprotejata. Cu ajutorul trafic.ro poti vedea cuvinte cheie, surse de trafic si multe alte date foarte interesante din punct de vedere SEO. De asemenea cu acest serviciu puteai vedea cat de “sanatos” este traficul prin numarul de utilizatori care frecventeaza un anume site si cam ce rata de intoarcere au. Cu toate aceste date puteai sa faci un raport interesant chiar daca de multe ori si minimalist despre cum sa furi clientii unui site.

Dar toate acestea urmeaza sa se schimbe, o noua era in SEO din Romania se schiteaza.

Written by Claudiu Persoiu

6 February 2009 at 8:40 PM

Posted in Web stuff

Tagged with ,

Un index face diferenta

with 3 comments

Ca sa faci o aplicatie web in general ai nevoie de o baza de date. La scoala in general invatam ca “baza de date este administrata de administratorul bazei de date”. Teoretic asa ar trebui sa se intample, practic… ajungem sa ne facem singuri bazele de date de cele mai multe ori.

PHP este folosit in general cu un SGBD (Sistem de Gestiune al Bazelor de Date), de obicei aceasta este MySQL. Atunci cand o aplicatie incepe sa mearga greu in general se cauta metode de optimizare incepand de la reducerea sau inlocuirea functiilor lente (de exemplu echo este mai rapida ca print sau nl2br($text) este mai rapida ca str_replace(“\r\n”,”<br>”,$text)) pana la reducerea numarului de cereri http (in loc de mai multe fisiere css se foloseste unul singur). Totusi un mod foarte simplu pe care foarte multi nu il iau in calcul este acela de a adauga un index pe tabela.

Index-ul se adauga pe un camp pe care se fac sortari sau se pun conditii. Avantajul major este in momentul cand se extragi datele. Dezavantajul este atunci cand se introduc datele. Pe o tabela unde se fac modificari frecvent poate sa fie discutabila nevoia de un index, depinde de raportul de select-uri vs. insert-uri.

Cum se adauga un index:

ALTER TABLE tabela SET INDEX(camp);

Chiar zilele trecute aveam o interogate destul de greoaie pe mai multe tabele si nu intelegeam cum poate totusi sa mearga atat de greu. Am adaugat un index pe criteriul de filtrare si unul pe cel de ordonare iar in mai putin de 5 minute totul a devenit mult mai rapid, a devenit de 3 ori mai rapida interogarea (si nu am decat 2000 de inregistrari)!

Poate cateva milisecunde in plus nu par mare lucru, dar luati in calcul cateva zeci sau chiar sute de interogari pe o singura pagina, inmultiti cu numarul utilizatoriilor care acceseaza pagina simultan si… nu o sa mai apara atat de putin.

Written by Claudiu Persoiu

8 December 2008 at 10:39 PM

Posted in Web stuff

Tagged with ,

if(!WYSIWYG()) die();

without comments

Traim intr-o lume inconjurati de medii de programare.  Incepand de la Adobe Dreamweaver si Eclipse pana la notepad fiecare din noi foloseste un mediu de programare, un IDE (Integrated development environment) sau pe romaneste “mediu integrat de dezvoltare”.

Fiecare firma si individ are preferintele lui in functie de limbaj, costuri, complexitate etc. Probabil cel mai folosit din punctul de vedere al webdesig-nerilor este Adobe Dreamweaver, ba chiar acesta este preferat si de foarte multi programatori. Eu personal am testat Zend Studio for Eclipse varianta trial si pot spune ca sunt impresionat, cand vine vorba de programare in PHP este un mediu complet utilat, dar nu voi intra in mai multe detalii.

Cu toate ca lumea este plina de IDE-uri, atat cu licente platite cat si open-source multe firma prefera varianta notepad sau chiar am intalnit la o firma editate folosind MC (Midnight Commander, foarte similar cu Windows commander dar pentru linux). Motivele sunt simple de cele mai multe ori, bani, obisnuinta, licenta incompatibila sau chiar lipsa de interes.

Eu unul pur si simplu nu pot sa-i inteleg pe cei care fac aceste alergeri, ok eu nu sunt designer si nici nu pretind ca sunt sub nici o forma dar fara un mediu cu WYSIWYG (What You See Is What You Get) ma simt terminat. Un mediu vizual poate sa creasca productivitatea considerabil si sa scada numarul de erori intr-un site, intr-un cuvand este o investitie nu o cheltuiala si ar trebui perceputa ca atare. Pentru mine sunt trei lucruri esentiale intr-un IDE: 1 sa aiba un editor WYSIWYG, 2 sa aiba autocomplete (nu pentru ca nu stiu sintaxa, dar ma ajuta sa scriu cod mult mai repede si mai corect), 3 sa aiba suport FTP ca sa pot lucra direct pe server. Daca tu nu folosesti asa ceva ar trebui sa te gandesti serios la asta, iar daca seful tau nu se gandeste la asta ar trebui sa te gandesti serios la care sunt prioritatile lui!

Concluzia, alege bine mediul de programare pentru ca el va determina cat de repede si bine vei lucra in continuare.

Written by Claudiu Persoiu

1 November 2008 at 1:15 AM

Posted in Web stuff

Tagged with , ,

Zend framework certification

without comments

De putin timp Zend a lansat programul Zend Framework Certification. In cadrul programului de certificare, utilizatorul are la dispozitie manualul de referinta, ghidul de studiu, training si un voucher pentru examenul de certificare (si sa nu uitam un tricou foarte interesant 🙂 ).

Avantajele certificarii sunt aceleasi ca si la ZCE in PHP5.

Totusi fata de programul de certificare in PHP5, acest program are cateva lucruri diferite, cum ar fi:

PHP5 Zend framework
– este universal valabila pentru toti cei care fac programare in PHP5 – este folositoare doar celor care lucreaza cu… ZF
– este universal – exista si alte frameworkuri
– trecerea la alte versiune nu implica decat cunoasterea diferentelor – trecerea la alt framework greoaie

Trecand peste aceste diferente, atitudinea Zend este una bine venita, pana la urma atrage dupa sine un standard pentru in frameworkuri. Problema este ca nu sunt universal valabile, pana la urma chiar daca nu toti folosim un framework de pe piata, avem tendinta sa ne construim propriul framework.

Invatarea unui astfel de framework are totus avantajul de a oferi o noua perspectiva asupra lucrurilor, ne ajuta sa ne construm o imagine mai clara la ce trebuie sa ne asteptam de la frameworkul folosit. Pe de alta parte, un framework cum este Ruby on Rails a inspirat la randul lui multi programatori in modul cum un framework ar trebui construit, acesta avand echivalente in limbaje cum ar fi Java si evident PHP, fara ca multi dintre ei sa migreze la el. Si ce se intampla daca acum te certifici in el iar apoi te implici in proiecte care folosesc alte frameworkuri?

Pana la urma aceasta este tendinta, asa cum programarea obiectuala a oferit o perspectiva noua pentru refolosire fata de programarea procedurala, asa un framework are tendinta sa aduca programarea orientata obiect la un alt nivel, sporind gradul de refolosire al codului. Dar… doar Zend Framework este solutia?

Written by Claudiu Persoiu

28 September 2008 at 10:51 AM

Posted in Web stuff

Tagged with , ,

Zend PHP5 Certified Engineer

without comments

Si a venit si momentul examenului (a si trecut). Dupa poate ceva mai putin timp decat ar fi trebuit pentru studiu, in ultima zi de concediu am decis sa sustin examenul.

Taxa am platit-o direct la Zend cu un card Visa Electron. Apropo, sa nu faceti aceeasi gresala ca mine, nu incercati sa platiti cu alt card decat cel personal! Am avut aproximativ 5 incercari, doua telefoane in Germania si unul in USA am ajuns sa-mi fac card pentru a cumpara examenul si alte cateva produse! Evident exista si alte metode de plata, dar nu la fel de rapide.

Cand am ajuns la programare, a fost deosebit de simplu, poate prea simplu pentru mine. Totul a mers conform planului, m-am programat si am asteptat ziua examenului.

Ziua examenului. Pentru ca nu aveam nici cea mai mica idee unde se afla centrul ales de mine din cadrul complexului Facultatea de Drept Bucuresti, am decis sa dau un telefon preventiv… nici un raspuns, am mai incercat, era suficient de tarziu cat sa fie cineva acolo si totusi… nici un raspuns.

Am hotarat sa ma duc acolo. Nu mica mi-a fost surpriza cand nimeni nu a auzit de Pearson VUE, iar cand spun asta nu ma refer la femeile de servici care tineau locul de portarului, ci la cei care raspund la telefonul de pe site. Dupa suficiente legaturi din centrala am gasit si centrul (undeva in dreapta) este de fapt un centru CISCO afiliat Person VUE.

Examenul a fost exact asa cum a fost descris pe site, singur in sala, fara obiecte personale, iar acelea care poti sa le iei cu tine in sala de examen nu pot sa le scoti. Examenul este supravegheat cu o camera, care ma facea sa cred ca voi auzi “zzz, zzzz” in timpul examenului de la zoom, dar nu a fost asa.

Examenul, asa cum scrie si in manualul de la Zend, se bazeaza pe experienta cu PHP. Trebuie sa ai cel putin idee de elementele PHP si in special sa ai ochiul format pentru debuging. Cum era de asteptat se analizeaza mai mult elementele atipice de implementare, functii standard PHP si mai putin capacitatea de a scrie cod, dar pana la urma este grila, nuprea aveau cum sa faca altfel. Examenul nu mi s-a parut foarte dificil, dar nici simplu. Se vede clar experienta cu PHP in intrebari, se vede cine s-a “jucat” si cine nu.

La finalul examenului, mi-a aparut “Congratulations you have passed the exam”, sau ceva de genul asta, eram prea fericit ca sa mai memorez.

A doua zi lucratoare am avut si profilul completat pe site, desi puteam sa-l editez la cateva ore de la terminare (de cand am ajuns acasa).

Acum astept diploma care se trimite prin posta, cred ca asta se trimite din Israel deci… o sa fie un cadou frumos de Craciun probabil…

Am uitat sa amintesc de “mock” testele pentru examen. Desi am primit la pachet 10, nu am folosit decat 3, iar cu fiecare test facut scorul a crescut. Din pacate motivul pentru crestere este ca intrebarile se repeta (nu toate dar suficiente) si nici macar nu le-am regasit in examen, forma este asemanatoare, dar diferentele sunt mari in continut. Va sfatuiesc sa nu luati pachete mari pentru ca rezultatele nu o sa mai fie relevante dupa primele teste.

Am citit pe alte bloguri care testul este mai ushor decat examenul. Eu nu am aceeasi parere, gradul de complexitate este de fapt similar, doar intrebarile deosebit de stufoase nu se regasesc in examen, in rest sunt similare.

Written by Claudiu Persoiu

17 September 2008 at 8:36 PM

php|architect’s Zend PHP5 Certification Study Guide – 2nd Edition

with 2 comments

php|architect’s Zend PHP5 Certification Study Guide – 2nd Edition, sau mai exact ghidul recomandata de Zend pentru sustinerea testarii in vederea obtinerii ZCE PHP 5.

O carte subtirica pentru un limbaj peste 1000 de functii (var_dump(get_defined_functions()); – 1297 in versiunea mea), dar exista o explicatie, aceasta carte NU ESTE UN MANUAL! este doar un ghid, manualul il cunoastem deja, se gaseste pe site-ul php.net.

Este o carte foarte interesanta, cel putin a fost pentru mine. Aceasta atinge practic toate subiectele posibile in cadrul examenului de certificare, dar NU le trateaza in detaliu. Daca intentionati sa studiati pentru certificare folosind aceasta carte, trebuie sa aveti manualul aproape, pentru ca nu se gasesc toate explicatiile in carte.

Pe alocuri mai sunt greseli, chiar daca este a doua editie, lucru care mi se pare bizar. Din fericire ele sunt destul de usor de reperat.

Editia a doua mai trateaza doua noi subiecte, respectiv PDO si mysqli. Chiar daca sunt tratate pe scurt, eu am mai gasit lucruri care nu le stiam in aceste capitole (ma indoiesc ca erau critice pentru a trece examenul, dar cred ca sunt utile pentru experienta mea).

Pana la urma este o carte interesanta, si nu de putine ori citind ma gandeam “nu stiam ca se poate face si asa”.

Eu am cumparat-o de la Zend, o data cu certificarea, un set de 10 teste si doua tricouri (php geek fashion 🙂 ), am ales livrarea prin posta, pentru ca era mai putin de jumatate fata de DHL si surpriza, pachetul a venit la doar o saptamana de cand am fost anuntat ca a plecat! Evident pachetul a venit de la un centru apropiat (element 5 Germania), desi initial ma gandeam ca o sa fie livrat din SUA sau Israel si o sa fie un frumos cadou de Craciun.

Written by Claudiu Persoiu

17 September 2008 at 7:21 PM

Posted in Diverse,Web stuff

Tagged with , , ,

Google Lively si Google Chrome

without comments

Acum ceva vreme -nu prea multa ca nu da bine- google a lansat Google Lively. Aflata inca in varianta beta, unii il asemuiesc cu Second Life, iar altii il numesc pur si simplu “chat interactiv”. Interfata nu este tocmai reprezentativa pentru Google, aceasta este destul de incarcata, mai ales pentru Google (mult mai mult de 3 butoane) si complicat de folosit. Totusi inca am incredere in ei ca atunci cand produsul va fi gata, se va ridica la standardele Google.

Aflat in versiunea beta, momentan este disponibil doar pentru IE si FireFox pentru Win XP si Vista.

Nu lipseste nimic? Dar cum ramane cu browserul de la Google, Google Chrome e nou si e doar beta, dar pana la urma oare chiar nu s-a gandit nimeni la problema de compatibilitate dintre produsele Google? Sa speram ca pe masura ce se vor apropia de versiunea finala, lucrurile se vor schimba.

Incep sa cred ca Google creste prea repede, iar o data cu asta calitatea sa nu inceapa sa scada.

Written by Claudiu Persoiu

14 September 2008 at 4:47 PM

Posted in Web stuff

Tagged with , , ,