The rocky road to Limerick

Am fost pe drumuri în weekend :) Sâmbătă am plecat pe la 15 de la Bușteni, și după o scurtă pauză în Gara de Nord, am hotărât să încerc conexiunea pe tren cu Aeroportul de la Otopoeni. Am fost numai eu și cu încă o doamnă. Sunt 23 de km și trenul merge de poți fugi pe lângă el, apoi te transferi într-un microbuz care te duce până la terminal. Partea bună este că nu e scump (e 3 lei cu reducere), și, mai important, e că e previzibil (adică trenul pleacă la oră fixă și ajungi într-un timp bine determinat la aeroport), spre deosebire de liniile express de la RATB.

Anyways, am ajuns în aeroport cu 3 ore înainte de avion, mi-am făcut asigurarea de sănătate, și am găsit (surpriza!) un WiFi fără parolă fără nimic pe holul dintre Plecări și Sosiri (de notat pentru cei care trebuie să piardă vremea prin Otopeni).

Zborul a durat înca 4h, dar a fost OK, ce am prins eu din el, și la Check-in am putut să aleg un loc la ieșirea de urgență, unde scaunul din fața mea era lipsă și puteam să mă întind cât voiam :). Singura chestie aiurea a fost că pe rândul meu au fost 3 țoape (sau pițipoance) plecate spre Dublin, cu laptopul cu manele și pline de dume. Eh well, ce bine că pot dormi în orice condiți …

În Dublin Airport am ratat ultimul autobuz de Limerick, așa că a trebuit să petrec noaptea în aeroport. Am găsit niște scaune confortabile la McDonalds la Mezanin (pentru cine are de petrecut nopți prin DA, e foarte ok acolo :P), am citit vreo 2h BOFH-uri pe telefon (no free WiFi), și după aia am fost shutdown :P De notat că toate localurile de la Mezanin sunt folosite pe post de paturi noaptea, abia am găsit un loc :).

Pe la 7 am luat autobuzul de Limerick, și, într-un final, am ajuns aici pe la 11 jumate, aproape 24h de la plecarea de la Bușteni (dacă luăm în considerare și diferența de fus orar).

So yes, rocky road indeed :P

King John's Castle
Ecluza de la intrarea Abbey River în Shannon

PS. Dacă vă întrebați care e povestea cu titlul, este o piesă care se numește The Rocky Road to Dublin, și care este pe coloana sonoră la Sherlock Holmes, atunci când boxează Sherlock în ring cu un alt tip, de-l bate pe ăla de-i sună apa-n cap.

Seminar pentru Revizuirea Materialelor Pedagogice

Am fost de joi până sâmbătă la Bușteni, să particip la Seminarul pentru Revizuirea Materialelor Pedagogice ale Cercetașilor României. M-am bucurat să mă întâlnesc cu prieteni vechi și noi. Seminarul a ținut până duminică, dar eu sâmbătă am plecat în Irlanda (scriu un pic mai încolo și despre asta), iar până sâmbătă am avut mai multe sesiuni „de pregătire”, bine-venite, mai ales pentru colegii mai tineri din echipa națională de programe, dar și pentru mine :).

Am încercat să punem o ordine în obiectivele educative ale organizației, să le aliniem între ramurile de vârstă, și am avut doi parteneri de la Creativ (Horațiu și Silvia) să ne ajute să ne proiectăm activitățile în așa fel încât ele să fie relevante pentru obiectivele pe care ni le-am stabilit.

Bianca și Mary (de la European Scout Region) au ținut mai multe sesiuni despre RAP (Renewed Approach to Programme), prin care am trecut destul de în trombă (așa, cam într-o zi), dar prezentarea procesului a fost utilă și, pentru mine, a mai pus puțină ordine în gânduri.

Doctorat progress

Am tot zis că o să vorbesc un pic aici despre proiectul meu de doctorat și în ce stadiu suntem acum cu el. Here goes.

