存在與時間

Posted in Stand-up philosophy on March 15th, 2016 by jos8cal

Odata cu virsta isi face simtita prezenta si golul profesional si de obicei devine vizibil cind incepi sa ai mai multe hobby-uri decit timp liber. Lucrurile nu au stat insa tot timpul asa.

In amurgul omenirii chinezii se aflau intr-o stare degradanta din punct de vedere profesional. Fara o directie clara precum cea pe care o au astazi multumita unor companii de hardware, chinezii au fost pusi in situatia extrema de a trebui sa-si inventeze lumea. Roaba, busola, cosciugul sau hirtia sint doar citeva din lucrurile pentru care le multumim zi de zi. Hirtia de exemplu le-a adus faima mondiala, iar oamenii au construit lacasuri unde se inchid zi de zi pret de 5-10 minute pentru a oferi un omagiu Chinei si a avea o relatie intima cu ea.

Reminiscentele acestei mentalitati primitive pot fi intilnite si astazi in China. Aflat intr-o permanenta lupta cu timpul in incercarea sa de a rezolva task-uri evaluate la 3, 4 zile-om in sub o ora, Aurelian s-a vazut nevoit sa dezgroape valorile chinezesti si a mers chiar la sursa pentru o metaforica intoarcere in timp, la masa de lucru, la momentul Zero cind Hirtiei i se taia cordonul ombilicar. Mai jos avem o inregistrare de o inestimabila valoare epistemologica, un graunte incoltit inghetat in timp. Asa trebuie sa fi fost odata pe Pamint:

Update: Mai jos avem si partea a doua unde hirtia este aratata cu degetul si umilita in public. Atentie, imagini socante!

Tags: , , , , ,

Adios muchaches

Posted in Stand-up philosophy on January 8th, 2016 by jos8cal

Garbage At The Deonar Landfill Site As Trash Mountain Rising in Mumbai Swamps Modi 21st Century Vision...Boys play as cows graze through garbage at the Deonar landfill site in Mumbai, India, on Wednesday, March 11, 2015. Mumbai is running out of space for its waste, and Deonar, Asia's oldest and largest dumpsite, is bursting. Each day, more than 500 trucks line up along a two-lane dirt road in an eastern suburb, waiting to add to a mountain of refuse tall enough to submerge the White House twice over. Photographer: Dhiraj Singh/BloombergInceput trist de an. Ca si cum pierderea lui George Pruteanu nu ar fi fost indeajuns, unul dintre cei mai importanti duhovnici ai miscarii in principal spirituale despre C++ si-a incetat activitatea subit, lasind in urma sa un munte de pliante, ghiduri si vouchere despre limba C++. Mirosul greu de carte a patruns rapid prin galeriile miniere dorind parca sa dezmierde pentru ultima oara nasul bine lucrat a lui Silviu.

Mirosul l-a luat prin surprindere cu asa o forta incit ultimele vorbe ale maistrului Scott si-au gasit drumul spre libertate printr-un ragnet lung indreptat spre cerul galeriei. Batrinii spun ca echo-ul inca mai poate fi auzit prin galerie sau daca asculti atent o floare de mina.

Am reusit sa aflam si noi mesajul prin chiar insusi Silviu: “Magnificent CPU Chaches Presentation. https://www.youtube.com/watch?v=WDIkqP4JbkE … We will miss you @Scott__Meyers!”

Magnificent intr-adevar! Chiar si Urban Dictionary este in complet acord cu Silviu: “Chach: Definition: Noun-A person (usually male)who attempts to exhibit a cool and popular look but generally comes across as either an asshole and/or a total loser.”

Tags: , , , , , , , , , , , , , ,

Geniu de Stiinta Roman – Realizarea Imposibilului

Posted in Premiul n00bel, Stand-up philosophy on November 2nd, 2013 by jos8cal

Pe data de 19 Octombrie 2013, Imposibilul a fost Realizat. Ovidiu Anghelidi CEO Inventikon a declarat pentru cel mai important portal de nulostiinta din Romania, CodExpert:

“Buna ziua,
As dori sa prezint “Realizare Imposibilului”, o scurta poveste care poate sa inspire pe altii despre
cum se poate ca fara studii de specialitate, fara a vorbi cu nimeni, fara a obtine nici un ajutor 
si aproape fara nici un ban, sa ajungi la nivel mondial intr-un domeniu de cercetare de varf si 
sa descoperi lucruri importante.

Ma numesc Ovidiu si am facut trei descoperiri importante: 
1. am rezolvat o problema complexa de biologie moleculara in neurostiinta
2. am gasit un algoritm criptograhic care e imposibil de descifrat (unbreakable encryption) 
3. am gasit o noua sursa de energie

Am facut de asemenea cea mai mare simulare de creier din lume (a se vedea urmatorul articol de pe Discovery Channel)
http://www.inventikon.com/articles/discovery.html

Pentru mai multe informatii a se vedea pagina urmatoare:
http://www.inventikon.com/ovidiu/index1.php

Multumesc.

Cu stima,
Ovidiu Anghelidi

Email: oanghelidi@inventikon.com
Telefon: 1-647-701-8803″

 

