despre problemele educației economice
duminică, 10 mart. 2013, 11:24
Vom privi în cadrul acestui articol economia drept o disciplină care se ocupă cu alocarea resurselor în cadrul unui sistem oarecare, contrar opiniei generale conform căreia economia se ocupă în general de „chestii legate de bani” [i]. Putem spune deci, într-un sens foarte abstract, că producția sau vânzarea unui bun nu diferă foarte mult de alocarea unui grup de oameni pentru rezolvarea unei probleme sau de alocarea unor sarcini pe un procesor [ii]. Tot prin economie putem înțelege și un sistem economic, adică fie un scenariu concret, fie unul închipuit în care e aplicat un model economic anume.
Economia este o disciplină foarte veche, poate atât de veche precât umanitatea însăși. În acest context, putem vorbi deci de o anume gândire economică, sau dacă vreți inteligență economică, la nivelul persoanei. Evident, disciplina a evoluat de-a lungul timpului, ajungând în prezent să fie considerată materie obligatorie în liceu [iii], unde sunt predate — din câte îmi aduc aminte, și vă rog chiar să mă corectați în cazul în care greșesc — câteva principii, ceva economie generală, plus niște concepte de micro și macroeconomie. Cum nu mi-am dat licența în economie și nici nu am făcut studii organizate în acest domeniu, vorbesc cumva privind dinafară, de unde s-ar putea să rezulte destule concepții greșite, caz în care vă invit din nou să mă corectați.
Ei, din poziția unui individ care trăiește într-o economie (de piață) oarecare, într-un colț de pe planetă oarecare, și care în plus încearcă pe cât posibil să își dezvolte o gândire economică rațională, mi se pare că educația economică obligatorie are niște lacune, unele mai mici, altele destul de mari. (mai mult…)
- În particular, finanțele se ocupă de alocarea banilor. [↩]
- Notăm totuși că nu s-a demonstrat până în prezent că oamenii sunt echivalenți cu mașini Turing, în primul rând pentru că nu a fost găsit încă un model computațional care să descrie individul. [↩]
- Cel puțin în România. Presupun că „înafară”, unde lumea presupune automat că educația e mai bună decât „la noi”, economia primește cel puțin la fel de multă atenție. [↩]
codul qr și game of life
duminică, 24 feb. 2013, 19:41
Așa-zisul cod QR reprezintă o metodă de codificare a informației digitale astfel încât aceasta să poată fi decodificată ulterior cu ușurință — rapid și fără erori — cu ajutorul unui senzor optic, e.g. o cameră foto. Nu-i cu nimic diferit conceptual de un cod de bare, având însă avantajul că admite o densitate a informației ceva mai ridicată. În particular, e mult mai ușoară stocarea unui șir de caractere ASCII sau Unicode sub forma QR decât cu ajutorul codurilor de bare clasice, cum ar fi EAN sau ce se mai găsește în mod normal pe etichetele produselor aflate în comerț.
Game of Life este un automat celular faimos, descoperit de către matematicianul John Horton Conway. Regulile automatului sunt oarecum intuitive, și în plus configurațiile inițiale pot duce la evoluții „haotice”, posibil utile pentru modelarea în domenii precum cel al biologiei, economiei sau fizicii — numele „Game of Life” nu e ales tocmai la întâmplare. O particularitate interesantă pentru calculatoare și teoria informației este aceea că unele din „structurile” simple din Game of Life pot fi folosite pentru a construi mașini Turing. Dincolo de asta, e greu de zis ce mai ascunde automatul cu pricina. (mai mult…)
originile sistemului zecimal, un exercițiu de antropologie
vineri, 22 feb. 2013, 19:58
Înainte să pornesc la drum, trebuie să menționez din capul locului că acest articol reprezintă un exercițiu de gândire, nu un studiu bine documentat. Articolul își propune să găsească un răspuns la problema originilor sistemului numeric zecimal fără să se bazeze pe foarte multe izvoare istorice, mergând în schimb pe câteva ipoteze care ar putea justifica foarte bine alegerea, dacă a putut fi vorba de o alegere. La urma urmei, e cât se poate de firesc, oameni fiind, să ne punem întrebarea: cum au ajuns oamenii să folosească baza zece pentru a reprezenta numerele? De ce nu baza trei sau baza cincisprezece? Nu știu dacă întrebarea asta e pusă studenților din primii ani din cadrul facultăților de științe umaniste, dar dacă nu, atunci probabil că ar trebui, după cum arată paragrafele următoare, care nu aparțin unui specialist în antropologie.
Fără a intra în implicațiile filosofice ale numerelor [i], e musai să raționăm despre ele înainte de a purcede, și anume din punctul de vedere al matematicii. Numărul, în sensul pur teoretic al cuvântului, face trimitere mai degrabă către ideea de număr întreg sau natural decât de fracții de numere. Ar fi și dificil să tratăm problema din punctul de vedere al numerelor raționale, dat fiind că o schimbare de bază numerică în cadrul acestei mulțimi poate genera erori semnificative, acest lucru fiind bine cunoscut în matematici și inginerie [ii]. În ceea ce privește numerele naturale, pe de altă parte, reprezentările sunt echivalente indiferent de baza numerică utilizată, astfel că din punct de vedere matematic ne e egal că folosim baza cinci, șapte, zece sau șaisprezece. (mai mult…)
- A se consulta teoremele incompletitudinii ale lui Gödel. [↩]
- Să luăm cazul banal al împărțirii lui 1 la 10, care în baza zece dă 0.1. În baza doi, același număr poate fi reprezentat ca o aproximare a lui 0.0999…, fapt care poate duce la erori care evident că o să se propage în funcție de alte operații în cadrul cărora este folosit ulterior numărul. [↩]
să scriem împreună un generator de text markov (ii)
joi, 27 dec. 2012, 11:32
În cadrul articolului introductiv am prezentat pe scurt ideea de a implementa un generator de text Markov ca exercițiu pur didactic, am explicat câteva din conceptele teoretice fundamentale pe care se constituie aplicația și nu în ultimul rând am definit o structură de date în Haskell, structură care se mapează unu la unu pe cea a unui lanț Markov. Mai departe voi da un exemplu de construcție (non-algoritmică) a unui obiect de tipul Chain
, după care vom porni spre a programa un simulator de procese Markov, definit printr-o interfață oarecare, fixă, interfață care la rândul ei se constituie pe baza unor funcții Haskell.
O primă și importantă funcționalitate a acestei interfețe o reprezintă aceea de construire a lanțurilor Markov. Modulul Data.Map
oferă tot soiul de modalități de construire a dicționarelor, printre care inserarea, reuniunea etc. Dat fiind că în programarea funcțională cea mai naturală metodă de a reprezenta chestii este lista, noi vom defini o funcție fromList
, care se va folosi de omoloaga din Data.Map
pentru a construi lanțuri Markov din asocieri stare-listă (de tupluri stare-probabilitate):
fromList :: Ord a => [(a, [(a, Float)])] -> Chain a fromList = M.fromList |
să scriem împreună un generator de text markov (i)
sâmbătă, 15 dec. 2012, 15:29
Invit cititorul de Cărămizi să ia parte la o inițiativă
- (a) destul de rar întâlnită pe blog-urile românești,
- (b) pur didactică,
- (c) destinată programatorilor amatori, profesioniști sau pur și simplu oamenilor cărora le place să-și folosească chestia aia dintre umeri, și nu în ultimul rând
- (d) aparent inutilă.
De fapt punctul (d) e în mare parte fals; stând un pic și cugetând, realizez că ar fi foarte util să urmăriți tutorialul dacă doriți de exemplu să învățați Haskell sau să vă faceți o idee legată de analiză statistică și lanțuri Markov, sau pur și simplu dacă vreți să vă dezvoltați un generator de spam [i]. (mai mult…)
- Nu văd care-i problema. Scopul meu e acela de a le arăta oamenilor cum să folosească cuțitul, nu să le explic cum ar putea să-l vâre în alți indivizi. [↩]