11 May 2009

Liniuţa de la Lujerului

Joi seara am fost într-un bar-restaurant pe care nu-l recomand nimănui din cauza unor incidente din ultimii doi ani, la un concert Sue Paparude.

Mă intorceam eu acasă pe la ora 1:00 şi ce mi-e dat să vad fix in intersecţia mareaţa de la Lujerului. Doi agarici îşi dădeau semnale la stop pentru o liniuţă sau mai bine zis pentru o curbiuţă. Veneau dispre Plaza Romania şi vroiau să se tragă de la stop făcând stănga spre Gorjului. Vummm-vummm-vumm, se face verde şi bagă. Cum fac baieţii stânga, cu avantajul celui din interiorul curbei, cât pe aci să dea fix in Loganul de la Poliţia Comunitară, care venea dinspre Sir si mergea spre Plaza deci avea prioritate.

Ce s-a întamplat mai departe e de domeniul SF. Opreşte Poliţia in intersecţie, agaricii evită o ciocnire monumentală. Iese un nenea poliţist (P) dintr-o maşină iese un nenea şofer (Ş) de curse şi la urechile mele ajunge următorul dialog:
P: Ba boule ce crezi că faci?
Ş: (Iese din maşină), ne scuzaţi domn'... salut bă Gicule, aoleu ce bine ca eşti tu!
P: Bai Marius, ce pula mea faci mă vrei să mă bagi în belea...
Ş: Iartă-mă bă, am vrut şi noi să vedem care duce mai repede la piaţă, înţelegi tu?
P: Da băi Marius da dacă mă loveai trebuia să te duc la secţie, şi te lua beleaua... vezi şi tu că pe Maniu mai e Poliţie, pula mea că ai avut noroc...
Ş: Hai că dau o bere dacă îl fac pe ăsta...
P: Păi aşa să faci, pe cât vă trageţi?
Ş: Eh, doar aşa... da tot dau o bere ca esti băiat de băiat.
P: Ăsta cine e?
Ş: Unu... unu cu un Golf tunat, o ambala pe Timişoara.
P: Bine bă ai grijă ca la Apaca mai e unii de la rutiere!
Ş: Nuuuu, că noi mergem spre piaţă.
P: Bine bă, vă dau startu'?
Ş: Nu mă, las' că pornim de aici din mijloc (erau in mijlocul intersecţiei cât au dialogat)
Guess what? S-au urcat in maşină şi la verde de pietoni au contnuat...

Adobe First Time Quality Engineer 2.0 - Interview

Am cam rămas în urmă cu postatul aşa că acum o să vă povestesc despre inteviul de miercuri (06.05.2009).

Pentru a răspunde la întrebarea mea din postul anterior, m-am hotărât să urmez seminarul din mai multe motive: pentru că îmi place să invaţ (cred că v-aţi dat seama de asta :P ), pentru că mă intrigă titulatura de Quality Engineer (QE) pe care o folosesc cei de la Adobe (chiar se ascunde ceva în spatele ei), pentru că am făcut testare funcţională HW şi totuşi sunt pasionat de SW şi pentru că vreau să ştiu cât mai multe. Mai sunt şi alte motive pentru care nu am refuzat să mă duc la intreviu dar sunt pe al doilea plan.

Şi uite aşa am ajuns miercuri seara in faţă la Anchor Plaza, o clădire de birouri modernă, din sticlă, unde îmi doream de multă vreme să intru. Am fost întâmpinat de echipa de security care trebuia să mă înregistreze ca vizitator şi să mă invite în clădire. De invitat m-au invitat şi mi-au arătat cum să ajung la Adobe. Tot ce trebuie să fac e să apăs pe panoul de comandă de langă lifturi pe etajul 9 şi să citesc litera liftului pe care îl aştept. Apas 9, văd C, fac dreapta văd 6 lifturi, mă uit dupa C, îl găsesc, mă aştepta cu uşile deschise, dau să intru şi mă refuză, se închid uşile. Se pare că am fost prea lent. Mă întorc apăs iar 9, văd F, mă orientez ceva mai repede dar nu destul de repede pentru liftul F, nici el nu m-a plăcut. Nervos scanez toate literele pentru a putea alerga hotărât în lift, apăs 9, alerg după colţ, sar în lift şi se pare că mai era cineva care nu înţelegea entuziasmul meu ieşit din comun la călătoria cu liftul. Liftul e cât un lift din Leu A de mare, suportă 13 persoane, în total 1300Kg (spre satisfacţia mea, 13 persoane ca mine) şi are TV.

