o introducere ușor neobișnuită în domeniul arhitecturii software

duminică, 29 iul. 2012, 16:24

Arhitectura, sau mai general proiectarea chestiilor este un subdomeniu al ingineriei ca oricare altul, care se ocupă, am putea spune lipsiți de rigoare, cu descrierea chestiilor în cauză. Bunăoară, dacă doresc, inginer fiind, să proiectez un ciocan spre a rezolva o problemă dată (de obicei bătutul cuielor), va trebui – dat fiind că-s om, iară nu orice om, ci inginer – să îmi formulez un set de cerințe și întrebări adiacente acesteia, legate printre altele de: părțile componente ale ciocanului, felul în care arată acestea, din ce sunt formate și cum se îmbină ele spre a forma mai mult decât suma părților lor.

Fundamentele acestei paradigme sunt aceleași în cazul sistemelor software, motiv pentru care și există în prezent acest domeniu oarecum bizar al ingineriei programelor pe calculator [i]. Diavolul se regăsește bineînțeles în detalii, acolo unde teoreticienii încearcă să prezică evoluția software-ului în timp. Dacă în cazul unui ciocan lucrurile stau destul de simplu – dai cu el până se strică -, software-ul evoluează destul de haotic în timp, degradându-se și pierzându-și din fiabilitate în moduri greu de prevăzut. Colac peste pupăză, inginerii noștri plini de creativitate gândesc modele și implementări care de care mai complexe, când rolul abstractizării e tocmai opusul, anume acela de a simplifica lucrurile. Deci aici zic că ar ajuta un pic să luăm lucrurile de la zero, deci să regândim problema. (mai mult…)

  1. Da, dragi cititori, ingineria software e un ceva anume extrem de bizar prin felul ei de a fi. Aceasta ba apare în, ba dispare din mintea inginerului programator, existând și în același timp încetând să existe pentru acesta la un moment dat. Fenomenul se datorează nu numai faptului că lumea ideilor e volatilă în cadrul unui singur individ, ci și aceluia că oameni diferiți pot privi o singură problemă în moduri complet disjuncte, ajungând astfel să petreacă o perioadă considerabilă de timp stabilindu-și un limbaj comun. Astfel au apărut hack-uri imense dezvoltate de oameni cu interese profund diferite, cum e nucleul Linux, și astfel au luat viață inclusiv unele produse ale consumului de LSD, cum e 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? []