logical

Top Page  |  Lists  |  User Login

logical
  • Andrei Gheorghe, 38
  • Bucureşti, România
  • Work: Infineon Technologies
  • School: Fac. de Electronică şi Telecomunicaţii

 

Total Page Views

181,562

RECENT COMMENTS

November 25, 2022 - 20:20

Adi

Cine mai explică acum că dacă nu egalau ecuadorienii, "olandejii" conduceau in c...

posted on “dacă nu egalau englezii, danezii ar fi condus în continuare”


June 20, 2022 - 20:18

Cătălina

Nişte angajaţi ai Urban Serv sunt foarte mândri de ei şi în ziua de astăzi pentr...

posted on mud


May 24, 2022 - 14:33

logical

există şi nişte bonus pack-uri în joc, dacă faci nişte achievementuri primeşti u...

posted on mai rapid ca rapidu


May 24, 2022 - 14:31

logical

regula de cinci secunde a devenit mult mai periculoasă de când cu pandemia... nu...

posted on curcubeie pe asfalt


May 24, 2022 - 14:27

logical

şi ca fun fact, nici măcar nu este primul chirurg din echipa Rapidului... am avu...

posted on te apără de goluri şi cardiace


May 24, 2022 - 14:25

logical

eu merg aproape sigur pe varianta b. pentru că e destul de uşor să verifici că a...

posted on achtung: se fură motoare maro cu jojă neagră


May 23, 2022 - 21:17

Specter

Am văzut şi eu trailerul mai demult. Chiar mă întrebam dacă au plătit redevenţă ...

posted on mai rapid ca rapidu


May 23, 2022 - 21:12

Specter

Toate ca toate, dar eu fără cartofi prăjiţi nu-mi fac transplant!

posted on 1+1 gratuit: Organe


May 23, 2022 - 21:09

Specter

Eh, când cei mai tineri fani ai Rapidului se apropie de 40 de ani, or fi zis şi ...

posted on te apără de goluri şi cardiace


May 23, 2022 - 21:05

Specter

Sunt două variante aici: a. Ei nici nu s-au gândit dacă o să meargă maşina aia ...

posted on achtung: se fură motoare maro cu jojă neagră


May 23, 2022 - 20:54

Specter

Oare regula de cinci secunde se aplică şi la compresor?

posted on curcubeie pe asfalt


April 2, 2022 - 13:48

logical

pare că nu...

posted on de la student la senior staff engineer


April 1, 2022 - 10:30

Adi

La multi ani? Mai primeşti ceva anul ăsta?

posted on de la student la senior staff engineer


February 22, 2022 - 12:18

Specter

Măcar nu au fost 18...

posted on i-a luminat farul


February 10, 2022 - 11:54

Specter

Scrie chiar de două ori! Oare a uitat că a scris prima oară, sau chiar l-a mai c...

posted on certitudinea marilor împliniri

   "Burn Bucharest, Burn You Fucking Maniacs" [Lake Of Tears, 11 Martie 2006]

1 - 5 of 13  First | < Prev | Next > | Last     

Remodelatorul de Molecule - Posts Tagged ‘code.is.poetry’Full Post View

şi alte logici

small code optimization
small code optimization

ieri am trecut din nou la ora de iarnă... cu ocazia asta, am descoperit un bug în codul blogului... era legat de modul în care determinam dacă un post sau comentariu a fost scris cât timp era ora de vară sau ora normală...

mi-am adus aminte (nu cu plăcere) de ziua (de acum doi ani şi un pic) în care am scris codul care să returneze exact ce-am zis mai sus...

iată ce mizerie aveam în cod, scris cu mânuţele mele astea două:

<?php

  if ($year == ‘2012’)
    switch($month)
    {
      case ‘January’:
      case ‘February’:
      case ‘November’:
      case ‘December’:
        $time_zone = ‘EET’;
        break;
      case ‘March’:
        if ($day < 25)
          $time_zone = ‘EET’;
        else
          $time_zone = ‘EEST’;
        break;
      case ‘October’:
        if ($day > 27)
          $time_zone = ‘EET’;
        else
          $time_zone = ‘EEST’;
        break;
      default: $time_zone = ‘EEST’;
    }

  if ($year == ‘2011’)
    switch($month)
    {
      case ‘January’:
      case ‘February’:
      case ‘November’:
      case ‘December’:
        $time_zone = ‘EET’;
        break;
      case ‘March’:
        if ($day < 27)
          $time_zone = ‘EET’;
        else
          $time_zone = ‘EEST’;
        break;
      case ‘October’:
        if ($day > 29)
          $time_zone = ‘EET’;
        else
          $time_zone = ‘EEST’;
        break;
      default: $time_zone = ‘EEST’;
    }

  if ($year == ‘2010’)
    switch($month)
    {
      case ‘January’:
      case ‘February’:
      case ‘November’:
      case ‘December’:
        $time_zone = ‘EET’;
        break;
      case ‘March’:
        if ($day < 28)
          $time_zone = ‘EET’;
        else
          $time_zone = ‘EEST’;
        break;
      case ‘October’:
        if ($day > 30)
          $time_zone = ‘EET’;
        else
          $time_zone = ‘EEST’;
        break;
      default: $time_zone = ‘EEST’;
    }

  if ($year == ‘2009’)
    switch($month)
    {
      case ‘January’:
      case ‘February’:
      case ‘November’:
      case ‘December’:
        $time_zone = ‘EET’;
        break;
      case ‘March’:
        if ($day < 29)
          $time_zone = ‘EET’;
        else
          $time_zone = ‘EEST’;
        break;
      case ‘October’:
        if ($day > 24)
          $time_zone = ‘EET’;
        else
          $time_zone = ‘EEST’;
        break;
      default: $time_zone = ‘EEST’;
    }

  if ($year == ‘2008’)
    switch($month)
    {
      case ‘January’:
      case ‘February’:
      case ‘November’:
      case ‘December’:
        $time_zone = ‘EET’;
        break;
      case ‘March’:
        if ($day < 30)
          $time_zone = ‘EET’;
        else
          $time_zone = ‘EEST’;
        break;
      case ‘October’:
        if ($day > 25)
          $time_zone = ‘EET’;
        else
          $time_zone = ‘EEST’;
        break;
      default: $time_zone = ‘EEST’;
    }

  if ($year == ‘2007’)
    switch($month)
    {
      case ‘January’:
      case ‘February’:
      case ‘November’:
      case ‘December’:
        $time_zone = ‘EET’;
        break;
      case ‘March’:
        if ($day < 25)
          $time_zone = ‘EET’;
        else
          $time_zone = ‘EEST’;
        break;
      case ‘October’:
        if ($day > 27)
          $time_zone = ‘EET’;
        else
          $time_zone = ‘EEST’;
        break;
      default: $time_zone = ‘EEST’;
    }

  if ($year == ‘2006’)
    switch($month)
    {
      case ‘January’:
      case ‘February’:
      case ‘November’:
      case ‘December’:
        $time_zone = ‘EET’;
        break;
      case ‘March’:
        if ($day < 26)
          $time_zone = ‘EET’;
        else
          $time_zone = ‘EEST’;
        break;
      case ‘October’:
        if ($day > 28)
          $time_zone = ‘EET’;
        else
          $time_zone = ‘EEST’;
        break;
      default: $time_zone = ‘EEST’;
    }

  if ($year == ‘2005’)
    switch($month)
    {
      case ‘January’:
      case ‘February’:
      case ‘November’:
      case ‘December’:
        $time_zone = ‘EET’;
        break;
      case ‘March’:
        if ($day < 27)
          $time_zone = ‘EET’;
        else
          $time_zone = ‘EEST’;
        break;
      case ‘October’:
        if ($day > 30)
          $time_zone = ‘EET’;
        else
          $time_zone = ‘EEST’;
        break;
      default: $time_zone = ‘EEST’;
    }

?>

deci da, 186 linii de cod, care ieri au fost înlocuite cu mai elegantul cod de jos:

<?php

  $epoch = get_the_time(‘U’);
  $local = localtime($epoch, true);
  if ($local[tm_isdst])
    $time_zone = ‘EEST’;
  else
    $time_zone = ‘EET’;

?>

nu ştiam eu pe atunci ce e aia unix epoch time, cu ce se mănâncă şi dacă nu există vreo funcţie directă care să-ţi calculeze dacă era dst sau nu...

acum, bineînţeles că o să vă întrebaţi, bah ce pana mea ne arată ăsta aici doo’ste de linii de cod, explicându-ne cât de ţicnit e...

