evoluția interacțiunii om-calculator (i)

vineri, 10 feb. 2012, 20:03

Din motive pentru care nici eu nu le înțeleg prea bine, simt că există (undeva în sfere înalte) necesitatea de a discuta despre interfețele între noi, adică oamenii, și aceste mașinării minunate pe care noi le numim calculatoare. A se lua la cunoștință că prin „calculator” înțeleg la fel de bine PC desktop, laptop, smartphone și ce mai folosește omul mediu în ziua de azi, toate fiind mașini de calcul și toate fiind relevante din punctul de vedere al interfeței, pentru că dacă n-ar fi nu am fi aici.

Din acest motiv mă voi întinde pe mai multe articole, însă nu mai mult de două-trei, hai patru în cazul în care îmi năvălesc ideile în capul cel de sus și nu le mai pot ține în mine. La o adică aș putea scrie o carte întreagă pe temă, însă nu îmi doresc să fac asta, la fel cum nu îmi doresc să abordez problema dintr-un punct de vedere pur științific. La fel de bine nu înțeleg de ce există o întreagă arie de studiu pe tema asta, însă nu-s eu în măsură să judec acest aspect.

Din punct de vedere strict conceptual (iar aici meritul e în totalitate al domeniului HCI), există o dorință a omului de a comunica cât mai natural și mai eficient cu entitățile din jurul său, deci inclusiv cu dispozitivele electronice. În trecut nu a existat o preocupare majoră în sensul ăsta, având în vedere că dispozitivele veneau cu un manual de utilizare și cinci-zece butoane, iar inginerii asigurau că totul va funcționa în parametri bine stabiliți. Lucrurile s-au complicat odată cu apariția calculatoarelor, care au adus (prin software) o diversitate nemaivăzută până atunci, diversitate care e în măsură să bage utilizatorul mediu într-o totală confuzie.

Cu toate astea, și în ciuda faptului că au existat și există încercări mai mult sau mai puțin fructuoase de a aduce mașina mai aproape de utilizator, lucrurile nu s-au schimbat foarte mult față de anii ’70-’90. Folosim în continuare așa-zise „pointing devices”, iar tastatura rămâne în continuare cel mai la îndemână și mai util instrument de interacțiune cu calculatorul până și pe smartphone-uri.

Acestea fiind spuse, nu rămâne decât să cobor discuția într-o zonă unde ea e mai digerabilă: date fiind cele de mai sus, anume că (a) interacțiunea om-mașină se vrea a fi eficientă și (b) cea mai la îndemână unealtă e tastatura, putem să ne întrebăm cum putem să interacționăm cu calculatorul cât mai rapid folosind tastatura [i], lăsând dispozitivele gen smartphone și tabletă pe altă dată.

Soluția ideală este într-un mod destul de neașteptat stăpânirea unei console în mod text și a utilitarelor aferente, iar aici mă refer la absolut orice, de la client de e-mail la browser și așa mai departe. Acest lucru nu este însă practic pentru utilizatorul mediu, astfel că trebuie să se ajungă la o soluție de compromis între funcționalitate și eficiență. Acea soluție există și are un nume: interfață contextuală.

Windows 7 are o variantă destul de rudimentară în cadrul meniului de start (căsuța aia în care utilizatorul scrie numele unui program și îi apar rezultate), Ubuntu are Dash-ul din Unity, Google are căutarea instantanee. Cel mai util pentru utilizatorul de browsere devine în acest caz meniul contextual din Chrome/Firefox afișat în momentul în care cel dintâi scrie diverse chestii. Utilizatorul un pic mai avansat va găsi în autocomplete-ul (accesibil prin tasta tab) din Bash o unealtă indispensabilă, iar utilizatorul și mai avansat nu va avea probleme în a folosi reverse search și diverse scurtături [ii] care să-i facă viața mai ușoară.

Mai mult, cei din noi care vrem să obținem comportamentul din editoare precum vim în cadrul unor softuri cum ar fi browser-ul web putem folosi vimium pe Chrome, respectiv vimperator pe Firefox. Altfel, scurtăturile care vin cu orice aplicație grafică respectabilă (Ctrl + f pentru căutarea cuvintelor, bunăoară) pot ajuta extrem de mult la îmbunătățirea vitezei de interacțiune, iar în timp devin o a doua natură, un fel de analog al mersului pe bicicletă.

Un aspect oarecum important pe care nu l-am abordat este acela al jocurilor de calculator, care par să interacționeze din capul locului natural cu jucătorul [iii]. Putem astfel să ne întrebăm de ce nu există interfețe grafice similare cu cele din jocuri și adaptate aplicației, iar motivele sunt multiple, începând cu standardizarea, continuând cu backward compatibility-ul, lipsa resurselor hardware și altele.

Post Scriptum: Se pare că eu și sud africanul pe nume Mark Shuttleworth – care în caz că nu știți e omul din spatele ideilor atât bune cât și proaste ce alcătuiesc Ubuntu – gândim la fel. Începând cu una din versiunile viitoare, Ubuntu va veni cu un așa-zis HUD, adică un meniu contextual mai deștept dedicat accesării rapide a meniurilor. Chestie care mi se pare o idee superbă de altfel.

  1. Puteți să mă bateți pe umăr și să mă întrebați de ce am scos mouse-ul din această discuție. Problema dispozitivelor gen mouse e aceea că necesită mutarea unui cursor cu mâna înainte de click, lucru în special retardat în cazul laptop-urilor. Și până nu se inventează interfața point-and-click cu ajutorul simplei priviri (printr-un dispozitiv sinaptic sau ceva similar), eu nu-mi voi schimba părerea asta. []
  2. E posibil să nu știți că o întreagă serie de shell-uri din Linux (și nu numai) folosesc readline drept bibliotecă pentru interacțiunea cu utilizatorul. Dați o privire prin cheat sheet-ul din link, veți rămâne surprinși. []
  3. A muta mouse-ul e izomorf cu a privi iar a apăsa o tastă e echivalent cu a executa o mișcare? Probabil, nu știu, dar din experiența mea cu shooterele 3D, care-s jocuri ce pot necesita o coordonare ochi-mână extraordinar de bună, așa pare a fi. []

Comments

  • […] evoluția interacțiunii om-calculator (ii) Friday, 2 Mar 2012, 18:53 […]

  • […] evoluția interacțiunii om-calculator (iv) sâmbătă, 11 Aug 2012, 14:46 […]

  • Comentariile sunt dezactivate.