ublo
bogdan's (micro)blog

bogdan

bogdan » php string output speed test

11:54 pm on Feb 14, 2017 | read the article | tags:

during the development of a new resource-sensitive project, i wondered what is the best PHP string output method and thus compared the following:

<?php
/*  A: */	printf ('some value %d != %d' . "\n", $c, $c+1); 
/*  B: */	vprintf ('some value %d != %d' . "\n", [ $c, $c+1 ]); 
/*  C: */	vprintf ('some value %d != %d%s', [ $c, $c+1, "\n" ]); 
/*  D: */	echo sprintf ('some value %d != %d' . "\n", $c, $c+1); 
/*  E: */	echo vsprintf ('some value %d != %d' . "\n", [ $c, $c+1 ]); 
/*  F: */	echo vsprintf ('some value %d != %d%s', [ $c, $c+1, "\n" ]);
/*  G: */	echo 'some value ' . $c . ' != ' . ($c+1) . "\n";
/*  H: */	echo "some value $c != " . ($c+1) . "\n";
/*  I: */	?>some value <?php echo $c; ?> != <?php echo $c+1; ?>
<?php ?>

each statement was run inside a for loop, for one million cycles, for a total number of five times. the results were as follows:

A B C D E F G H I
0.4260 0.5836 0.6412 0.4333 0.5896 0.6781 0.4449 0.4182 0.0361
0.4220 0.6012 0.6631 0.4302 0.6210 0.6805 0.4385 0.4100 0.0361
0.4205 0.6083 0.6674 0.4306 0.6245 0.6935 0.4379 0.4168 0.0378
0.4364 0.6098 0.6697 0.4456 0.6752 0.7455 0.4530 0.4134 0.0361
0.4299 0.5964 0.6594 0.4384 0.5793 0.6538 0.4485 0.4185 0.0365

on average, the best I is 11.37 times faster than the next, followed by H, A, D, G, B, E, C and F, which is worst, 18.90 times slower than I.

bogdan

bogdan » întotdeauna în al 12-lea ceas!

11:46 am on Nov 29, 2016 | read the article | tags:

Cu toate astea, decât să-ţi dai ochii scârbit peste cap o viaţă-ntreagă, în aşteptarea unui salvator, mai bine îţi arunci privirea-n oglindă şi poate descoperi ce stă în puterile tale.

Mă enervează articolele astea: iau o idee bună, o minimizează și o transformă în demagogie electorală. Puterea de a face schimbări stă într-adevăr în fiecare dintre noi, doar că e insignifiantă în urma aia lăsată de ștampilă pe buletinul de vot. E pur și simplu o delegare a răspunderii către un grup de oameni care inevitabil vor fi corupți de sistem. Pentru că sistemul așa a fost gândit și nu a dat greș niciodată în 27 de ani de când a fost reformat.

  • Vrem transparență totală? Câți dintre noi au trimis o cerere prin legea 544/2001?
  • Vrem industrie modernă? Câți dintre noi, care au afaceri, și-au rupt de la gură alegând o mașină ieftină sau transportul în comun în locul unei mașini scumpe pentru a investi diferența în echipamente mai performante?
  • Vrem agricultura micilor fermieri? Câți dintre noi, care au terenuri mici, le muncesc sau le dau în arendă? Câți ne-am gândit să ne asociem și să ne dezvoltăm împreună cu vecinii noștri?
  • Vrem învățământ performant? Câți dintre noi s-au implicat activ și realist în adaptarea programei școlare și a modului de predare în școlile în care învață copiii noștri? Câți dintre noi, ca profesioniști, și-au rupt din timp să încerce să transmită informația acumulată?
  • Vrem cultura vie? Câți dintre noi am mers în weekend la un muzeu sau la o piesă de teatru, în loc să mergem la Mall? Câți dintre noi au încercat să înțeleagă ce-au văzut?
  • Vrem sănătate publică? Câți dintre noi ne facem un control periodic? Câți dintre noi își vaccinează copii sau îi duc la dentist? Câți dintre noi am făcut plângeri la Colegiul Medicilor?
  • Vrem transport rapid? Câți dintre noi mergem cu mașina cu toate locurile ocupate? Câți dintre noi respectă regulile de circulație?
  • Vrem să salvăm mediul? Câți dintre noi nu aruncă gunoaie pe jos? Câți dintre noi economisim apa sau energia electrică? Câți dintre noi nu merg cu mașina, 500 de metri, pentru mici cumpărături?
  • Vrem ca România să arate bine în lume? Câți dintre noi se poartă civilizat și cu bun simț când ieșim din țară?
  • Vrem mai puțină corupție? Câți dintre noi nu au dat sau nu au luat șpagă?
  • Vrem mai puțin clientelism politic? Câți dintre noi, care lucrează în companiile abonate la contracte publice, s-au plâns?

