Tech and thoughts
Archive for October, 2008
Open-Source, carti cu roboti si Egiptul antic
Oct 29th
In ultima perioada am devenit tot mai interesat sa intru in proiecte “altruiste” si, in general, de lucruri pe care nu poti sa le exprimi in bani.
Erau planuri mai vechi, dar criza financiara mi-a deschis mai bine ochii asupra caracterului iluzoriu al banilor si asupra limitelor sistemului monetar in exprimarea valorii.
Am inceput sa citesc din nou, obicei care imi facea mare placere si pe care l-am neglijat complet in ultimii ani. Ma refer aici la literatura, nu la Libertatea, chiar daca nu pot sa ma laud ca am fost un mare “carturar” vreodata.
Am citit intai ceva despre descoperirea Egiptului antic. In afara de ceva istorie, am invatat ca orice civilizatie, oricat de avansata ar fi, piere la un moment dat. Egiptenii antici erau mai avansati decat orice civilizatie contemporana lor, precedenta si chiar succesoare. Numai in ultimii 200 de ani, civilizatia moderna i-a depasit.
Am trecut apoi in extrema cealalta si am citit o carte despre viitor asa cum il vedea Isaac Asimov. Cartea se numeste Soarele Gol (The Naked Sun) si desi nu m-a impresionat foarte tare ca si stil literar, este o viziune foarte interesanta despre o viitoare societate robotizata. Poate nu am fost atat de impresionat si pentru ca foarte multe idei ale acestui maestru al genului SF au stat la baza a numeroase carti si scenarii de film (cum ar fi de exemplu mai recentul “I the Robot” cu Will Smith in rolul principal). In orice caz este o lectura placuta si prezinta sub forma de roman politist probleme interesante legate de viitor (in principal cele 3 legi ale roboticii devenite mai apoi un fel de standard in SF, nu numai in cartile autorului).
Acum, pentru ca am intrat intr-o atmosfera idealista, m-am gandit sa ma uit putin si spre proiecte care nu imi aduc un beneficiu personal clar.
In primul rand, ma gandesc la proiecte Open-Source, de pe urma caror am beneficiat si beneficiez si acum, fara sa contribui cu nimic. Proiecte precum Apache, PHP, Mozilla, toata gama de proiecte asociate cu Linux in general, au dovedit ca entuziasmul, o comunitate si putin sprijin din partea unor companii resposabile pot face mai mult decat corporatii de miliarde de dolari.
Inca nu imi dau seama unde as putea sa fiu mai bine de folos, asa ca oricine are o idee sau o sugestie de proiect open-source existent sau nou e binevenit. As vrea sa intru intr-un proiect care sa foloseasca mai direct unui consumator final (cum ar fi de exemplu un sistem de operare). Nu prea inteleg cum a fost posibila aparitia unui sistem ca Vista dupa atatia ani si chiar daca se anunta aparitia lui Windows 7 care sa stearga rusinea, sunt convins ca se pot realiza lucruri si mai bune, chiar si open-source.
Incepator in Python
Oct 20th
De putin timp m-am gandit sa incerc un nou limbaj de programare. Pentru ca vreau ceva care sa nu fie special pentru web si care sa nu fie prea departe totusi de modul de lucru cu care m-am obisnuit, am ales Python.
Nu vreau sa-i descriu avantajele ci sa ajut si pe altii care vor sa faca o evaluare rapida. Mi se pare un limbaj bun si pentru cei care nu stiu deloc programare.
Asa ca propun urmatoarea reteta (orientata in special spre utilizatorii de windows):
1. Se descarca ultima versiune standard de Python. Pentru Windows obisnuit(XP sau Vista pe 32 biti) click direct aici
2. Open pe fisierul descarcat, next, next…finish . Nu este nevoie de nici o setare sau alta “customizare”.
3. Se creeaza intr-un director oarecare un fisier text obisnuit si i se schimba extensia din .txt in .py (ceva de genul program.py). Click dreapta pe fisier si click pe “Edit with IDLE”. Se pot folosi si alte editoare de text (ex Notepad) sau mai avansate, dar nu are rost in aceasta etapa.
4. Sunt doua ferestre care apar:
– una cu titlul Python shell, care incepe cu
“Python 2.6” si cateva informatii despre soft urmate de
“IDLE 2.6 ==== No Subprocess ====
>>>” in care va rula programul in modul linie de comanda (este cum ii spune numele o cochilie pentru python, o scurtatura spre python.exe). Poate fi inchisa deocamdata.
– in cealalta fereastra se scrie codul sursa al programului. De exemplu:
print ‘hello world’
Se salveaza (Ctrl+S) si se executa programul apasand F5. Rezultatul se va deschide in ferereastra Python Shell de care am vorbit.
5. Pentru urmatorul pas al retetei click aici. Sunt cateva exercitii graduale care in cateva linii de cod acopera surprinzator de multe aspecte practice ale acestui limbaj. Eu le-am facut pana la exemplul 12 si cred ca pana la 10 le poate intelege si cineva care nu stie prea multe lucruri despre programare.
Limbajul este intuitiv, cu un nucleu minimal de functii ce pot fi extinse prin importul unei variate game de module. Este un limbaj interpretat adica nu necesita compilare si ca si PHP este mai lejer cu tipurile de date(int, string, etc).
Specificul este indentarea(distanta fata de marginea din stanga) folosita in sintaxa (un rand care incepe cu un paragraf mai mare este ierahic inferior unuia cu un paragraf mai mic).
Reteta nu ar trebui sa dureze mai mult de 2 ore, chiar si pentru cineva fara experienta, desi ca sa intelegi unele exemple trebuie sa ai un minim background in programare (poate cateva ore sau cursuri de scoala).
Dupa ce am urmat reteta am facut un programel care sa caute in toate sursele python dintr-un director si sa imi arate toate clasele definite si modulele importate, pe fisiere. Sursa e in continuare(primul rand este pentru cine ruleaza programul pe linux):
#!/bin/env python
import glob
import re
sursepython = glob.glob('*.py')
for fn in sorted(sursepython):
print '----', fn , '----'
for line in open(fn):
#cauta modulele si apoi clasele pe fiecare rand
if re.search(r'import', line):
print ' ' + line
if re.search(r'class', line):
print ' ' + line
Programele pot fi executate si cu dublu-click pe sursa, dar pentru cele de genul acesta nu apuci sa vezi rezultatul.
Pot fi dezvoltate usor si programe cu interfata grafica(ferestre sau GUI pentru cunoscatori :) ). Aici este un punct bun de inceput pentru asta inceput de la zero si explicat pe larg.
Mult spor cu reteta si impartasiti din experienta la gatit!
Yahoo web analitics online
Oct 14th
Tocmai am aflat de la Ionut de “noul” Yahoo web analitics. Este de fapt o eticheta pusa pe IndexTools, o solutie solida in domeniu, cumparata in mai de Yahoo.
Deocamdata este accesibila numai clientilor, partenerilor si advertiserilor Yahoo! asa ca nu pot sa spun exact cum se misca.
Principalul avantaj pe care il subliniaza este afisarea in timp “real” a rezultatelor (insemnand la cateva minute de la colectare). In plus ofera si acces la datele de baza (raw) si mai multe posibilitati de prelucrare.
Este un nou episod in lupta dintre giganti de care vorbeam mai de mult. Acum cei 3 sunt loviti de criza, iar Microsoft afiseaza o bucurie ciudata cum ca ar fi scapat de o tranzactie paguboasa.
Eu cred ca nu este rasul lor pentru ca nu au mai facut o mutarea inteligenta de foarte mult timp, iar rivalii par mult mai vitali (inclusiv unii care nu sunt concurenti traditionali, gen Adobe cu noul CS4 si AIR).
Le urez succes celor de la Yahoo si cred ca mutarea aceasta nu poate fi decat benefica pentru toti utilizatorii de internet, macar si prin prisma concurentei facute lui Google in domeniu.
Ce are in comun Pro TV cu Lacoste
Oct 8th
Imi plac Promourile de la Pro TV, sunt bine executate. Nu stiu cati oameni lucreaza la ele.
Din noul sezon am remarcat unul cu un baiat si o paleta de tenis futurista (din viitor cum s-ar zice). El paseste pe o suprafata transparenta, o multime de cercuri luminoase apar pe unde calca,paleta se “genereaza” din maner, face 2 scheme (mai apropiate de Bruce Lee decat de tenis) si gata, asta e, urmeaza stirile Pro TV. Nu prea am inteles legatura cu Pro TV, dar e misto.
Din pacate nu am gasit imaginile pe net, dar pot sa arat ideea executata la un alt nivel si cu alta semnificatie si greutate pentru “produsul” promovat.
Sper sa gasesc si “originalul” pentru cine se uita pe alte posturi de televiziune sau deloc.
[update]
Dupa cum am gasit la Zoso http://www.zoso.ro/2007/08/protv-si-reclama-videoclipurile.html nici nu ar fi recomandat sa pun ceva de la Pro TV pentru ca, ce credeti?! , voi avea probleme cu copyrightul :)) .