Redactia noastra a reusit sa obtina mai multe informatii despre Complexa Problema de Biologie Moleculara in Neurostiinta si chiar sa publice Fisa de lucru folosita de Ovidiu pe parcursul celor 40 de ani de pelerinaj mental. Este vorba despre Germinatia Bobului de Fasole si energiile ascunse de acestea. Aparent modul de viata retras al bobului este foarte asemanator cu cel a lui Ovidiu, de unde si sursa de inspiratie.

IMG_0461

Proiect: Bobul de fasole si sursa de energie.

Scopul Activitatii: Observarea cresterii si dezvoltarii la fasole.

Modul de lucru:

  1. Puneti la incoltit 10 seminte de fasole:- intr-o cutie de plastic (farfurie), pe un strat de vata acoperit cu sugativa (servetel);
  2. Umeziti “patul” (vata si sugativa);
  3. Asezati pe “patul” umed, semintele;
  4. Acoperiti semintele cu sugativa (servetel);
  5. Mentineti umezeala permanent.
  6. Observati etapele germinatiei, crestere si dezvoltarea la fasole!
  7. Dupa formarea frunzelor, plantati fasolea intr-un ghiveci cu pamant.
  8. Continuati ingrijirea plantei asigurandu-i umezeala, lumina, caldura, aer.
  9. Notati observatiile:
  • a) – pana la formarea frunzelor – ZILNIC!
  • b) – dupa plantare – SAPTAMANAL!

 La sfarsitul experimentului – comentariu personal pe toate forumurile din Romania in legatura cu activitatea desfasurata.

ETAPELE GERMINATIEI LA FASOLE

2 aprilie – am pus la incoltit 10 seminte de fasole
3 aprilie – au inceput sa-si mareasca volumul
4 aprilie – a crapat tegumentul la cateva din seminte
5 aprilie – a inceput sa creasca radacina
6 aprilie – a cazut tegumentul
7 aprilie – au aparut primele frunze
8 aprilie – plantele au crescut cativa cm
12 aprilie – am plantat fasolea in pamant
15 aprilie – plantele au crescut si au aparut mai multe frunze
Concluzie:
Toate semintele folosite la experiment au incoltit si s-au dezvoltat, deci sint un geniu.
Comentariu:
Acest experiment a fost unul interesant deoarece am putut observa toate etapele germinatiei, cresterii si dezvoltarii plantei.
Si filmul marturiehttp://www.youtube.com/watch?v=93q6FZhTrlY

Unicode

Posted in Stand-up philosophy on September 19th, 2012 by Mihnea

De ce pula mea ai vrea sa poti scrie nume de fisiere in telugu? Ok, stramosii tai n-au fost in stare sa realizeze ca 20 si ceva de semne sint suficiente pentru a reprezenta pe foaie sunetele care le ies pe gura, dar s-au prins altii intre timp. Cum cacat sa insisti sa scrii cu viermisori si iatagane dupa ce ai vazut alfabetul latin? Si, mai rau, cum sa-ti vina ideea sa aduci haosul asta in software, in loc sa le faci un bine inapoiatilor si sa le spui ca daca vor tehnica de virf pentru vazut porn, trebuie sa se invete si cu tehnica de virf pentru scris si citit? الجهاد!

Faptul ca lumea civilizata i-a bagat in seama p-astia a fost prima greseala. A doua greseala a fost formarea unui Comitet responsabil cu recensamintul alfabetului si incartiruirea mazgaliturilor intr-un Standard International. Acest Comitet ar fi putut sa adune literele latine, chirilice, kana si eventual grecesti (cu perversiunile lor gen ăâöé etc.), sa le puna intr-o tabela si sa termine treaba (ignorind ostentativ ideogramele si jihadistii), dar nu asa functioneaza comitetele. Cind ti se confera puterea de a Gindi O Solutie, trebuie sa faci ceva complicat, ca sa le arati celorlalti ca esti destept. Orice prost poate sa puna citeva sute de caractere intr-o tabela, dar tu esti un erudit patrunzator si vezi imaginea de ansamblu, asa ca tabela ta va contine hieroglifele egiptene, caracterele ugaritice, cartile de joc, emoticoane, piesele de domino si mahjong etc. Si privind tu asa la cele un milion de semne adunate, simti ca tot nu-i destul si tot se vor gasi diversi sa conteste valoarea ta, valoarea ta, asa ca adaugi si scrijeliturile de pe discul din Phaistos (caracterele 0x101D0 – 0x101FF), care nu a fost descifrat inca. CINE-I CEL MAI ERUDIT ACUM?

Si nu te opresti aici. Nefiind prost si tinind cu tarie sa arati lumii asta, te apuci sa incurajezi creativitatea in exprimare prin intermediul semnelor diacritice. Desi ai bagat in tabela toate formele de A cu cerculet, accente, sedila, puncte si combinatii, faci caractere separate pentru toate aceste semne, ca sa poata omul sa scrie A cu trema fie ca Ä, fie ca A urmat de ¨.