Schimbarea nu e inclusă în tușul unei ștampile. Salvarea nu vine de la un acronim. Bunăstarea nu vine dintr-un set de legi emise, redactate și implementate de incompetenți populari. Soluția va fi întotdeauna la îndemâna fiecăruia dintre noi, în acțiunile noastre zilnice.

bogdan

bogdan » inocență

10:13 am on Nov 27, 2016 | read the article | tags:

Vreau să fiu un om bun.
Care e părerea ta?
Sunt?
Da. Ești. Mie așa mi se pare. Eu nu stau de vorbă cu oameni răi.

bogdan

bogdan » what is more beautiful

09:12 am on Nov 25, 2016 | read the article | tags:

What is more beautiful, my love? Love lost or love found? Don’t laugh at me, my love. I know it, I’m awkward and naive, when it comes to love, and I ask questions straight out of a pop song. This doubt overwhelms me and undermines me, my love. To find or to lose? All around me people don’t stop yearning. Did they lose or did they find? I can’t say. An orphan has no way of knowing. An orphan lacks a first love. The love for his mama and papa. That’s the source of his awkwardness, his naivete. You said to me, on that deserted beach in California: “you can touch my legs.” But I didn’t do it. There, my love, is love lost. That’s why I’ve never stopped wondering, since that day: where have you been? And where you are now? And you, shining gleam of my misspent youth, did you lose or did you find? I don’t know. And I will never know. I can’t even remember your name, my love. And I don’t have the answer. But this is how I like to imagine it, the answer. In the end, my love, we have no choice. We have to find.

bogdan

bogdan » nu sunt antreprenor

12:50 am on Jan 11, 2016 | read the article | tags:

nu îndrăznesc să spun despre mine că sunt antreprenor. nu mă ridic la înălțimea standardelor stabilite în literatura de specialitate. nici pe departe. nu m-am dezvoltat personal și nici nu am învățat să fac business.

sunt aproape doi ani de când îmi asum riscuri pentru a-mi construi propriul drum și nu pot să spun exact că mi-a reușit și nici că am eșuat. pentru că în viață, am învățat, lucrurile nu sunt absolute.

am pornit un start-up pentru că-mi place să visez și aș vrea, la un moment dat, să-mi urmez visul. felul ăsta de activitate îmi va pune la dispoziție resursele de care am nevoie să visez cu ochii deschiși. am încercat și alte metode.

am fost angajat. și deși am avut parte e oameni extraordinari care au fost alături de mine să mă îndrume și de la care am învățat o mulțime de lucruri, nu era locul meu acolo. pentru că un loc de muncă îți ia ceea ce ai tu mai de preț. la mine era creativitatea de care aveam nevoie să visez. mi-au oferit în schimb bani și liniște. n-a fost suficient.

am fost finanțat. și din nou, oamenii cu care am pornit la drum au fost minunați și din nou am învățat de la ei o mulțime de lucruri, dar din nou locul meu nu era acolo. un finanțator te lasă să faci ceea ce-și dorești. dar îți impune limite. pe care la început nu le observi sau crezi că poți să le ignori, până când libertatea ta dispare. imaginează-ți că te obligă cineva să visezi în fiecare seară vacanțe exotice și ziua, un om care nu poate să viseze te auditează pentru a-ți verifica calitatea viselor. mi-a oferit în schimb bani și o parte din vis. n-a fost suficient.

sunt propriul meu angajat. sunt creativ pentru clienți în limita pe care mi-o permit fără să-mi afecteze visul. îmi impun limite la vis pentru a le putea depăși. e greu și muncesc de cel puțin două ori mai mult decât am muncit în oricare dintre situașiile anterioare. n-am avut vacanță de când am început. am oameni care depind de mine și de care trebuie să am grijă pentru că ei au grijă de visul meu. mi-am oferit libertatea de a visa și parțial bani. să-mi împlinesc visul a devenit o problemă de timp.

