4 iun. 2012

Mâzgălitură în cap.

    În ultima vreme, risc să mă repet, gândurile mele au luat forma unei mari mâzgălituri... În capul meu toate polițele, s-au răsturnat și datele s-au dezintegrat... Învățat - lucrat - învățat - socializat - îndrăgostit - lucrat - nu dormit - învățat, așa o buclă dinamică în fiecare zi m-a făcut să înțeleg, oarecum, că îmbătrânesc trece vremea și nu mai am timp de nimic... Sau, mai bine zis am timp (cum zicea și Mihaela)... Doar că nu-mi permit uneori să-l utilizez așa cum aș vrea eu, ceea ce până la urmă poate nu-i rău... Nu știu...

    Alaltăieri, după ce am finalizat toate task-urile critice, simțeam nevoia să ies din încăpere, să fug undeva departe... Da' unde? În spații închise nu mă mai pot focaliza în totalitate asupra lucrurilor ce trebuiesc efectuate. În scurt timp am hotărât să mă mai duc o dată la Valea Morilor.

    Eram prin Chișinău, undeva la sectorul râșcani, bd. Moscovei cu str. Alecu Russo ca să fiu mai exact... Căutam "the shortest path" până la Valea Morilor... Și, am hotărât să merg pe jos... Nu că ar fi prima oară, nu că mi-ar fi fost greu să merg cu transportul public, da' e ceva mai cool să meditezi, să structurezi gândurile mergând pe jos, decât să trec "mai în fund" și să ascult șanson în microbuzele moldovenești. La final am făcut 6km și ceva, merși în totalitate pe jos, în aproximativ o oră... Tot timpul ăsta m-am deconectat aproape în totalitate de la realitate... Ba mai mult, la un moment dat m-am abătut de la traseul planificat pentru vreo 10 minute... Am mers sub soare, apoi sub ploaie, cu gândul la soare, apoi iar sub soare... Vremea era alternantă... Aproape ca și gândurile mele...

6.33 km... E tare simplu! :)

    Odată ajuns la destinație, am fost de-a dreptul captat de culorile și sunetele care le percepeam... Nu, nu eram high :D Doar că de tare mult timp nu am prea stat în sânul naturii, singur, să-mi filtrez gândurile, să lucrez... Lume nu era prea multă, eu m-am așezat și mi-am scos laptopul și am învățat ce aveam de învățat... Eram unicul cu laptop pe perimetrul vizibil... Probabil toți alde IT rebeata guys, stau undeva în încăpere călduroasă și lucrează... Afară totuși e mai cool ; )

    Ah da, despre ce vroiam eu să vă povestesc? Asta cam e tot... Nu vroiam să scriu direct despre microbuze marșrutneci, nu de alta, da' eu nu-s blogger și susmenționații "marșrutneci" nu merită timpul meu... Un lucru vroiam să vă zic, special pentru new generation, mai mergeți pe jos până la cea mai apropiată stație de troleibuze (dacă nu puteți/doriți mai mult), care nu doar sunt mai libere, dar mai sunt și ecologice...

    O zi bună! :)

18 apr. 2012