Astfel s-a nascut Unicode, un standard menit sa ingreuneze pe cit posibil reprezentarea digitala a textului. Unicode se asigura ca orice operatiune de bun simt pe care ai vrea s-o faci pe un string devine imposibila. De exemplu, daca ai avut ghinionul sa inveti ca un string e o insiruire de caractere, imperialistul dornic de globalizare din tine va avea pretentia ca al 5-lea caracter dintr-un string sa fie la pozitia 5. In termeni stiintifici, vei dori ca accesul la caractere sa fie in timp O(1). Ei bine, Unicode se pisa pe pretentia ta din multiple directii.

In primul rind, cea mai folosita encodare pentru Unicode este UTF-8, care e un cod cu lungime variabila. Asta s-a intimplat din cauza ca, desi sint vreo 1.1 milioane de caractere in Unicode, oamenii normali folosesc cam 100 din ele, deci s-a simtit nevoia unei reprezentari compacte. Astfel, un caracter poate avea intre 1 si 4 bytes, deci textu’ e mic, dar ca sa ajungi la un caracter trebuie ori sa treci prin toate caracterele de dinainte, adica O(N), ori sa tii si sa actualizezi o tabela de index impreuna cu string-ul, care ar fi mai mare decit spatiul cistigat prin encodarea cu lungime variabila.

Minerii se vor grabi sa observe ca Microsoft au rezolvat demult problema asta prin intermediul string-urilor wide, unde un caracter e tinut pe 16 biti. Minerii sint prosti si nu realizeaza faptul ca 1.1 milioane de caractere nu incap in 16 biti. String-urile wide din Windows folosesc de fapt UTF-16, care este tot un cod cu lungime variabila si are aceleasi probleme ca UTF-8, plus ca ocupa de doua ori mai mult spatiu pentru textul de oameni normali, trebuie convertit la UTF-8 pentru a discuta cu restul lumii si e endian-dependent, asa ca inainte sa te exprimi pe limba lui trebuie sa semnalezi ce endianness preferi cu un cacat numit byte order mark.

Sigur, 1.1 milioane de caractere pot fi reprezentate pe 32 de biti. Se pare ca problemele noastre se rezolva daca folosim UTF-32 si acceptam ca 75% din text sa fie 0, ca memoria si discurile sint ieftine in zilele noastre. Ei bine, gratie diacriticelor separate (sau “combining marks” cum se numesc ele oficial) se rezolva o pula. Daca pentru codul tau “un caracter” inseamna “o litera” si nu “o litera sau un semn de cacat care face parte din litera anterioara”, tot trebuie sa parcurgi string-ul ca sa ajungi la o anumita pozitie si ca bonus trebuie sa si stii care sint semnele alea ca sa tii cont de ele cind numeri. Evident, celelalte reprezentari au si ele problema asta.

Sa facem un efort de imaginatie: un miner-arhitect este insarcinat sa toarne fundatia unui cod ce va folosi UTF-8. Sesizind problema indexarii, dinsul infaptuieste o functie numita CharacterAt() care parcurge string-ul in cautarea pozitiei date, tinind cont de lungime variabila, diactritice separate si alte mui. In urma sa trudeste minerul-programator ce este insarcinat sa caute slash-urile dintr-un string. Miinile lui negre iti vor intinde o floare asemanatoare cu codul ce urmeaza:

for(size_t i = 0; i < Length(str); ++i)
{
    if(CharacterAt(str, i) == '/')
    {
        // ceva
    }
}

Am incercat aici sa cuprind cit mai bine mentalitatea de miner, folosind size_t pentru variabila i, ca asa a auzit ca-i bine, dar chemind Length() la fiecare iteratie, deoarece minerii nu inteleg ce face de fapt functia aia. Oricum, chiar daca minerul muta apelul catre Length() in afara buclei, cautarea asta e tot O(N^2). Cam ca atoi-ul Minerului Suprem, mai tineti minte?

Apropo, Length() ala trebuie sa aplice aceleasi principii de convietuire globala ca CharacterAt() ca sa afle cite caractere sint de fapt in sir, nu merge sa cauti primul 0.

Exista diversi mintosi care sustin ca accesul aleatoriu la caractere este necesar foarte rar. De obicei cauti ceva printr-un string, deci oricum iei la rind toate caracterele, asa ca ai nevoie doar de niste facilitati de iteratie care sa stie de regulile pulii. Chiar daca le dam dreptate, ramine comparatia, un alt detaliu prin care Unicode da muie programatorilor din lumea intreaga.

Un om sanatos s-ar astepta sa poata compara doua string-uri byte cu byte: cind gasesti valori diferite la aceeasi pozitie, string-urile difera. Asta ar fi prea simplu, asa ca din nou diacriticele separate salveaza situatia. Ca sa compari doua string-uri trebuie intii sa le normalizezi, o operatiune cit se poate de simpla si naturala cu o descriere concisa, de doar 27 de pagini. Pentru a stimula si mai tare creativitatea, exista de fapt 4 moduri de normalizare, numite intuitiv D, C, KD si KC. Pe linga disclaimer-ul ala despre OOP ce insoteste codul Java din descriere, supun amuzamentului dumneavoastra si metoda recomandata de utilizare a implementarii din WINAPI: deoarece nu poti sti cit de mare o sa fie string-ul normalizat, chemi functia aia intr-o bucla pina cind o nimereste.