ce-am învățat în aproape doi ani de indendență? că trebuie să muncești foarte mult și trebuie să fii dedicat visului tău. că la un moment dat trebuie să găsești oameni la fel de dedicați ca și tine și să faci tot posibilul să-i păstrezi. că întotdeauna primul răspuns corect la o întrebare este «nu». că e important să fii sincer față de clienții, furnizorii și angajații cu care îți dorești să lucrezi: nu trebuie să epatezi și nici să aplici tehnici speciale de negociere. că ai nevoie de avocat și contabil. și din nefericire, că Mr. Burns are dreptate:

Family, religion, friendship. These are the three demons you must slay if you wish to succeed in business.
— Charles Montgomery ”Monty” Burns

green-rocket

bogdan

bogdan » bypass

12:08 am on Sep 14, 2014 | read the article | tags:

sunt mândru că sunt absolvent de matematică și îi voi fi pentru eternitate recunoscător domnului profesor stănescu pentru că m-a îndrumat pe acest drum. recomand cu căldură și sinceritate acest parcurs oricărui elev de liceu, viitor absolvent, care vrea să înțeleagă cu adevărat ceva din viață.

să nu mă înțelegi greșit. corpul profesoral este în majoritate viciat: slab pregătit, corup și amoral. însă școala românească de științe exacte – slab influețată de retorica partidului, în antiteză cu cea de științe umaniste – și-a pus amprenta exact acolo unde trebuie, în orgoliul nemărginit al urmașilor lor, actualii conferențiari și profesori universitari. ignoranța și indiferența lor față de subiectul predat fiind suplinită de canonul metodei de predare, lăsat moștenire de generațiile anterioare.

această metodă este singurul aspect care delimitează facultatea de matematică de noroiul întregului învățământ superior românesc și care, asemeni unui vaccin dureros și generos în complicații, te protejează și te întărește pe parcursul existenței.

cheia întregului proces este trecerea obligatorie prin greșelile pe care generații întregi de filosofi și matematicieni le-au făcut prin studiul demonstrațiilor afirmațiilor lor omonime. în acest fel, analizarea argumentelor fiecăruia ajutându-te să integrezi în personalitatea ta bucățele din acel om, experimentând direct, mai ales în timpul examenelor aparent ilogice, dezamăgirilile și durerea acelui om, dar și euforia descoperirii.

pentru că în viață, drumul e mult mai important decât destinația. și orice scurtătură pe care o alegem ne privează de experiența călătoriei, a obstacolelor și piedicilor pe care le întâlnim pe parcurs, a lucrurilor care ne ajută să ne clădim caracterul și să apreciem destinația.

the Apollo 1 Crew

Pe 27 ianuarie 1967, Gus Grissom, Ed White și Roger Chaffee (de la stânga la dreapta) se pregăteau pentru prima misiune Apollo. Capsula în care aceștia se aflau a fost distrusă de un incediu în timpului unui test înainte de zbor. Doi ani și șase luni mai târziu, Armstrong și Aldrin pășeau pe Lună.

bogdan

bogdan » 28 aprilie – diferențe de gen

08:41 pm on Apr 28, 2014 | read the article | tags:

Diferențele dintre sexe sunt exprimate la nivel celular. Viitorul ne rezervă medicamente specifice pentru femei, respectiv bărbați.

Un articol științific publicat în revista Nature[1] studiază procesul prin care cromozomul Y, determinant pentru stabilirea genului masculin în cadrul majorității mamiferelor, a fost micșorat pe parcursul a 300 de milioane de ani de evoluție, estimând o stopare a acestui proces încă de acum 25 de milioane de ani. Cauza opririi acestui proces are originea într-un nucleu de 12 gene, care nu influențează aparatul reproducător masculin, ci țesuturi prezente în inimă sau celulele sangvine, transformând micuțul cromozom într-unul dintre gadget-urile genetice esențiale pentru supraviețuire fiind favorizat de procesului evolutiv. Consecința directă a acestor descoperiri este diferența impusă de gen în liniile celulare ale indivizilor aceleiași specii și invalidând orice model celular unisex pentru țesuturile afectate. Efectul procedurilor medicale specifice și al medicamentelor devine imprevizibil pentru produsele și protocoalele derivate din cercetările bazate pe modelul ”egalității de gen celulare”. Cu alte cuvinte, viitorul apropiat ne va aduce medicamente specifice pentru bărbați și femei [sursă].