Am ajuns la 9, mă întâmpină un tip şi mă invită in sala "Valahia" (vă explic în alt post cum e cu Valahia asta), o sală de 150mp cu o masă de ping-pong, biliard, foosball, bucătărie si altele. Panoramă prin peretele de sticlă direct spre blocul meu. Sunt invitat într-o altă sală mai mică (are şi ea un nume) şi îl aşteptăm pe cel de-al doillea angajat Adobe pentru interviu.

La interviu (care se vrea să fie o discuţie liberă) am discutat despre ce am făcut, despre ce îmi place să fac şi mai ales despre ce am făcut şi nu a mers bine. După asta incepe o discuţie despre cum cred eu că se face QA (Quality Assurance) pentru o sticla de plastic. Aici sa vezi imaginaţie brută din partea mea. Noroc că dispun de ea, cred că au fost încântaţi de modul în care privesc eu sticlele de plastic. De aici am intrat intr-o sumedenie de situaţii imaginate despre cum aş conduce echipa de QA la acea fabrică de sticle, şi mai ales ce aş face în diferite situaţii impuse de superiori.

După 40 de minute am plecat la fel de relaxat cum am venit dar având nişte curiozitaţi despre modul în care au abordat interviul. Totul are legătura cu această titulatura de QE care nu reprezintă doar un tester.

Joi dimineaţa la 11:00, evident dormeam, m-a sunat unul dintre cei care organizeaza acest seminar să mă felicite pentru calificarea între cei 12 care chiar vor urma seminarul. Nu ştiu ce am zis, eram cam adormit după o noapte de muncă la un amărât de lexer pentru diploma. Abia când m-am trezit mi-am dat seama.

Şi uite aşa de astăzi am început cursurile. Voi mai scrie despre cursuri în următoarele zile.

05 May 2009

Adobe Learning Center - First Time Quality Engineer 2.0

Săptămâna trecută am completat un inteviu online de la Adobe pentru a urma un training legat de testarea produselor software. Pentru asta tot ce trebuie să faci este citez:
... un candidat nu trebuie sa se prezinte cu nimic altceva decat cu dorinta de a invata lucruri noi si de a-si demonstra aptitudinile intr-un mediu educativ si confortabil.
Eu am urmat interviul online doar pentru că mi-a trimis Cristina link-ul şi nu-mi venea să cred că in subsolul paginii scria:
Adobe isi rezerva dreptul de a folosi informatiile completate de dvs. la misto in formularul de mai sus. Conform termenilor si conditiilor care reglementeaza acest site, Adobe nu va divulga unei terte persoane numele, adresa de e-mail sau numarul dumneavoastra de telefon fara consimtamantul dumneavoastra, cu exceptia cazurilor prevazute de lege cand comunicarea acestor informatii este necesara.
Testul consta într-o aplicaţie online în care trebuia să indentifici in 5 minute câteva bug-uri şi trebuia să acoperi câteva test-case-uri. Când găseai un bug trebuia sa apeşi butonul "Bug found". Pentru fiecare bug primeai 40 puncte (am identificat 4 buguri in final), pentru fiecare test-case priemai 60 puncte (am indentificat 10 test-case-uri) şi pentru fiecare bug fals se scădeau 20 de puncte.

Prima data când l-am facut pe bune am descoperit 3 bug-uri şi am acoperit 9 test-case-uri, dar nu prea m-am gândit serios, mai mult la mişto. A doua oara am şters cache-ul browser-ului şi l-am completat cu date dummy reuşind sa iau (cred eu) punctajul maxim.

După testul online mai urma un set de trei întrebări legate de ceea ce cred eu că sunt calităţile unui tester şi motivaţia pentru a urma acest seminar. La acestea am completat serios prima dată (bazându-mă pe experienţa de Verification Engineer de la Amiq).