Dupa ce reusesti sa normalizezi string-ul ala trebuie sa incepi cu intrebarile filosofice: este sau nu string-ul ’10’ echivalent cu ‘Ⅹ’, ‘Δ’ sau ‘١٠’? Apropo, Ⅹ ala nu e X, este 0x2169, “Roman Numeral Ten” si in UTF-8 se scrie pe 3 bytes: 0xE2 0x85 0xA9. Ce ne faceam daca nu aveam in Unicode numerele romane de la 1 la 12? UNDE MAI ERA ERUDITIA NOASTRA?!

Deci muie Unicode, muie alfabet!

Tags: , , , , , , , , , , ,

Vorbitor in numele prostilor

Posted in Slagare internationale, Stand-up philosophy on March 9th, 2012 by Mihnea

Microsoft organizeaza anual cu 47% mai multe chiolhanuri decit un primar pesedist in campanie, dar in afara de serbarea emvepeilor (care tocmai s-a terminat, apropo), aceste evenimente nu ofera prea multe motive de amuzament sau oripilare. In 2012 insa, deschizatorii de drumuri din Redmond s-au gindit sa rectifice situatia, oferindu-ne un generos subiect de bancuri si in acelasi timp confirmind raspicat faptul ca-s decisi sa se duca pulii, ca firma, cu totul.

Majoritatea reuniunilor au teme tehnice, fiind deci populate de dorci imbracati in tricouri cu zicatori despre C# sau convertit cafea in cod. Neamuzament total. Exista insa citeva care au ca subiect group hugging-ul, iar cea aleasa de Microsoft pentru declaratia de anul asta este printre ele: Worldwide Partner Conference. Aici nu se poarta tricouri, ci costume, iar participantii au siluete si postúri de fosti directori de CAP (si chiar experienta practica in aceasta ramura de activitate, in cazul celor care provin din popoare ce s-au bucurat de binecuvintarile colectivizarii si economiei centralizate).

O adunatura de umflati si decrepiti care fac “networking” nu este o priveliste amuzanta in sine, nici macar cind networking-ul continua in baruri de striptease dupa incheierea programului impus. Totusi, Microsoft au reusit sa dea o noua dimensiune evenimentului de anul acesta printr-o singura atingere de geniu. Mail-ul prin care se anunta WPC 2012 poarta urmatorul subiect:

Inspiring. Influential. Iconic. Hear him speak at WPC 2012!

Sper ca daca nu v-as fi zis ca-i vorba de Microsoft, ati fi presupus ca WPC asta e ceva circ cu agili si ca “him” e vreun Bruce Lee care vine sa le spuna cum sa fie fluizi ca apa. Eu unul asa am crezut si am dat click sa citesc, pregatindu-ma sa rid. In schimb, m-am umplut de oroare, caci iata ce scria mai departe:

COME HEAR INTERNATIONALLY ACCLAIMED DEEPAK CHOPRA SPEAK AT WPC!
Don’t miss this inspirational opportunity to hear one of the foremost leaders in the field of mind-body medicine.

Deepak Chopra

In caz ca nu sinteti la curent cu arborele genealogic al Mamei Omida si n-ati auzit de domnul Chopra, va pot spune ca “mind-body medicine” este exact ceea ce pare: un gunoi new age despre vindecare prin ginduri pozitive din aceeasi categorie cu reiki si medicina germanica. Sa fii “foremost leader” in asa ceva e ca si cum ai fi foremost leader in crestinism, barbut sau stat pe scaun. Cel mai bun mod de a deveni foremost leader intr-un domeniu de genul asta este sa inventezi respectivul domeniu si sa te proclami foremost leader, dupa cum a procedat subiectul nostru de azi. Deepak a invatat despre fizica cuantica de pe Discovery si prompt a inventat medicina cuantica si nutritia cuantica. In timpul liber sustine Intelligent Design cu argumente stiintifice preluate de la Muzeul Creationismului. El isi are locul asigurat in constelatia marilor filosofi si profeti ai timpurilor moderne, alaturi de Ryke Hamer, Rael, Osho, David Icke si, sa nu-i uitam pe-ai nostri, Lorin Fortuna si Bivo.

WPC 2012

Si ma rog, chiar daca ar exista vreo diferenta intre invataturile domnului guru si descintecele Clarvazatoarei Vanessa din Chitila, tot trebuie sa ne intrebam de ce vine el sa vorbeasca la o conferinta de IT. Sa fi acceptat oare Microsoft ca toata industria de software e de cacat, si sa incerce sa-si invete partenerii ca singurul mod de a face bani e sa gasesti niste prosti si sa le vinzi vrajeala?

Teoria mea este ca Aurelian a facut pasul cel mare peste ocean si acum e responsabil cu evenimentele micromoi. Astept cu infrigurare filmarea de pe un balcon din Toronto care sa-mi confirme suspiciunea. Sper ca la WPC 2013 va fi invitat ex-Dr. Hamer sa continue educatia CAP-istilor in domeniul medicinei moderne explicind cum microbii sint de fapt agentii de vindecare, nu problema, iar medicina “mainstream” este de fapt o conspiratie prin care evreii vor sa dea cancer civilizatiei vestice (in Israel neexistind cancer, evident). Toate aceste noi informatii ii vor ajuta cu siguranta pe directorasi sa-si creasca mai cu spor culturile de soft din ograzile proprii.