X and Y chromosomes

În aceeași notă, șoarecii de laborator sunt mai stresați atunci când sunt utilizați de către cercetătorii de gen masculin, ducând la devierea rezultatelor experimentelor în care sunt folosiți [sursă]. Mai mult, mirosul cercetătorilor bărbați crește toleranța la durere a rozătoarelor [sursă], compromițând rezultatele obținute în urma diferitelor teste.

O căpușă este cel mai rapid animal de pe planetă. Viteza la scara umană a acestui arahnid ar fi de 2,000 km/h.

Micul arahnid, Paratarsotomus macropalpis, se poate deplasa cu o viteză de 322 lungimi de corp într-o secundă în comparație cu un ghepard care aleargă cu numai 16 lungimi de corp pe secundă. Studiul căpușei este interesant pentru determinarea principiilor mecanice care stau la baza vitezei incredibile de mișcare a picioarelor micului organism, fiecare picior atingând solul de 135 de ori într-o secundă, lucru extrem de util de implementat în viitorii mini-, micro- și nano- roboți [sursă].

1. Bellott, D. W. et al. Nature 508, 494–499 (2014).

bogdan

bogdan » liberarizarea cunoașterii

07:50 pm on Feb 11, 2014 | read the article | tags:

cel mai rău lucru care i se poate întâmpla unei direcții de cercetare este subfinanțarea. nu, lipsa fondurilor pune presiune pe cercetător pentru a deveni creativ, productiv și competitiv, pentru că tehnologia pe care o dezvoltă trebuie, într-un timp relativ scurt, să îi asigure existența. edison nu a inventat primul bec, ci primul bec fezabil din punct de vedere comercial1. asemeni prădătorilor din junglă, lipsa hranei devine un factor al naibii de motivant.

suprafinanțarea este visul oricărui cercetător, posibil de altfel numai în situașia finanțatorilor vizionari. lipsa celorlalte griji materiale permite un focus total asupra problemelor care trebuie rezolvate. un exemplu elcovent este secvențierea genomului uman, care a beneficiat de entuziasmul și suportul financiar al mai multor entități, prezentând rezultatele finale cu aproape 2 ani înainte de termenul stabilit2. dezvoltarea agriculturii a permis oamenilor primitivi să mute obiectul activității lor către cultură și științe.

ajungând la subfinanțare, cercetătorul știe că nu dispune de resurse suficiente pentru a-și atinge integral obiectivele și profită de naivitatea finanțatorilor pentru a prezenta o serie de rezultate spectaculoase, dar care necesită un minimum de resurse, în așa fel încât să-și asigure continuitatea. două exemple care îmi vin în acest moment în minte sunt fuziunea nucleară (ca domeniu) și problema neutrinilor mai rapizi decât lumina. dezavantajul pentru societate vine din puterea inimaginabilă a organismelor vii de a se adapta. mâncăm, dar nu atât de mult. în câteva generații metabolismul se va modifica încât să compenseze deficitul de nutrienți. în acest fel, idei de altfel revolușionare, vor continua să fie plasate în categoria ”ne-important” și, cu excepția unor grupuri în continuă diminuare, să fie uitate.

atitudinea social-democrată ”lasă, să fie bine la toți” nu este oportună în educație și cercetare, două domenii în care legea junglei (liberalismul) ar trebui să fie dominantă.

Thomas A. Edison seen here in 1929 holding a replica of his first lamp.

referințe:
1. Paul Israel, Edison: A life of inventions (2000) Wiley&Sons
2. Ivan Noble, Human Genome Finally Complete (2003) BBC News
3. Sursă Imagine: Thomas Edison

bogdan

bogdan » raspberry pi minimal gentoo (updated)

03:46 pm on Dec 29, 2013 | read the article | tags: ,