partea cea mai tare dragi prieteni este că mă chinuisem la tot acel cod doar pentru a afişa după ora postului EET sau EEST... atât, acea informaţie nu e folosită în afişarea orei, doar a acelui indicator... este fabulos cât de obsedat pot să fiu...

nota 1: este absolut genial ca un post cu titlul “small code optimization” să aibă id-ul 8051... asta e doar pentru cunoscători...

nota 2: EET = Eastern European Time, EEST = Eastern European Summer Time

Tags: , , Monday October 31, 2011 - 23:58pm (EET) Permanent Link | 27 Comments
adio fârâcî
adio fârâcî

s-a terminat...

joi a fost finala Freescale Race Challenge... n-am apucat să scriu nimic până azi pentru că am fost absolut terminat de oboseală în ziua aia, vineri a fost Trooper-ul, sâmbătă am scris despre Blind Guardian şi apoi am băut la o colegă şi ieri a fost Haggard-ul... of, atâtea aşteaptă în pipeline...

să zicem despre concurs...

totul a mers absolut perfect pentru echipa RoadKill în acea minunată zi... pe cât de prost au mers toate în Cehia anul trecut, pe atât de bine au mers la concurs... bine, doar la concurs, că ce nebunie a fost în ultimele zile de înainte o să vă povestesc în altă zi... dar na, acum mai contează doar rezultatul...

am luat locul 1, pe care ni l-am dorit mai mult ca orice... în ultimele săptămâni am muncit foarte mult pentru el şi nu cred că era altă echipă acolo care să fi avut şi serviciu de 8 ore pe zi şi să stea şi în laborator până la ultimul metrou în fiecare seară... am avut un scop şi multă voinţă... şi muulte idei inginereşti, dar din nou, despre asta altă dată...

mulţumim celor de la Freescale pentru acest concurs minunat din care am învăţat enorm de multe şi de-a lungul cărui desfăşurare am trecut prin atâtea emoţii de toate felurile încât nici nu pot să le mai enumăr... în fiecare zi ne venea să renunţăm din cauza nervilor, atât de greu era... numai dorinţa de revanşă pentru anul trecut ne-a făcut să continuăm... aveam ceva de demonstrat şi nu cred că era un mod mai clar de-a face asta decât să ieşim pe primul loc în marea finală, la o distanţă de aproape 13 secunde de locul doi... aici se vede munca...

maşinuţa putea să meargă şi mai repede... puteţi vedea în filmările de mai jos că a valsat complet neforţată pe traseu, fără nici un stres... în ultimele seri de înainte de concurs mergea mult mai repede, dar în ultima noapte am luat de comun acord decizia ca s-o punem să meargă mai încet în finală, ca să fim siguri că nu o să sară de pe traseu, în orice condiţie... şi a fost decizia corectă... majoritatea au gândit invers, au riscat...

vă las cu câteva filmări de la finală şi vă promit că vor mai urma câteva posturi despre concurs în zilele ce urmează, destul de interesante, mai ales pentru cei pasionaţi de electronică...

RoadKill – Final – First Lane

RoadKill – Final – Second Lane

vă prezint şi premierea şi discursul încropit pe loc de după... chiar nu ne aşteptam la el, nu ne zisese nimeni că o să mai şi vorbim după... şi nu-mi vine să cred că am zis “super baban” în discurs :D

Premierea şi momentele de glorie :D

cică am ajuns în CHIP: http://www.chip.ro/stiri/16757-despre-roboi-i-finala-local-race-challenge-2011 :D:D:D

remodelatorul remodelat
remodelatorul remodelat

zilele astea am lucrat foarte mult la codul sursă al blogului, am reparat bug-uri şi i-am adăugat nişte chestii noi... deci să vă explic:

  • am pus calendarul într-un iFrame... acum dacă schimbaţi luna se încarcă doar el, şi nu toată pagina... asta înseamnă că se mişcă mult mai repede... pe lângă asta, am adăugat şi două butoane noi, pentru schimbatul anului, să puteţi ajunge mai repede la posturile din anii mai îndepărtaţi (e şi o măsură optimistă, gândindu-mă la viitor)...
  • tot la calendar, înainte, când dădeaţi click pe o zi din el, vă ducea la o pagină în care era afişat doar postul (sau posturile) scrise în acea zi... şi nu aveaţi cum să navigaţi către posturile vecine... întotdeauna m-a enervat asta... acum vă duce la o pagină de pe blog care conţine natural acel post, încadrat de vecinii săi cronologici şi putând naviga oricât de departe de el... mi se pare foarte utilă treaba asta...
  • am lucrat mult la motorul de căutare, l-am regândit aproape de la zero... după cum vedeţi şi în poza de mai sus, acum se pot găsi rezultate şi în comentarii, nu numai în posturi... rezultate se evidenţiază, ca să sară în ochi... şi asta se face independent de diacritice (da, aici am muncit cel mai mult)... puteţi căuta “electronica” şi să vă evidenţieze “electronică” sau invers... foarte util...
  • dacă daţi click pe count-ul de sub avatarul unui comentator, vă duce la o pagină pe care se afişează toate comentariile acelei persoane... asta e pentru narcisistul din voi care vrea să se citească doar pe sine :D