Tema generală a proiectului este conversia imaginii în sunet, cu aplicații în ghidarea nevăzătorilor. Adică vrem să transmitem unui nevăzător un sunet care să descrie scena pe care o are în față, în sunet. De aici, pornind de la conceptul de brain plasticity, sperăm ca nevăzătorii să poată să își re-antreneze zona din creier responsabilă cu captarea imaginii pentru a prelucra informația sonoră pe care o suprapunem noi sunetelor existente. Există ceva cercetare în domeniul ăsta, și eu sunt în procesul de a descoperi exact câtă și ce rezultate are.

Între timp, ne-am propus să facem niște teste, să ne facem o imagine asupra diferitelor abordări posibile. Continuând munca începută de Alex Iordan la proiectul lui de diplomă, am scris o aplicație care folosește gstreamer (pentru captură), PIL (pentru procesare imagine), glade și pygtk (pentru interfață) și pyaudiere (pentru generare sunet), pe care să o putem folosi în teste. Mi-a luat ceva vreme până am citit toate cele, dar acuma merge destul de ok.

În principiu, preiau imaginea de la un webcam, o trec în grayscale și apoi în imagine binară (alb / negru). Pe imagine definesc macropixeli (pentru a mă ajuta cu viteza de procesare :P) în funcție de care decid dacă imaginea pe care o văd este în interiorul unei ținte, dacă am prins și din țintă și din fundal sau daca văd doar fundal. Evident, testele sunt extrem de simple, cu doar două culori, ținta și fundalul, și doar două dimensiuni.

Obiectivul testelor de acum este de a vedea dacă prin mișcarea capului și limitarea puternică a dimensiunii imaginii poți să îți dai seama care sunt formele pe care le ai în față (curbe, unghiuri drepte, colțuri, dimensiuni …). Săptămâna trecută, înainte să plec la Alba, am făcut un prim rând de teste, și a mers destul de bine. Evident, sunt și lucruri care nu au mers atât de bine (spre exemplu, sunetul pentru cele trei cazuri posibile este continuu și înnebunitor), dar pentru asta avem versiunea 0.02 :P

Astăzi am făcut partea de binarizare și m-am mai jucat un pic cu pyaudiere pentru generarea de sunet intermitent.

Deși proiectul ăsta este mai puțin despre software decât despre alte chestii, ta-daaa, un screenshot din varianta curentă a aplicației:

Eyecam în acțiune

Alte chestii utile prin GNOME

De câteva zile încerc să îmi găsesc un sistem cât mai bun de organizare a ideilor, a lucrurilor de făcut, a întâlnirilor și așa mai departe. Folosesc Tasque (despre care cred ca am mai scris) pentru gestiunea task-urilor, integrat în Gnome-Do (despre care cu siguranță am mai scris).

Tasque ia task-urile din mai multe back-end-uri, eu folosesc backend-ul Evolution (pentru că de acolo le pot sincroniza simplu și cu alte servicii, cum ar fi mobilul, când oi avea unu suficient de deștept). Allright, acuma intră în scenă Hamster, un proiect de gestiune a timpului despre care am mai scris. Hamster are un feature de care eu nu am știut atunci când am început să îl folosesc, și anume când îi spui activitatea de care te ocupi și pe care vrei să o urmărești, îți sugerează din task-urile existente în Evolution. Coool!

Statistici Hamster dintr-o zi productivă :P