Aurelian Popa

C-o fi Aurel de vina sau ca n-o fi, macar ne-am lamurit de ce e VS 11 alb-negru si are viewer de FBX si tool-uri pentru SCRUM: daca aia din conducere o ard in spirala cu personaje ca Deepak, ce pretentii sa ai de la restul angajatilor?

Tags: , , , , , , , , , , , , , , , ,

De Sezon

Posted in Regula 0, Stand-up philosophy on December 25th, 2011 by Mihnea

A venit iar vremea retrospectivelor. Faptul ca Pamintul a mai dat o tura in jurul Soarelui de la ultima recapitulare transforma fiece cetatean intr-un Captain Hindsight inarmat cu concluzii, rezolutii si linii care se cer trase. Clisma de sfirsit de an pune punct Trecutului si-l pregateste pe om pentru Viitor.

Pai daca-i vorba de catharsis, catharsis sa fie. Oricum, nu pot rupe tacerea stinjenitoare ce se lasase pe-aci cu un articol despre micile scapari ale vreunui miner sau retorica mefecista a vreunui militian. Nu. Voi arunca o privire patrunzatoare asupra evenimentelor din 2011 si voi decerna premiile si calificativele meritate de catre fiecare entitate implicata. Deci:

Muie Silviu Ardelean

Pentru ca merita.

Muie Codexpert

Aceasta muie se confera pentru inca un an de dezinformat incepatorii, raspindit semi-adevaruri despre programare si dezvoltat un mediu dulceag-caldut in care minerii mici sa poata ecloza, iar cei mari sa poata creste si mai mari si improsca internetul cu puroiul lor cranian. Se acorda si premiul special Radio Erevan pentru efortul Gardianului Ovidiu de a-si pune Intrebarile Frecvente pe care nu le intreaba nimeni.

Muie Apple

Anul asta s-a lansat XCode 4, care e si mai abject decit 3. Fanboii l-au laudat pentru ca seamana mult mai bine cu iTunes si iti zice ce face intr-un control ce aduce a LCD. Intr-adevar, de mic imi doream ca IDE-ul meu sa semene cu un casetofon de masina. In continuare nu poti naviga intre surse cu tastele, crapa de 2-3 ori pe zi, refuza ocazional sa vorbeasca cu telefonul si trebuie sa restartezi tot, se sperie daca vede provisioning profiles facute de 3 etc.

Muie Google si Samsung

In programare exista un semn universal recunoscut al esecului absolut: sa incerci sa faci ceva ce au facut Apple si sa-ti iasa mai prost. Acest semn era prezis prin carti, dar pina de curind nimeni nu reusise sa atinga nivelul necesar de prostie. Google au ridicat manusa si au adus pe lume sistemul de operare Android.

Experienta dezvoltarii pentru Android face ca programarea pe iOS sa para un masaj erotic prestat de Scarlett Johansson. Nu numai ca pe Android trebuie sa scrii Java, acest limbaj conceput de si pentru copiii cu sindromul Down rezultati din relatiile incestuoase intre pigmei retardati; actul creator se petrece in Eclipse, un fel de editor de text care stie vag ca lucrezi la un proiect compus din mai multe fisiere, dar nu e niciodata sigur care sint fisierele alea, ce sa faca ca sa le compileze si cind.

Peste Eclipse vine Android SDK care este compus dintr-un emulator inutilizabil de incet si un plugin de Eclipse care la fiecare linie de cod da cu zarul sa vada daca sa crape sau nu, si in majoritatea cazurilor pierde. Au fost zile in care Eclipse a crapat de 20-30 de ori, fara a incerca lucruri avansate gen adaugat fisiere noi in proiect sau debug. Uneori cind il repornesti dupa ce crapa refuza sa compileze proiectul, spunind ca nu mai gaseste SDK-ul, ca unknown type java.lang.Object si alte d-astea. Atunci il mai restartezi de citeva ori, ca pina la urma o ia.

Lasind la o parte micile scapari ale mediului de dezvoltare, API-ul Android e facut de niste imbecili colosali. De exemplu, proprietatile si layout-ul controalelor se definesc in niste XML-uri. Unele chestii se pot seta si din cod, dar majoritatea nu, asa ca daca vrei sa faci chestii la runtime, Google iti recomanda sa sugi pula. Nimic nu e unde te astepti sa fie, dar nu pentru ca ar fi intr-un alt loc, ci pentru ca pur si simplu nu exista. Update-urile minore, de exemplu de la 3.1 la 3.2, iti distrug aplicatia pentru ca nimic nu mai merge ca inainte. Pentru a te ajuta sa suporti versiuni multiple, aplicatia iti crapa daca pui in XML-urle pulii ceva ce nu exista in versiunea pe care rulezi; din cod ai putea detecta versiunea si lua atitudine, dar cum ziceam, de acolo n-ai acces la proprietatile care conteaza, deci sugi.