the love for gentoo and the spare time during this winter holidays made me update my minimal raspberry pi gentoo image. the image includes:

  • latest 3.10.y (3.10.25+) raspberry pi kernel (sha1: 035642b95ebe820cc265070af72a13f4fa1eb4c7). hdmi output is enabled, also the sound card module is compiled together with lan95xx driver, zd1211 usb wi-fi driver, 3g modem support, ftdi serial addapter and f2fs support. of course gpio. f2fs-tools are also included, but the root partition is still ext4 as some still use debian stable which has no f2fs support.
  • iproute2, iptables and dropbear ssh for networking. no ipv6 support as i think rpi is best suited for local networks. udhcpc is provided through busybox. same ping.
  • full blown vim and wget. i like editing in colors. and sometimes you have to download something.
  • lighttpd http server. as i’m starting to like how easy it is to setup. the root folder of the http server is on the VFAT partition, under www. so you can upload your website files directly from windows.
  • php5.5.4 with fpm and sqlite3. although minimal things are compiled in php, it should be enough to run wordpress. warning! no gd or imagemagick support.
  • wpa_supplicant if you decide to add an wifi dongle. pulled out onto the /boot VFAT partition the network configuration file under /boot/etc/network.
  • you need at least 2Gb of SD card. had incredible success with Hama 8Gb/Class 10/Blue cards. the Verbatim 8Gb/Class 10/Blue card on which i built the first version doesn’t work anymore.
  • root password is blackcat

here’s the download link. enjoy! =) gentoo-3.10.25-blackcat-1.0.img.gz (sha1: d5560f81e43361a7e99db6e7d42e67d4446b0b7b)

Raspberry Pi Minimal Gentoo Distro

bogdan

bogdan » dincolo de apă

11:03 pm on Dec 28, 2013 | read the article | tags:

presa e inundată de rezultatele spectaculoase ale vânătorilor de planete purtătoare de apă. majoritatea misiunilor spațiale pământene care poartă experimente pentru determinarea vieții caută urmele lichidului vital. și totul pentru că apa e considerată elementul esențial al vieții. însă cât timp putem să fim atât de aroganți încât să credem că viața în univers are același chip și asemănare cu cea terestră?

din punct de vedere matematic și pornind de la observațiile speciei noastre, singura afirmație coerentă din punct de vedere logic este ”viața terestră așa cum o cunoaștem implică abundența apei în stare lichidă”. iar reciproca nu este neapărat adevărată. ba mai mult, există posibilitatea ca dependența de apă să fie o caracteristică exclusivă a vieții de pe pământ.

robert freitas în cartea ”xenology: an introduction to the scientific study of extraterrestrial life, intelligence, and civilization” propune o serie de solvenți biogenici comparabili. cu proprietăți fizice și chimice comparabile. cu raționamente bazate pe logică și observații științifice. cu argumente care permit existența xenobiologiilor exotice. iar faptul care mi-a atras atenția este dependența noțiunilor chimice de alegerea apei ca solvent și de existența unei corespondențe pentru noțiunile de ”acid”, ”bază” și ”sare” pentru fiecare tip de ”apă” considerat. analogia se extinde și către compușii organici, unde ”alcoolii”, ”aminoacizii” și ”proteinele” sunt rescrise. și cum învățăm de mici că aceste noțiuni sunt absolute.

întorcându-mă la idea inițială, aceea de a căuta viață în univers, pentru a ne crește șansele de a găsi un e.t., misiunile spațiale și programele de cercetare ar trebui să-și lărgească orizontul căutărilor pornind de la ideea de mai sus. și asta chiar dacă rezultatele publicate cu privire la găsirea unei ”goldilocks zone” pentru amoniac într-un sistem solar apropiat nu vor mai fi pe înțelesul maselor și cu atât mai puțin al finanțatorilor. un cerc vicios de altfel care ne limitează potențialul și are la bază ignoranța majorității antreprenorilor generată de un sistem educațional care a pierdut deja pasul cu progresul tehnologic. același sistem educațional a cărui calitate se degradează exponențial din lipsa investițiilor și a implicării mediului de afaceri.

DNA Strands

articolul a fost inspirat de Anca și afirmația ei ”totul e chimie!”.

aceast sait folosește cookie-uri pentru a îmbunătăți experiența ta, ca vizitator. în același scop, acest sait utilizează modulul Facebook pentru integrarea cu rețeaua lor socială. poți accesa aici politica mea de confidențialitate.