Ok, mergând mai departe, m-am uitat un pic prin Tomboy. Tomboy este un sistem de note-taking (care nu este nicicum apropiat ca și complexitate cu OneNote de la Microsoft), care este de fapt o implementare a unui wiki, orientată pentru Desktop și pentru note. Este extensibil, prin forma unor plug-in-uri (Tomboy este scris în C#/Mono). Printre altele, știe să link-uiască între note, dar și să introducă link-uri spre fișiere și chiar și spre emailuri din Evolution.

Tomboy suportă sincronizare, și asta este îndeosebi util în combinație cu back-end-ul pentru UbuntuOne. Notele din Tomboy pot fi sincronizate cu notele din Evolution (și apoi de acolo cu notele de pe telefon, spre exemplu), folosind Conduit. Tomboy mai are și alte feature-uri cool, și câteva pluginuri third-party, cum ar fi un plugin care deschide o notă la un moment dat într-o zi.

Slightly offtopic, am fost impresionat să văd ca Pidgin suportă spellcheck în box-ul pentru mesaje.

Acum câteva zile am descoperit un progrămel, blueproximity, a cărui utilitate este discutabilă, dar al cărui factor de coolness nu este. blueproximity folosește puterea semnalului de pe legătura cu un alt dispozitiv bluetooth (gen telefonul mobil) pentru a lock-ui sau a unlock-ui calculatorul. Pentru un exemplu concret, în setup-ul meu, dacă plec la mai mult de 3- 4 metri de comp, se încuie, și se descuie automat când mă apropiu de el :D

Și ultima chestie care intra în post-ul ăsta este beagle, un serviciu de indexare și căutare, mai complex și extensibil decât tracker-ul original din Ubuntu. Beagle are și un gui, care nu are un nume deosebit (aplicația se numește Search). După ce indexează fișierele și conținutul lor, beagle poate găsi repede fișiere, poze (tag-uite), video-uri, conversații de messenger și alte informații de genul, indexarea fiind extensibilă prin plugin-uri. Încă nu a terminat de indexat tot (mai ales pe partea de poze), dar sunt fericit cu ce rezultate am obținut până acum ;)

UP12 stuff on my computer ;)
http://beagle-project.org/Main_Page

OOo pimping

OpenOffice.org este o suită de programe de office care este alternativa 1:1 a programelor din Microsoft Office, cu excepția Outlook (pentru care, am mai scris, eu folosesc Evolution). OOo e o suită robustă, care are o interfață grafică la nivelul MS Office 2000, dar care face treaba foarte bine, și repede. Unde mai pui că e și opensource?

În weekend, după ce am petrecut o săptămână sau două doar cu Writer (alternativa la Word) și cu Impress (alternativa la PowerPoint), m-am gândit să mă uit dacă nu pot să configurez / adaug lucruri să mă simt mai bine în el :).

Pentru început, a fost necesar să schimb splash-screen-ul pentru că ăla original este îngrozitor. L-am pus pe ăsta:

New OOo splash

Ca să schimbi, în Ubuntu, go to

/usr/lib/openoffice/program

și se înlocuiește openintro_ubuntu_sun.bmp cu o imagine de aceeași dimensiune, și care este tot un bmp pe 24 de biți (pe 32 de biți nu merge).

Apoi, am găsit, în sfârșit, întâmplător, cum se fac blestematele alea de icon-uri mai micuțe, să nu mai mănânce jumate de ecran.

Icon-uri micuțe

Secretul pentru asta este

Tools > Options > OpenOffice.org > View > Icon size and style > smal

Beton :)

Next up, am făcut curat în pluginurile ce le aveam, și am căutat unele noi și utile. Asta mi se pare o super caracteristică a proiectelor opensource: pentru a încuraja dezvoltarea de feature-uri, foarte multe din proiectele astea suporta pluginuri, instalabile peste aplicația de bază.

Am găsit dicționar pentru limba română (cu tot cu sugestie de cuvinte :D) și pentru limba engleză. Este și un set de template-uri suplimentare pentru Impress, care arată foarte bine. Avem și niște upgrade-uri pentru (mai săracul) echivalent de Visio, numit Draw. Este un plugin de publicat direct pe blog (ce poate fi găsit și în MS Office 2007), și un plugin pentru editare locală a fișierelor din Google Docs. Sunt toate de găsit la pagina de extensii a OOo.

Update: ah, da, și am mai găsit un plugin care face highlight la cod, pentru mai multe limbaje. numai bun pentru documentații :)

Ca și o concluzie, după mai multe luni de utilizat OOo, și după ce am fost un semi-poweruser măcar pentru word și powerpoint de la Microsoft, aș vrea să spun că alternativele lor gratuite și opensource, deși arată mai sărac, sunt în continuare foarte puternice și numa bune de folosit.