Android este open source, adica in loc sa faca ceva care sa mearga, au luat de pe net chestii scrise de altii, pe principiul ca daca sint pe net, sigur sint bune. Google, fiind un startup cu banii numarati, nu isi permite sa dezvolte un decoder video, de exemplu. E mult mai bine sa foloseasca la maxim potentialul unui alt produs al lor, care chiar merge, pentru a localiza cu precizie o pagina care contine cuvintele “video decoder” si a downloada ce cod se gaseste pe acolo. Da, mai crapa aplicatia sau tot device-ul cind se termina stream-ul, nu merg chestii de baza gen schimbat aspect ratio in timp ce cinta, iti ia 3 versiuni majore sa adaugi suport pentru stream-uri live etc.; dar ce alternative aveai? Google nu crede in reinventarea rotii, daca se gaseste deja pe net una patrata facuta de un mester faiantar.

La tot acest haos se adauga si producatorii de hardware, care customizeaza jegul in functie de bunul plac si posibilitatile siliconului propriu. Campionii sint Samsung, care par sa-si recruteze programatorii exclusiv din rindurile indienilor care liciteaza 5 dolari la orice proiect pe rentacoder. In momentul in care incerci sa faci un player video pe un device Samsung incepi sa-ti doresti bug-urile simple, cinstite, pe care le vedeai pe alte device-uri, gen butoane care uita ce imagini au cind schimbi orientarea, sau controale care isi uita pozitia cind apare tastatura on-screen.

Google e privit ca un fel de Mecca sau Mensa al tehnologiei, unde procesul de angajare permite accesul doar celor mai stralucite minti, unde lucreaza Knuth (ala care scrie carti pentru inaltat monitorul, ca sa prinda si minerii contextul), unde primesti mincare gratis la prinz si-ti cultivi creativitatea. De la astia te astepti sa inteleaga ca daca vrei un lucru, trebuie sa-l faci. Mi se strepezesc unghiile cind trebuie sa-i recunosc cite un merit lui Apple, dar aia si-au facut singuri software-ul si hardware-ul si merg. Au inteles chiar si ca daca vrei IDE, trebuie sa-ti faci, ca dejectiile open source existente sint inutile; asta nu le-a mai iesit si au ajuns tot la o dejectie, dar macar au incercat. Google au incercat sa faca din Linux, gstreamer si Eclipse bici. Firma de programatori web, ce sa le ceri?

Va dati seama cum era Chrome daca nu le facea Apple engine-ul de HTML?

Muie Microsoft

Acum vreo 9 ani, Microsoft au zis ca C++ nu-i mai satisface intelectual si ca daca totusi vrei din C++ UI mai smecher sau feature-uri gindite pentru aplicatii web (dar nu aplicatii web propriu-zise), trebuie sa folosesti noul si stralucitorul Managed C++. Viitorul fusese trasat.

Vreo 2 ani mai tirziu, putinii oameni care au folosit mizeria au aflat ca e cazul sa se reorienteze, caci Stapinirea a infierat Managed C++ ca “deprecated”. La  schimb a fost oferit C++/CLI, care e net superior. Asta chiar e viitorul, credeti-ne de data asta!

Anul asta, Microsoft a anulat viitorul si a declarat inceputul Renasterii C++. C++/CLI nu mai e bun, aplicatiile se vor scrie de acum incolo nativ, in C++. Nu mai poti sa deschizi o pagina de MSDN fara sa ti se spuna asta. Totusi, cind te uiti prin exemplele de cod, numai C++ nu vezi. De fapt este C++/CX, o noua muie data de Microsoft limbajului. Dar sa vedeti, de data asta nu e ca data trecuta. Nu, nu, nu, asta chiar e viitorul, juram pe rosu. Ce, am mai zis asta? De ce sa privim in trecut, cind avem atita viitor de construit? Voi investiti in scris cod C++/CX si faceti-va aplicatiile sa depinda de el, ca noi sigur nu ne razgindim CEL PUTIN un an de acum incolo. CEL PUTIN!

Pentru a completa jignirea, evanghelistii o tot baga p-aia cu “at the interface” sau “at the border”. Aparent, C++/CX trebuie folosit doar cind vrei sa vorbesti cu OS-ul, si poate fi izolat acolo. Intre 99% si 99.9999% din aplicatie (in functie de evanghelistul cu care vorbesti) poate fi scrisa in C++ normal, si doar foarte, foarte rar vei recurge la un virf de /CX, drept condiment. In realitate, se vor scurge tipuri gen String din C++/CX in restul aplicatiei, sau vei muri de plictiseala facind conversii peste tot. De asemenea, e posibil sa constati ca logica de UI reprezinta, totusi, un pic mai mult de 1% din codul aplicatiei. Aceste lucruri nu-i preocupa pe evanghelisti, pentru ca ei nu scriu cod si probabil nici n-au scris vreodata.

Muie Digital Video

Compresia video nu-i un subiect accesibil minerilor. Conceptual e o chestie simpla, dar in practica sint miliarde de detalii, scenarii, profile si alte mui, astfel incit dureaza ani intregi sa scrii un codec modern. Asta este, evident, o mare timpenie.