ca întotdeauna, vă rog să fiţi cu ochii cât cepele după bug-uri şi să-mi raportaţi orice vi se pare că nu merge cum trebuie pe aici...

să vă bucuraţi de chestiile astea noi, că sunt făcute pentru voi, comentatorii... eu puteam oricând să caut texte în comentarii sau să mă uit la toate comentariile unei persoane, având acces la baza de date...

şi dacă mai aveţi şi alte idei ce ar putea fi implementate, nu ezitaţi să-mi propuneţi...

EDIT: am modificat şi culoarea pentru linkurile din posturi şi comentarii, să se vadă mai bine...

Tags: , Friday February 18, 2011 - 19:20pm (EET) Permanent Link | 9 Comments
ultima impresie
ultima impresie

azi am fost la sediul Freescale pentru o prezentare a maşinuţelor noastre inginerilor din firmă, pentru a le răspunde la întrebările referitoare la cum am folosit microprocesorul şi celelalte integrate de ei în maşinuţă şi pentru a le arăta cum merg pe traseu... pe scurt, let us geeks be geeks, că ne place mult...

mare a fost mirarea mea când am văzut câtă lume a venit la prezentare :)... erau mai mulţi decât la finala din cehia :D:D:D... românul moare de curios...

după ce ne-am lamentat cu problemele mecanice de la finală, a urmat un mici concurs de amuzament... nu am ieşit ultimii, iar maşinuţa a făcut o impresie foarte bună, atât cât am reparat-o noi în două ore...

acum chiar mi-a trecut supărarea de la finală... trebuia ca ceilalţi să nu rămână cu impresia că maşinuţa doar atât putea... şi azi le-am arătat asta...

şi se pare că au citit toţi de pe acolo posturile în care povesteam excursia din cehia... “el e remodelatorul” :D

Vlad încă nu e convins nici că se zice eIsi dIsi nici eIsII dIsII... asta după o discuţie de 20 de minute în 385...

mâine dimineaţă plec în teambuilding cu colegii de la muncă... probabil ne mai auzim de luni încolo... cu ocazia asta vor urma şi posturile despre colegi şi cum e la corporaţie pe care le amân de vreo trei luni...

Tags: , , , Thursday June 10, 2010 - 22:04pm (EEST) Permanent Link | 3 Comments
epilog

nu se mai putea... de când ne-am întors din Cehia aproape în fiecare noapte mă gândeam numai la cauciucurile alea...

azi ne-am făcut timp şi am fost prin laborator câteva ore să-i dăm de cap... am cumpărat un set nou nouţ de cauciucuri, am desfăcut axul din spate, l-am făcut bucăţi, am scos jantele de pe el, le-am lipit drept, am lipit cauciucurile pe jante, le-am pilit ca să calce cât mai bine pe traseu şi am redesenat pe cauciuc matricea pentru senzorul optic... toate astea în doar două ore de lucru efectiv...

vedeţi mai sus cum ar fi trebuit să meargă în ziua concursului... e magnific... mă trec fiori când mă uit la filmuleţ...

întrebarea pe care ne-ar pune-o oricine, şi ne-o punem şi noi acum: de ce n-am făcut asta înainte ? nu ştiu...

ne-am liniştit... acum putem trece peste asta... nu era de la cod, nu era de la electronică... asta vroiam să vedem...

Tags: , , Sunday May 30, 2010 - 23:59pm (EEST) Permanent Link | 4 Comments
1 - 5 of 13  First | < Prev | Next > | Last     
SEARCH
ARCHIVE

Valid HTML 4.01 Transitional