software-ul și formele

luni, 23 iul. 2012, 18:51

Being abstract is something profoundly different from being vague… The purpose of abstraction is not to be vague, but to create a new semantic level in which one can be absolutely precise.

Citatul îi aparține lui Edsger Dijkstra, o personalitate a lumii calculatoarelor înzestrată cu un umor deosebit de cinic, umor pe care acesta l-a exprimat cât se poate de bine în lucrările sale. De asemenea izul pasajului este oarecum ingineresc, fapt care pe mine nu mă va interesa mai deloc pe parcursul articolului.

Una din motivațiile care m-au determinat să meditez pe tema înțelesului și a iadului abstractizării a fost ideea de dificultate a comunicării, deși nu atât a comunicării în sine cât a exprimării chestiilor – adică a atomilor – în limbajul universal [i]. Premisa de la care am plecat atunci a fost aceea că oamenii se deosebesc din acest punct de vedere de celelalte animale prin faptul că pot abstractiza chestii, însă nu am definit prea bine ce înseamnă în general a abstractiza.

Fenomenul/procesul de abstractizare poate fi explicat relativ simplu: a abstractiza nu-i nimic altceva decât a lua un ceva anume concret și a-l reduce, a-i da o formă (mai) generală. De exemplu atunci când vorbesc despre calculator pot să mă refer la o mașină anume de calcul sau să vorbesc despre calculatoare în general, al doilea caz referindu-se la entitatea abstractă „calculator”. Utilitatea acestui unelte poate fi observată imediat: când doresc să mă refer la un obiect din categoria \mathcal{C} nu mai sunt nevoit să îl descriu prin toate proprietățile sale, ci e de ajuns să îi zic c \in \text{Ob}\;\mathcal{C}. Pe de altă parte, dificultatea provine din faptul că prin abstractizare putem ajunge deseori să ne referim la chestii care nu există în realitate, acestea rămânând însă tangibile la nivel de idee.

Problema are unele implicații profunde și nu este deloc nouă, ci datează încă de pe vremea lui Platon sau poate chiar dinaintea sa. De asemenea teoria formelor sau a lumii ideilor, ilustrată și prin alegoria peșterii, a fost criticată de către filosofii vremii, printre care s-a aflat însuși Platon. Cu mulți ani mai târziu știința i-a dat însă dreptate filosofului prin prisma faptului că percepția mărimilor fizice de către un observator uman oarecare este puternic limitată, astfel că realitatea pe care o percepem noi este doar o formă raportat la ceea ce există cu adevărat în univers. Și reversul pare însă să aibă sens: știința nu este altceva decât un set de abstracțiuni menite să ne facă să înțelegem mai bine lumea, sau mai nou nu prea dacă stăm să ne gândim la lipsa de intuiție a non-determinismului.

Ce legătură au toate acestea cu software-ul însă? Eu aș pune problema invers, anume întrebându-mă ce legătură are software-ul cu problema asta. Păi are, pentru că software-ul este și el, spre deosebire de hardware, o simplă abstracțiune. Sigur, Babbage s-a gândit acum multă vreme că ar putea face o mașină căreia dacă îi tragi de o rotiță într-un anumit fel o să execute anumite calcule, iar dacă i-o tragi în alt fel – rotița, mașinii – o să reacționeze într-un fel cu totul diferit. Apoi au venit mai târziu niște „geeks” și au zis „hai să-i zicem chestiei program, iar mașina să se numească programabilă”. Puțini s-au gândit totuși că implicațiile mașinii programabile și apoi a software-ului vor fi imense, ajungând să schimbe lumea în moduri în care nu ne-am fi imaginat acum patruzeci de ani.

Problema de mai sus transpusă în lumea calculatoarelor s-ar putea formula cu ajutorul următoarelor întrebări: ce-i până la urmă aia o „instrucțiune”. Când încetează procesorul a mai fi o masă de siliciu și când devine o unitate de calcul? Mergând mai departe cu analogia, când încetează tranzistorul a mai fi un simplu amplificator de tensiune și când ajunge o poartă logică sau și mai interesant, un neuron? Mai sus un pic, când se face trecerea de la biți la numere și cum se transpun toate astea în imagini, sunete și text?

Unele din răspunsuri s-ar putea să pară șocante cu atât mai mult cu cât nu știm în ce măsură sunt corecte. De exemplu aș putea să merg până la a spune că tot ceea ce percepem [ii] e în fapt non-existent. mp3-urile de pe partiția cu muzică? Nu există așa ceva, sunt niște șiruri de biți. Fereastra browser-ului? Ce-i aia, fereastra e o chestie pe care privești dintr-o clădire înafară. Și așa mai departe.

Această interpretare nu face altceva decât să ne lase complet „clueless” cu privire la existența, validitatea și valoarea a tot ceea ce este software sau, generalizând, a tot ceea ce este virtual. Eu sunt de părere că nu există absolut nici o diferență între problema sus-menționată și dificultatea unui schizofrenic de a deosebi realul de imaginar. Nu-i deloc de mirare astfel că apar pe Internet diverși indivizi la fel de „clueless” dar care se apucă să speculeze pe seama „cluelessness”-ului altora, afirmând de exemplu că „Google prostește”, deși nimeni nu înțelege încă care-i efectul calculatoarelor asupra gândirii.

Îndemn deci cititorul să lase pentru un moment la o parte calculatoarele, televizoarele și foile virtuale sau fizice și să reflecte un pic asupra acestor idei și forme în speranța că va găsi, după cum zice începutul articolului, un nivel de gândire în care ele au, și nu în ultimul rând fac, sens.

  1. Problema comunicării e o problemă în sine – și cel puțin la fel de dificilă – care rezultă din existența mediului social, apropo de impactul societății asupra evoluției, inteligenței etc. Doresc însă să fac abstracție de aspectele astea deoarece nu le găsesc o relevanță în contextul de față. []
  2. Termenul corect ar fi de fapt „to experience”, care evident că nu are un echivalent semantic strict în limba română. []

Comments

  • […] acestei paradigme sunt aceleași în cazul sistemelor software, motiv pentru care și există în prezent acest domeniu oarecum bizar al ingineriei programelor pe […]

  • […] dânsul. Observăm definiția vagă a conceptului „calculator”, care-i mai mult o mașină în sensul abstract al cuvântului. În spatele procesului de spălare a șosetelor pot sta unul, două, zece sau o mie […]

  • […] „natural” înseamnă mai degrabă „imediat” sau „intuitiv”, adică un sens și/sau o formă care se mapează direct pe mintea umană și mecanismele sale. Ideea e valabilă însă și în […]

  • […] în același timp altele. Este vorba despre o idee diabolică, care poate schimba relația dintre software și forme și poate duce chiar la sfârșitul epocii de aur a calculatoarelor așa cum o […]

  • […] eu ce alte pseudo-valori sunt și vor fi promovate. Al cărei exponent în lumea reală este acum calculatorul și mai concret Internetul. [↩]De exemplu prin adoptarea unui model descentralizat de […]

  • Comentariile sunt dezactivate.