Minerii sint perseverenti. Daca nu-i lasi sa scrie codecuri, se vor apuca sa faca containere. In fiecare zi se gaseste cite un bou sa remarce ca toate containerele sint de cacat (ceea ce e adevarat) si sa-si faca propriul container, convins ca va rezolva toate problemele (ceea ce e jenant). Unii din astia capata avint si sustinere, si astfel apar chestii ca MKV.

Rezultatul este ca n-ai nici o sansa sa faci un program de cintat sau procesat video. Inainte de a putea sa decodezi primul frame, trebuie sa ajungi la el, desfacind containere care mai de care mai ridicole, produse de programe imbecile scrise de oameni cu interpretari foarte liberale ale standardelor si specificatiilor. Daca totusi reusesti sa ajungi la frame-uri, problema se repeta, doar ca sint si mai multe variabile si e infinit mai mult loc pentru interpretari, bug-uri si alte inovatii. Sigur, poti incerca sa folosesti o biblioteca, cum ziceam mai sus ca au facut Google, dar nu faci decit sa schimbi un cosmar cu altul.

Uneori, printre aceste cacaturi digitale se mai strecoara cite o relicva analogica, gen frame rate-ul de 29.(970029) din NTSC sau codurile de Widescreen Signaling. Nu v-as dori vreodata sa ajungeti sa cititi specificatii scrise de oameni crescuti printre osciloscoape si condensatori.

Muie C++

Anul asta a fost definitivat in sfirsit noul standard C++, prilej de mare bucurie pentru unele paturi sociale care nu se descurcau prea bine nici cu vechea forma a limbajului, dar care vor putea propune acum inlocuirea enum-urilor si cu lambda-uri, nu doar cu vectori si structuri. Cu tot efortul, limbajul tot nu are un ABI si tipurile din STL tot nu pot fi folosite intr-un lib sau intr-o interfata. E induiosator cum se lauda Bjarne ca C++ este un limbaj excelent pentru construit biblioteci, dar eu cred ca e putin penibil ca nu poti distribui bibliotecile alea in forma binara. Uneori am impresia ca lumea e formata doar din freetarzi si ca e un grav faux pas sa afirmi ca vrei sa cistigi bani programind.

Din cauza ca nu exista ABI, exista COM. Din cauza ca COM este oribil si greoi, se nasc jeguri ca C++/CX.

Muie 2011

Tendintele continua: e din ce in ce mai greu sa programezi ceva, pentru ca OS-urile, bibliotecile, IDE-urile si limbajele ti se opun mai indirjit ca niciodata. De aceea, 2011 merita multa muie.

 

Tags: , , , , , , , , , , , , , , , , , ,

Insemnari din Valley Jiului

Posted in Regula 0, Stand-up philosophy on September 23rd, 2011 by jos8cal

Omul incearca sa inteleaga lumea in care fapteste, iar ca si metodologie foloseste istoria si analiza temporala a lumii. Asadar nu puteam incheia nici noi aceasta paranghelie tiganeasca de 3 zile si 3 nopti fara o trecere in revista a vietii celui care este azi sarbatoritul nostru, al tuturor.

S-a nascut in Tara Hategului, dar asta nu conteaza deoarece nu si-a ales el locul. Ce conteaza sint alegerile pe care le-a facut de-a lungul vietii, iar pentru a afla asta am inceput un intreg demers epistemologic. Inarmati cu tirnacoape de ultima generatie am reusit sa dam peste un filon de aur caruia vom incerca astazi sa-i deslusim tainele. Stimati colegi, iubite colege, onorat CNH, va supunem atentiei primul atestat documentar online despre existenta lui Silviu Ardelean.

Vom incepe prin a trece in revista omul din spatele programatorului Silviu Ardelean, desi va fi foarte greu deoarece practic ei sint de neseparat. Fiind deja expert in C++ de 4 ani la virsta de 20 de ani, este de presupus ca si-a sacrificat copilaria pentru intunericul si singuratatea galeriilor complexe la care mintea umana sapa de milioane de ani.

Matematica este alaturi de informatica materia mea favorita. Este o disciplina complexa, în care absolut totul este logic. Drept urmare dedic matematicii computationale un spatiu mai amplu.

Calculatorul este pentru mine cel mai bun prieten, care nu ma dezamageste niciodata si îmi doresc sa am o viata linistita câstigându-mi existenta din acest domeniu al viitorului.

In fundul galeriei sta scrijelit si motivul pentru care a renuntat la inocenta copilariei:

Visul meu este ca sa ajung un bun specialist în calculatoare, sa lucrez la o firma de software sau intr-un centru ce cercetare si sa ajut oamenii cum pot caci exista destul rau în lume.

Nici divinitatea nu a scapat preocuparilor adolescentine ale faptasului Silviu:

Desi în ultimi ani nu mai am prea mult timp pentru pictura uneori se întâmpla sa mai pictez si tema principala este de inspiratie religioasa.

Silviu stie inca de mic ca in spatele unui om puternic se afla o femeie puternica, asa ca a conturat inca de pe atunci portretul celei care va urma sa-i fie aleasa:

La fete apreciez în primul rând inteligenta si doar apoi frumusetea. Când stau de vorba cu cineva îmi dau seama de la primele cuvinte cu ce fel de fata am de-a face. Sunt un adept al relatiior stabile si nu-mi place sa fiu un aventurier. Apreciez fetele serioase care sunt alaturi de pritenul lor la bine si la greu, îl sprijina în activitatea profesionala, care au ambitie si planuri profesionale serioase si care nu se uita doar dupa baieti de bani gata. Inteligenta nu are pret si nu o are oricine.

Cu toate ca muncea din greu, era dependent de muzica si asta cu timpul l-a distrus. Fost consumator de manele, s-a trezit nas in nas cu muzica celor de la Westlife si a redevenit dependent peste noapte. Cu timpul doza muzicala nu mai era indeajuns pentru apetitul sau, asa ca s-a gindit serios sa infiinteze un fanclub Westlife in care sa discute pe marginea spuselor din piesele celor 5 ginditori pe gura.

Astfel, desi cel mai mult ascult muzica dance si latino se întâmpla sa ascult cu mare placere rave sau balade rock, muzica clasica si din ce in ce mai rar manele.

Actualmente, trupa mea favorita este WESTLIFE, iar ca proiect de viitor mi-as dori sa fac un fun-club WESTLIFE. Daca aveti astfel de preferinte si idei nu ezitazi sa luati legatura cu mine.

Din playlist-ul pe care Silviu a facut primii pasi in copy/paste, reamintim:

Jhon Lenen – ” Imagine ”

Gunse’s Rose – ” November rain ”

Chris Norman – ” Mill night lady ”

Backstreet Boys – ” Show me the meaning of being lonley “

O munca asidua a fost depusa la Aproximarea Computationala a Integralelor, unde nici nu vreau sa ma gindesc cit de complicat a fost sa redai ASCII cu copy/paste toate acele insemne grecesti.

La fel de complicata a fost si adaptarea CV-ului personal dupa o pagina copiata de pe net si apartinind defunctului dancd@mail.com (destinatarul in caz ca dati click pe mail-ul lui Silviu), care probabil era expert in C++ si-n limba lui Shakespeares, dar putin novice in cea a lui Molieres:

Limbi straine: Engleza (fluent), Franceza (incepator)

C/C++ expert / 4 ani

Nuff said!

Tags: , , , , , , , ,

Window 8

Posted in Premiul n00bel, Slagare internationale, Stand-up philosophy on September 17th, 2011 by jos8cal

Dupa cum probabil stiti, Kanal 69 este in straie de sarbatoare. Mult tinut sub secret, parteneriatul dintre Microsoft si Budoar a fost facut in sfirsit public. Din partea celor doua companii au fost prezenti regizorul Herb Sutter, un om care nu a reusit in industria XXX in ciuda felului in care arata, si Titus Steel, un om care nu mai are nevoie de nici o introducere.

Impreuna au descins in a prezenta ultima coproductie Microsoft-Budoar si anume Window 8, un SF porno despre un sistem de operare hermafrodit. Titus Steel va juca rolul unui programator tinut ostatec intr-o celula cu un singur geam (geamurile overlapped au fost scoase pentru a creste gradul de dificultate al puzzle-ului), celula controlata in totalitate de acest OS. Cu amabilitatea lui Titus, redam mai jos un screenshot din Window 8 si in lateral poze de la eveniment.

Mersi Titus.

PS. La eveniment au participat si mineri. Intrebat de reporterul nostru ce parere are despre prezentarea Window 8, Silviu Ardelean ne-a marturisit:

“La fete apreciez în primul rând inteligenta si doar apoi frumusetea. Când stau de vorba cu cineva îmi dau seama de la primele cuvinte cu ce fel de fata am de-a face. Sunt un adept al relatiior stabile si nu-mi place sa fiu un aventurier. Apreciez fetele serioase care sunt alaturi de pritenul lor la bine si la greu, îl sprijina în activitatea profesionala, care au ambitie si planuri profesionale serioase si care nu se uita doar dupa baieti de bani gata. Inteligenta nu are pret si nu o are oricine.”

Tags: ,

Coming out

Posted in Slagare internationale, Stand-up philosophy on August 25th, 2011 by Mihnea

In sfirsit Apple au decis sa faca pasul cel mare si sa iasa din closet. Noul lor CEO e gheu pe fata, nu pe ascuns ca Steve. Asteptam cu interes versiunea aniversara XCode 5 unde vei scrie cod printr-o interfata cum aveau strumfii xenozoofili cu inorogii in Avatar, doar ca in loc sa-ti impletesti pleata cu coada calului, iti vei da cu iLube si-ti vei baga in cur un iDildo. Roz.

La cit mai multe puli in cur!

 

Tags: , , , , , , , , , , , , , ,

Forum

Posted in Stand-up philosophy on August 15th, 2011 by Mihnea


Avem forum la http://standupprogramming.com/autobaza/. Si ca orice demers respectabil, avem si un manifest. Cu placere.

Tags: , , , , ,