Astăzi am fost luat prin surprindere de către un angajat Adobe care mi-a spus ca m-am calificat în primii 30 (din 300 care au completat serios formularul sau 680 care doar au făcut testul) şi sunt invitat la o discuţie liberă în zilele ce urmează pentru a-mi caştiga un loc în echipa de 12 oameni ce vor urma acest seminar. Spre final m-a întrebat de ce vreau să urmez acest seminar, moment în care a trebuit să mă gândesc bine dacă vreau să-l urmez şi să inventez ceva repede pentru a răspunde.

Am stat un pic să mă intreb dacă vreau să urmez seminarul. Acesta pare destul de interesant dar oare am timp? Ce conţine acest seminar:
  • Day 1: Where does testing fit in the Software Product Lifecycle
    • Introduction
    • General principles about testing
    • Testing in the product lifecycle
    • A tester’s role
    • Documents: use-cases, specs, test plans
  • Day 2: Test design, testing methodology
    • Types of testing
    • Test design techniques - theory + hands-on
    • Test cases - theory + hands-on
  • Day 3: Practical tests and bug reporting
    • Bug reporting - theory
    • Create test cases - hands-on
    • Run test plan and report bugs - hands-on
    • Exploratory testing
  • Day 4: Automation
    • Automation - General overview
    • Tools: QTP, Selenium, JMeter
  • Day 5: Shadowing an Adobe QE on his day-to-day job
M-am hotarât sa merg la interviu şi sa fiu serios, cine stie poate mai învaţ ceva.

Which Driver is Better for Radeon Xpress 200M in Linux: DRI or FGLRX

După cum spuneam într-un post anterior am început să folosesc destul de des configuraţia dual-screen: display laptop + display IBM. Am avut mari probleme folosind ATI Config Center pentru ca pur şi simplu merge când vrea el. Aşa că m-am gândit să revin la driver-ele DRI (Direct Rendering Infrastructure).

Înainte de asta am făcut nişte benchmark-uri pentru a vedea performanţele DRI vs FGLRX (driver-ele closed source de la ATI). Rezultatele au fost oarecum neaşteptate. Am făcut 2 teste. Unul in care am testat performanţa GTK-ului folosind GtkPerf şi tema Mist şi unul in care am testat performanţa 3D în OpenGL folosind glxgears (dar din câte văd lumea spune că nu este nici pe aproape pentru a-l folosi ca benchmark).

Pe scurt rezultatele au fost următoarele:
  • GTK - mai rapid cu ~15% folosind DRI
  • 3D - mai rapid cu ~40-90% folosind FGLRX
Ţinând cont că cei care dispun de Radeon Xpress 200M nu folosesc lapop-ul pentru aplicaţii 3D se poate face un compromis pentru utilizarea driver-elor DRI.

Avantajele sunt următoarele:
  • Pe HP NX6325 merge setarea liminozităţii display-ului în X, nu doar în TTY.
  • Utilitarul de setare a disply-urilor din Gnome Ubutntu merge perfect.
  • 2D e mai rapid, deci pentru majoritatea utilizatorilor este un plus
Momentan eu ramân cu DRI probabil că pentru totdeauna pentru că cei de la ATI vor să scoată un driver secundar (leagacy) pentru acest chipset deci nu vor mai apărea cine ştie ce îmbunătăţiri.

Firefox Stupid Bug in Dual Screen Configuration

De când programez acasă am început să folosesc destul de des configuraţia de dual-screen. Pe un ecran ţin Eclipse-ul pe celălalt ţin documentaţia. Până de curând îmi era greu sa folosesc dual-screen pentru că ecranul lapop-ului avea rezoluţia de 1400x1050 iar ecranul secundar 1024x768. De când am s-a stricat ecranul laptop-ului şi l-am înlocuit cu unu de 1024x768 totul arata bine.

Am intrat ieri într-o sesiune de programare şi am rămas uimit să constat că aveam Firefox-lul pe un display şi meniul de auto-completition pentru address bar în celălalt display. Păi zicei şi voi dacă se poate folsi aşa :).

