mediul de programe unix: descrieri, exemple.

duminică, 24 iun. 2012, 17:32

Un aspect pe care l-am omis când am analizat interacțiunea cu calculatoarele ca act de comunicare este acela că modul text are și el interfețele lui pseudo-grafice. Astfel pentru a distinge între linia de comandă și interfețele text folosim sintagma „Text-User Interface” sau TUI. Acestea sunt prezente în lumea calculatoarelor încă de la începuturile acesteia, fiind incluse și în DOS și Windows {1,2,3}.0 [i], având însă un grad mare de răspândire în lumea *nix.

Povestea pleacă de la faptul că la un moment dat a existat nevoia ca terminalele virtuale să fie independente de mașina fizică pe care rulează. Astfel au apărut bibliotecile terminfo și termcap, peste care au fost dezvoltate curses și mai apoi ncurses. Ultimele două au un API care îl ajută pe programator să aranjeze textul și să deseneze chestii cum dorește dânsul, dând astfel naștere unei interfețe care să fie mai intuitivă pentru utilizator decât CLI-ul.

Ceea ce mulți utilizatori Unix [ii] nu știu sau nu vor să știe e că traiul zilnic poate fi dus la fel de bine înafara modului grafic, ceea ce e mai ales util în cazul în care nu vrem să fim deranjați de chestii frumos colorate. Prin urmare vom purcede la a face o listă a programele de bază care alcătuiesc sau pot alcătui după pofte și nevoi mediul zilnic al unui utilizator Unix – cu mențiunea că unele din ele s-ar putea să fie disponibile decât pe GNU/Linux, din motivul că utilizatorii de BSD sunt probabil prea preocupați să-și miroasă bășinile pentru a le porta; glumesc, dar adevărul e pe undeva prin zonă. (mai mult…)

  1. Care-i de fapt un TUI foarte împopoțonat și cu suport mai bun pentru mouse. []
  2. Adică inclusiv de Linux, chiar dacă Linux e prin definiție „not Unix”. []

interacțiunea om-mașină ca act de comunicare

duminică, 18 mart. 2012, 00:28

Citind [i] un articol care face încercarea de a lega mediul UNIX de literatură, m-a lovit în crestetul capului ideea că eu nu m-am gândit până acum să leg iadul abstractizării de interacțiunea om-calculator. Cum a reușit creierul meu să omită această legătură foarte importantă n-am de unde să știu, însă consider că trebuie remediată problema cât mai repede cu putință, deci voi purcede imediat la a trata subiectul.

Putem cădea de acord, conform The Elements Of Style, că există două paradigme mari și late care se disting în interacțiunea om-mașină și în particular în interacțiunea om-sistem de operare. Prima presupune tipărirea explicită de comenzi care fac mașina să execute chestii, deci este în principiu proactivă, în timp de a doua constă în interacțiunea cu elemente grafice în măsura în care acestea sunt disponibile pe ecran, deci este în mare parte reactivă. De fapt firește că adevărul e undeva la mijloc, motiv pentru care nici nu are rost să fim snobi și să înfierăm GUI-ul drept o prostie [ii] și să catalogăm interfața textuală drept Α și Ω.

Ar fi ok totuși să afirmăm că interacțiunea prin text este mult mai apropiată de ideea de comunicare lingvistică, în timp ce interfețele grafice se aseamănă mai mult cu manipularea unui mediu abstract virtual. Cea dintâi paradigmă e evident mai complicată decât cea de-a doua, dat fiind faptul că orice copil învață să ia obiecte și să le bage în gură în primele luni din viață, pe când stăpânirea limbajului necesită un antrenament îndelungat ajutat de educație formală și așa mai departe. Sigur, la nivelul cel mai de jos se întâmplă că și limbajul corpului e un act de comunicare important, însă noi dorim să discutăm cu calculatorul idei, nu semnale de împerechere, motiv pentru care îmi permit să reduc domeniul comunicării, referindu-mă strict la limbaj atunci când vorbesc despre aceasta. (mai mult…)

  1. Via Google+, care apropo, în cazul ăsta a reușit să-mi dea un plus de utilitate considerabil. []
  2. Ba dimpotrivă, oamenii de la Xerox care au inventat tipul ăsta de interfață au fost geniali. Pe deasupra au mai fost și sănătoși la cap, deci nu i-au dat în judecată pe Apple și Microsoft după ce le-au „furat” ideile, că doar asta au făcut, nu? []

*nix curiosity #3

marți, 20 apr. 2010, 23:47

NAME sl  –  display animations aimed to correct users who accidentally enter sl instead of ls. […] BUGS It rarely shows contents of current directory.

Adicătelea „sl – ls for lysde… dyslexics”.

apt-get install sl pe debian/ubuntu and enjoy it.

*nix curiosity #2

joi, 12 feb. 2009, 11:14

Timpul în format standard Unix (sau POSIX [wikipedia.org]) poate fi afișat fără a recurge la cod C, folosind următoarea comandă de bash (combinat cu perl):

$ perl -e „print time();”; echo;

N-am pus aici întâmplător acest one-liner. În cam o zi de-acum, timpul Unix va fi 1234567890 [1234567890day.com], un eveniment aparte pentru sistemele *nix.

*nix curiosity #1

vineri, 9 ian. 2009, 11:32

M-am decis să fac o serie de post-uri care să conţină comenzi/script-uri din lumea *nix utile, poate de bază, dar mai puţin folosite sau mai ciudate. De exemplu, azi am dat peste o comandă destul de naturală, dar de obicei neglijată,

$ cd ~gigi

care va schimba directorul curent în directorul home al user-ului gigi.