sanoma - 20 megfelelő bejegyzés.

Mutass mindent

Jelöld be, hogy főbb mely kategóriákat akarod olvasni, vagy ha csak egyet: kattints a nevére.


mindet
jan
feb
már
ápr
máj
jún
júl
aug
sze
okt
nov
dec
2012
-
-
-
-
-
-
-
-
-
-
2005
-
-
-
-
-
-
-
-
-
-
-
Haszprus

TDD - Test Driven Development

©   Haszprus   |   fejlesztés sanoma emarsys bme

A TDD-ről (Test Driven Development) még a BME-n írtam Szoftverminőség és menedzsment tárgy kereteiben, és bár tetszett az ötlet, de nem igazán tudtam elképzelni öt éve, hogy hogy lehetne egy alkalmazást fullosan tesztelhetővé tenni, vagy úgy megírni.

2010-ben egy korábbi munkahelyemen, ahol azért elég pro arcokat válogattak össze, még mindig ott tartottunk, hogy invesztigálni kellene a TDD-t, hogy mire jutnánk vele.

2011-ben amikor a Sanoma Mediánál voltam a PPCS (Product Price Comparison System) / Olcsóbbat / Kirakat projekten, egy több hetes hibakeresésre sikerült pontot tenni azzal hogy - az amúgy korábbról teljesen teszteletlen kódhoz - felraktam egy PHPUnitot és írtam pár unit tesztet, egyből (egy napon belül) kibuktak a bugok. Ekkor kezdtem ténylegesen hinni a unit tesztelésben.

2012-ben alkalmam nyílt részt venni az Emarsysnál egy igen nagy folyamatos fejlesztő / refaktor projektben, ami teljesen megváltoztatta a Test Driven Developmentről kialakult képet a fejemben, mivel végre láttam hogy hogy is lehet ezt fulltime alkalmazni, hogy lehet valamit 100% TDD-vel megírni.

A módszernek láttam előnyeit és hátrányait, és biztos vagyok benne, hogy vannak helyzetek, amikor alkalmaznám. Alapvetően feladatfüggőnek gondolom. Ha sok pénz múlik azon, hogy a kiadott termék hibamentes legyen (pl. mert egy olyan piaci szegmensben játszol, ahol a bugok egyszerűen nem tolerálhatóak, a vevők odébb mennek), akkor mindenképp érdemes lehet használni.

Haszprus

80,4

©   Haszprus   |   élelmezés howto kondi life sanoma történelem önmenedzsment

80,4 kg vagyok. Az utóbbi időben a Sanomáig bezárólag fixen 73-74 körül mozogtam, 3 hónap alatt viszont felszedtem 6 kilót.

Dátum KG Zsír% Víz% Pocak*
2009-05-17 71.4 14 59.4
2009-08-19 75.5 15.8 57.5
2009-10-11 70.6 13.8 59.8 81
2010-05-05 75 15 57.5
2010-05-18 73.8 15.2 58.3
2011-12-24 80.4 17.9 55.5 97.5

* Pocakkerület (köldöknél, cm)

Tennem kell valamit.

Haszprus

Pénteki meglepetés

©   Haszprus   |   buli sanoma klaudia morri

Pénteken Katával debugoltunk egy kódrészt, refaktor közben bevezettem az alábbi változót:

if ($tegnapElrejtettukDeEjfelkorUjraMegKellJeleniteni) { ...

Kata: úristen, de hosszú! Fele ilyen hosszú is lehetne!

Haszprus: hát igen, sokan szokták ezt mondani...

Ezek után jött az ominózus commit message…

Most viszont rám írt a szöszi a két héttel ezelőtti pénteki morri buliból, hogy jöhetnék legközelebb is. Maybe.

Haszprus

Day 49 @ Sanoma

©   Haszprus   |   buli fáradtság fejlesztés sanoma zene energiablog

Hétvégén alapoztunk, voltunk Morri Ligetben és Coronitában, hajnalban csatlakozott egy kedves régi ismerős is, közben befoglaltam megint a szekusok székét , hétfőn éjfélig dolgoztunk, este hívnak telefonon bocs dolgozom, írnak skype-on bocs dolgozom, taxi haza és még tovább, power, kedden pedig alvásmennyiség alapján kipihenetlenül, gyakorlatilag mégis úgy pörögve, mint még soha folytattam (boss meg is kérdezte, mit tolok). Vuttu-tuttu vuttu-tuttu. Red Bull Hell C Vitamin Béres csepp Ginseng ampulla kávé, szóval mindent, de ami leginkább pörget az az ha valamit lerakok és azt elismerik. (Másik boss másnap külön odajött mosolyogva gratulálni, apróság, de mégsem.) Nap végén hazaindulás előtti percekben beesik egy task amit csináljunk meg még ma, nyilván. Safranek, jöjjön közelebb... Itthon megnyitom a shellt, majd telefont emelek az ágyban hogy felhívjam akivel nem lehetek, helyben elalszom ruhában, égő lámpával, ahogy kell, de ezúttal legalább cipő nincs rajtam. Éjfélkor felébredek, kipihent vagyok, emaileket írok meg ticketeket kezelek 3 órán keresztül, elolvasom amire napközben nem volt időm, megírok pár irányelvet és kitűzök pár célt a karbantarthatóbb folyamatok érdekében, aztán ráébredek, hogy nem is tudok már aludni, no meg hogy hajnal 5 múlt.

Ami most jó:

  • Yves Larock - The Zoo (Muzzaik Remix)

Jó még:

  • Djuma Soundsystem - Les Djinns (Trentemoller remix)
  • Wawa - SOMBRITA ( Lauer & Canard ft Greg Note Rmx )
  • ANIMA SOUND SYSTEM - Tedd a napfényt be a számba ( MATULA feat GOLDSOUND remix )
  • Andy Caldwell feat. Lisa Shaw-Warrior (Tiger Stripes Mix)
  • Loco & Jam - Medusa [Rekluse]
  • Popmodell - Kiskece (radio edit)
  • Loco & Jam - Medusa [Rekluse]
  • Pet Shop Boys-Love Etc (Gui Boratto Remix)
  • Serge Devant Addicted with lyrics 2009 [HQ Club Mix]
  • Radio Slave Feat Danton Eeprom - Grindhouse ( Dubfire Terror Planet Remix )
  • Mightyb - Taj Mahal (Original Mix)
  • MATULA feat GOLDSOUND - Wonderful World (original)
  • Chris Lake & Nelski - Minimal Life (Original Mix) (HD)
  • Federico Scavo, Alex Kenji - Gimme Five (Mix 1)
  • Modestep - To The Stars (Break The Noize & The Autobots Remix) (Official Video)

A reggeli kardio alapjai. És az fontos.

Haszprus

Day 42 @ Sanoma

©   Haszprus   |   sanoma

Fekete ing elvégzett feladatok optimalizáció sikerélmény coronita ebéd vapiano telefon sírva röhögés kávé spontán csapat(le)épülés kínai autogén tréning power

Haszprus

ON THE TOP OF THE WORLD - once again

©   Haszprus   |   buli sanoma energiablog

ON THE TOP OF THE WORLD once again

Tegnap hosszú kihagyás után végre eszméletlen sok rábeszélés hatására megengedtem magamnak hogy elmenjek újra bulizni (Coronita persze), és hát mit mondjak, utána aludtam 3 órát és most itt pörgök mint az állat egész délelőtt. Valami volt a pezsgőmben (nem, max buborék). Kibaszottul jól vagyok.

POWER

Asszem kellett már ez a négy napos szünet.

Ja tényleg, készült is egy videó arról hogy brékeltem este:

Haszprus

Query optimalizálás

©   Haszprus   |   fejlesztés sanoma sql

30 másodperces query:

SELECT webshop_id,
  w.name,
  w.hidden,
  (SELECT count(*) FROM prices 
    WHERE webshop_id=w.webshop_id)
    AS prices_count,
  (SELECT count(*) FROM prices 
    WHERE webshop_id=w.webshop_id and deleted=1)
    AS deleted_count,
  (SELECT count(*) FROM prices 
    WHERE webshop_id=w.webshop_id and product_id>0
     and skipped=0 and deleted=0)
    AS paired_count,
  (SELECT count(*) FROM prices 
    WHERE webshop_id=w.webshop_id and skipped=1 and deleted=0)
    AS skipped_count,
  (SELECT count(*) FROM prices 
    WHERE webshop_id=w.webshop_id and skipped=0
     and product_id=0 and deleted=0)
    AS waiting_count 
  FROM webshops w
  WHERE w.book_shop = 0 
  HAVING prices_count>0 
  ORDER BY w.name

6 másodperces query:

SELECT w.webshop_id, w.name, w.hidden, 
  x.prices_count, x.deleted_count, x.paired_count, 
  x.skipped_count, x.waiting_count
  FROM webshops w
  JOIN (
    select p.webshop_id,
    count(*) AS prices_count,
    sum(deleted) 
      AS deleted_count,
    sum(if(product_id > 0 and skipped = 0 and deleted = 0, 1, 0)) 
      AS paired_count,
    sum(if(skipped = 1 and deleted = 0, 1,0)) 
      AS skipped_count,
    sum(if(skipped = 0 and product_id = 0 and deleted = 0, 1, 0)) 
      AS waiting_count
    from prices p
    group BY webshop_id
    HAVING prices_count > 0
    ORDER BY webshop_id
  ) AS x
  ON x.webshop_id = w.webshop_id
  WHERE w.book_shop = 0
  ORDER BY w.name

Note: ez a bejegyzés évekkel azután lett publikus hogy a rendszert lecserélték egy másikra.

Haszprus

Sanoma day 25

©   Haszprus   |   fejlesztés sanoma energiablog sql

Pár napja megbeszéltünk egy feladatot az Atyaúristennel és a juniorommal. Az atya elment szabira. A juniorom előadta a dolgot a technikai pm-nek, aki egy iszonyat optimizer csávó, komolyan fekete mágia amit sql query optimalizálásban lenyom, közölte, hogy ezt a dolgot nem lehet megoldani, mert van benne egy akkora descartes szorzat amit a világegyetem összes szerverével se fogunk tudni kiszolgálni. Persze égett a képem, de nem volt semmi az ügyből. Ma este ahogy hazamentek már a népek és csillapodott a nyüzsi a Sanomában, eszembe jutott egy remek ötlet amivel szerintem lineárisan halál lazán végigmászhatunk a db-n, baromira nem lesz descartes szorzat, kb. a tábla mérete lesz 2-vel szorozva a szükséges lépések száma, és annyira jó érzéssel jöttem el 19-kor (még maradtam volna, csak időre mentem), hogy ihaj. Remélem meg tudjuk oldani így.

Haszprus

Fáradtan, de nem haszontalanul

©   Haszprus   |   fáradtság sanoma idézet meló zoli

Halálosan ki voltam ma merülve, de Zoli esti látogatása miatt megittam egy red bullt, ezzel ma bennem van két red bull meg egy burn. Mondjuk szerintem tudnék aludni, hazafelé a buszon megint majdnem bealudtam, hihetetlen fáradt voltam, ég a szemem meg minden, elég rossz így dolgozni, és érzem is hogy hülyébb vagyok emiatt.

Viszont tanulni is akarnék Nem jut rá időm...

Meg callcenterezni is kéne lassan. Úgy néz ki eljön egy ebédmegbeszélésre a Sanomába valamikor a megbízóm.

Az Atyaúristen pénteken jön vissza (k-cs nincs), hétfőtől meg jön az új juniorom. Elég terhelt időknek nézek elébe... Basszus...

De valahol nagyon örülök ennek, bizonyos tekintetben csodálatos dolgok történnek, rengeteget fejlődök, meglesz ennek a haszna - bízom benne.

Haszprus

Optimalizációs feladatok

©   Haszprus   |   fejlesztés howto sanoma css js képzés mysql php javascript
  • PHP optimalizálás
    • Jenkinses elemzés a kódra
      • CPD és PMD checkre van szükség
    • XHPROF elemzés
  • DB optimalizálás
    • CT mérés javítása
      • Ne okozzon table lockot a CT mérés során keletkező INSERT-ek és UPDATE-ek. Lehetőségek: delayed vagy low priority.
    • MySQL 5.5 percona frissítés
    • Adatok elemzése
      • Nagy méretű táblák elemzése, törlési, archiválási stratégiák kialakítása és a szerkesztőséggel egyeztetés.
    • InnoDB storage engine használat
    • Query optimalizálások
      • Queries not using indexes lekérdezések optimalizálása
      • Slow query optimalizálás
      • Jetprofiler elemzések
    • Táblák particionálása
  • Kereső optimalizálás, Sphinx bevezetés
    • Admin és frontend kereső átalakítása
    • Feleslegessé vált indexek törlése
  • Admin folyamatok optimalizálása
    • Workflow felülvizsgálata, tapasztalatok implementálása
  • HTML, JS, CSS optimalizálás
    • http://gtmetrix.com/ javaslatok alkalmazása

Na ez például egy remek szakmai fejlődési program.

Igazából nem kéne meglepődnöm. Abban a szobában kb. 40 projektnek a fejlesztése zajlik, rengeteg külsős cégnek adnak ki megbízásokat a senior fejlesztőink. Csupa ilyen arccal vagyok körülvéve, juniorok nem nagyon dolgoznak a Sanomában, mert a legtöbb projektet kizárólag külső erőforrásokkal fejlesztik, plusz a hotfixeket belül, meg a deploy, üzemeltetés, ilyesmi. A lényeg hogy rengeteg tudás koncentrálódik körülöttem, és ha jól csinálom akkor rengeteget profitálhatok az itt eltöltött időből. Sajnos ebből a szobából hamarosan ki leszünk emelve egy kevésbé szakmai közegbe, de lobbizni fogok hogy tarthassam minél jobban a DPO-s kapcsolataimat.

Haszprus

Gigolo @ Sanoma party

©   Haszprus   |   buli life sanoma barátok meló

Ma mondta egy csaj hogy már kész gigolo vagyok, kedden pedig Gábor, hogy tiszta gigoló leszel nemsokára rolex óra, minden, pénteken pedig volt egy Sanomás nagycéges (600 fő) buli, ahol a kollégáktól megkaptam a Gino nevet, merthogy mindig élre vasalt szövetnadrág, hosszú fekete ing, meg amúgy is olaszos a kinézetem

BTW tegnap őszi fesztivál volt a Sanománál, bornap, épített színpad, rengeteg pad, rengeteg boros stand, pálinka, DJ, jó volt Mondjuk a halálomon voltam fáradtságilag, húzós hetek vannak mögöttem (és előttem), éjfélre itthon is voltam.

Haszprus

Sanoma

©   Haszprus   |   hwsw sanoma
Egyébként valaki olvassa a blogomat a Sanomától. Tudjátok, ők azok akik meg akarták volna venni az Index egy részét, aztán asszem nem történt meg. Azt gondolom nyilván most a blogomba akarják inkább invesztálni a milliárdjaikat. Tökéletesen meg tudnám érteni ezt a tervet.