Fix-ul este simplu: înainte de a seta configuraţia dual-screen închideţi toate sesiunile de Firefox şi deschideţi alt Firefox dupa ce intraţi in dual-screen.

[Link] Ajax Based JavaDoc Collection

http://www.jdocs.com/

03 May 2009

MOC - Music on Console

După multă sufreinţa cu Rhythmbox un player şi manger foarte bun de muzică am ajuns la concluzia că am nevoie de ceva gen Winamp. Am încercat XMMS si Audacious dar si ele mai mureau din când in când. În căutarea disperată dupa o soluţie Linux + Gnome am ajuns să ma uit după player-e de consolă.

Aşa am dat peste MOC si CMus. Şi ca de obicei pentru o lista de feature-uri asemănătoare screenshot-urile au făcut diferenţa. Am ales sa încerc MOC.

MOC este un player de consolă decent. Playlist-urile se pot salva in format m3u iar formatele cunoscute includ mp3 şi ogg, deci in mare e cam tot ce am nevoie. Eu am rămas un old style mp3 listener şi prefer player-erele directory based, şi cum de curând cei de la last.fm m-au supărat cu cenzurile si taxele lor, acest feature nu mai contează. MOC poate folosi ALSA şi OSS şi cred ca şi alte managere audio.

În principiu este destul de straightforward având câteva shotrt-cut-uri de bază asemănătoare celor din Winamp.

Partea cea mai frumosă este că poate rămâne in background şi ocupă foarte puţine resurse şi nu este influenţat prea mul de încărcarea procesorului.

Îl recomand celor ce preferă stilul minimalist directory-based dar încercaţi şi player-ului CMus, poate merită.

Povestiri de la Doamna Elena

Ma aflu în sanctuarul etern de la facultate ascultând in background acelaşi post de radio cu muzica house şi in foreground o chitara şi o voce cristalină cântând "Vis Pierdut - Iris". Doamna Elena ne impărăşeşte o amintire din copilărie:
Păi cand eram eu mică toţi aveam ceas, numa' tata săracu care mucea nu avea. Aşa că l-am întrebat de ce nu ai ceas tată. Şi el mi-a zis "Da ce-s prost să-mi iau, pai când vin târziu acasă şi mă intrabă mă-ta cât e ceasul eu îi zic: păi de und' să ştiu că n-am". Da avea al dracu', îl ţinea in dulap, impreună cu verigheta.
Acu' înţelegeţi de ce nu port eu ceas? Ia ziceţi la ce oră am postat asta şi unde eram, că nici eu nu ştiu.

02 May 2009

Eclipse JVM Configuration Tips for Performance

You can increase Eclipse performance on a 1GB+ computer using this JVM (Java Virtual Machine) settings. You must add them in eclipse.ini file after -vmargs parameter:
-Xms512m
-Xmx512m
-XX:PermSize=256m
-XX:MaxPermSize=256m
-Xverify:none
-XX:+UseConcMarkSweepGC
-XX:+CMSClassUnloadingEnabled
Detailed information about them can be found here :)

Eclipse 3.4 SWT Tooltips and Internal Borwser Problem on Linux

Starting with Eclipse 3.3 the tool-tips can contain HTML tags. Also the internal browser used for Javadocs and Eclipse Help uses HTML. For all these SWT needs Mozilla XULRunner.

Since the days I was workin for Amiq I've observed that there are some problems with all these. After a lot of time spent searching the internet together with Bulă we didn't found any solution to this problem. All the solutions were related to XULRunner. We managed to solve the problem somehow but we couldn't find exactly what the problem was.

We thought that it's a problem related to the linux distro we used because on some distributions the tool-tips were fine and on other distributions they were hideous.

Recently I've had the same problem on Ubuntu 8.10. Guess what? The problem was related with XULRunner. It seems that the new version of XULRunner 1.9 isn't perfectly compatible with SWT.

So the obvious solution is to use an older version of XULRunner (version 1.8.1). All you have to do is to install XULRunner 1.8 and add the next line in eclipse.ini:
-Dorg.eclipse.swt.browser.XULRunnerPath=<XULRunner-1.8-directory-path>
Now it should look normal.