Transportul public din Chișinău. Serviciul Maxi-Taxi.

    Se întâmpla azi. Era trecut de ora 22, mergeam cu microbuzul spre casă. La un moment dat a urcat o doamnă ce a acuzat șoferul că a așteptat microbuzul mai bine de 25 de minute pe când pe orarele lor oficiale aprobate de către primărie(?) intervalul între microbuze trebuie să fie 7 minute la ora asta. Tot atunci am aflat că noi, pasagerii, ar trebui să-i mulțumim șoferului, pentru că ne face ditamai serviciu/înlesnire mergând la ora asta, citez "în minus"(nu are profit) "cu dzășe oameni în crușe", ba mai mult, am aflat că domnul șofer merge în condițiile date LA ORA ASTA nu pentru că are careva obligațiuni impuse de primărie/șef, dar pentru că trăiește în regiunea stației terminus spre care se îndrepta, și oarecum merge și el acasă. Well, omul se crede mare filantrop că își permite LA ORA ASTA să ducă pasagerii acasă... măi măi măi... Ca un bonus își mai permite să înjure cât încape (da apropo, oamenii psihic dezechilibrați nu trebuie să fie angajați la posturi publice, da' asta deja-i altă temă...).

Păi stați fraților, voi mergeți doar când vă e comod? Atunci când cuvintele cheie sunt "treșiț mai în fund, fășeț loc la oameni(a se subînțelege 'loc la încă trei lei')", atunci când în loc de 12-16 locuri pe scaune strângeți încă atâția oameni minimum, în picioare? Din câte știu, profitabilitatea normală se consideră când toate scaunele sunt ocupate, păi cum stăm cu profitabilitatea când dinnafară se văd doar funduri și nu mai e loc unde de intrat? Deci dacă în careva intervale de timp este așa o supraprofitabilitate, dar așa intervale îs mai bine de juma de zi, păi rămâne loc și pentru mers "în minus", nu? Și oamenii ăștia vor mărire de tarife? Pfff...

Și serviciul nostru maxi-taxi mai are o mulțime de lacune. Habar n-am cum se impozează veniturile lor. Teoretic ar trebui să fie eliberate bilete pentru fiecare călătorie.(În genere politica de bilete e puțin învechită, dar asta deja-i altă discuție) Sunt sigur că și tu nu ai primit niciodată bilet în microbuz. Ironic, dar în unele microbuze stă o rolă de bilete legată de bara de susținere, sau mai mult, inscripții ingenioase:
Eu am cerut bilet și am fost înjurat de către nenea șofer.

La categoria de foițe puse de formă merg și orarele lor ce nu sunt respectate, atenționări precum că păzea "În microbuze acționează hoți de buzunare" ș.a.

Păi iată dragi șoferi/șefi de maxi-taxi, nu uitați că nu trebuie să ieșiți "la pescuit" doar în orele de vârf, nu trebuie să vă comportați ca niște animale sălbatice. Nu uitați, pe lângă toate cele scrise mai sus, fiind șoferi de transport public vă asumați răspunderea pentru sănătatea călătorilor Dvs.
Vorbind despre schimbări, ele ar trebui să vină de mai sus, dar am impresia că  Ministerul Transporturilor și Primăria nu cam au mare motivare de a schimba ceva, ba chiar scot foloase pe seama acestor neajunsuri.


Alexandru Lebedev scria: Călătoria cu microbuzul poate fi o plăcere?
Andrei Fornea scria: Preţul la microbuz trebuie să crească cu 33 bani
Alexei a filmat un iepuraș de la "SRL AFGBASVET": Șofer iresponsabil pe ruta de microbuz 169 (pe curaj mai puteți găsi filmulețe interesante la temă)
Victor Ciobanu scria: Mafia "marşrutcilor".
Artwork by Stinger.MDIMG

10 mai 2011

TEDxChișinău - Impresii


   A trecut și ziua de 7 mai - o zi minunată petrecută în cadrul evenimentului TEDx Chișinău. Boring. Break It! Per total mi-a plăcut și sunt gata să vin și la următoarele evenimente de acest tip, așa că, bravo organizatorilor pentru că într-un fel sau altul mi-ați captat atenția.
   Prima parte a evenimentului a cam avut de suferit din cauza boxelor vechi și probabil incorect setate care distrăgeau atenția ascultătorilor prin "buzzz-ueală", dar, după prima pauză, calitatea sunetului s-a îmbunătățit considerabil și nu a jucat mari feste pe parcursul evenimentului.
   În următoarele rânduri aș vrea să fac un mic total, cu scurte feedback-uri pentru fiecare speaker și probabil o frază (parafrazată) din discurs, care mi-a rămas în memorie până la momentul actual. %)

Deci, să-i dăm foc!

7 apr. 2011

Cum mi-am customizat linia de comandă sub linux...

   Salut! Astăzi voi scrie despre felul în care mi-am "construit" linia de comandă după gusturile și necesitățile mele.

1 .bashrc

   Așa cum, probabil știți că sunt iubitor de chestiuțe colorate în terminal, mi-am configurat promptul cu mai multe culori. Aici puteți găsi o listă de variabile și culori accesibile în bash, foarte util post pe archwiki. Spre exemplu, eu am inclus lista de variabile cu culori în .bashrc, și acum e mult mai simplu și lizibil codul, cu variabile în loc de secvențe escaped:
prompt_command ()
{
    local st=$?
    [ $st -eq 0 ] && \
    local p="${BBlack}>${Green}>${BGreen}>${Color_Off}" || \
    local p="${BBlack}>${Red}>${BRed}>${Color_Off}"
    PS1="\n   ${IPurple}(\t) ${Yellow}\u@\h ${IYellow}\w\n${Color_Off}${p} "
}
PROMPT_COMMAND=prompt_command
În secvența de mai sus, variabila $p e un string (>>>) ce ia culoare roșie (gradient improvizat) dacă comanda precedentă s-a executat cu vreo eroare și culoare verde dacă a mers ok. Controlul se face după variabila $?. În rest e usual stuff, colorat :]

2 git, git-completion și viață frumoasă

   De ceva vreme încoace, am descoperit și utilizez git-ul destul de activ. Primele impresii au fost pozitive, și totuși ceva mai lipsea... Fiind deprins cu subversion și în lipsă de autocomplete a comenzilor lui git, am făcut niște aliasuri, de genul: git co (git checkout, co luat din SVN), git ci (git commit) etc... Și totuși mai lipsea ceva... Spre exemplu, pentru a face checkout la un alt branch, trebuia întâi să listez toate branch-urile ca abia apoi să găsesc ceea ce-mi trebuie și să fac checkout etc.
   La un moment dat, m-am gândit că pot să-mi fac un script care să se ocupe de asta, și să facă aceste lucruri pentru mine, și, când colo, am dat de un lucru gata făcut! git-completion! bingo! Tot ce trebuie să faci e:
wget http://github.com/git/git/raw/master/contrib/completion/git-completion.bash -O ~/.git-completion.bash
și apoi să adaugi în .bashrc linia:
source $HOME/.git-completion.bash
Tadam! Acum ai autocompletion! (apropo, fraza asta mi-a adus aminte de sloganul de anul trecut de la PublikaTV, și anume: "Moldova, acum ai televiziune!". Ei da evenimentul nostru e mai important.)

   Odată cu autocompletion, a venit și colorarea la git diff, și câteva funcții predefinite. Una din ele, o să o examinăm aici. Funcția dată are numele de __git_ps1(), și se poate include în $PS... eu am pus-o înainte de newline, și dacă sunt în directorie cu repozitorie git, îmi arată, branch-ul curent, și starea lui, dacă e modificat și nu e făcut commit îmi marchează cu * branc-ul. Până la urmă, după diverse șlefuiri, command prompt-ul îmi arată așa:
PS. ce-mi mai trebuie? un GNU screen, vim, htop, moc, mc, mplayer, rtorrent(color) și sunt sigur că terminalul nu o să se plictisească... ;D

24 mar. 2011

Light HTTP Server în 10 secunde

  Bună dimineața dragă cititorule!
  Dorești să faci share la careva fișiere, sau pur și simplu să testezi un micro server HTTP? Utilizezi linux ca sistem de operare? Ai python, preinstalat? Nimic mai simplu! Mergi în directoria pe care o dorești să fie setată ca server root:
  cd /calea/spre/directoria/dorită
Și execută comanda:
  python -m SimpleHTTPServer
  Acum tot ce este în acea directorie, e accesibil pe adresa http://localhost:8000 sau http://127.0.0.1:8000 de pe calculatorul gazdă, și de pe http://[ip-ul real]:8000 (în caz că nu este vreo aplicație ce restricționează accesul pe portul dat). IP-ul ce poate fi privit din extern se poate afla ușor mergând pe pagina: http://www.whatismyip.com/.

  Prin urmare totul se rezumă la o comandă, foarte utilă și comodă în cazurile expuse mai sus în locul serverelor Apache ș.a...

ps. python-ul de obicei este instalat odată cu sistemul de operare.
pps. teoretic această comandă ar trebui să funcționeze și pe w$, dar nu am testat și nici nu m-am documentat în domeniu, pot să zic una, merge perfect prin cygwin de pe windows :]

Nota Bene: Despre acest feature am citit vreo jumătate de an în urmă pe blogul lui Marius Voilă.

UPD: Dacă aveți instalat și python 3, atunci executați
  python2 -m SimpleHTTPServer
pentru că în python3 SimpleHTTPServer a fost comasat cu BaseHttpServer, și utilizarea acestuia e puțin diferită, probabil o să-l iau ca motiv să mai scriu vre-un blogpost mai detaliat pentru acesta.