2011. február 27., vasárnap

mod_cband, mod_bw

A bandwidth throttling kiválló eszköz arra, hogy már a fejlesztőkörnzezetedben átélhesd a felhasználóid fájdalmát az alkalmazás nyomorult válaszidejével kapcsolatban. Hébe-hóba még egy-két bugot is segíthet megérteni. Amikor a localhostról jön a válasz, akkor irreálisan gyors válaszidőket kapsz, éles üzemben ilyen soha nem lesz és amikor párhuzamosan egymással több AJAX interakció is történik, akkor lehet, hogy valamit ráépítessz a válaszok sorrendjére. Pedig tök összevissza az egész. Szóval ajánlom figyelmetekbe a  mod_bw és a mod_cband apache modulokat, ők segítenek olyan tré minőséget produkálni, mint amilyet az éles szerverek :-) Az egyik konfigurációban még két vmware-s virtualális szerverre épített clustert is bedobtam mögé, hogy az is igazán ótvar legyen.

2011. február 16., szerda

process != progress

A fejlesztők arra koncentrálnak, hogy minnél több és minnél frankóbb dolgot belepakoljanak a programjukba és sajnos néha ez buktatókkal jár. Úgy hívják a dolgot, hogy bug, defekt. Üzemzavarok, leállások, biztonsági hibák, kiskapuk, átgondolatlan UI, hiányos manuál, tákombákom, satöbbi. Ez ebből a fajta melóból kicsit adódik, de persze lehet koncentrálni a stabilításra, bugok persze akkor is lesznek amíg ember írja a kódot (meg szerintem utánna is, csak azt már senki se fogja átlátni)

Néhány súlyosabb probléma után aktiválódik a management és mindenféle metodikákat kezd bevezetni a probléma kezelésére. Kezdetben bár kisebb-nagyobb áldozatok árán de úgy tűnik sikerül megoldani a problémát (legalábbis lehet róla statisztikát hamisítani), de mivel egy-két csapat talál kiskaput, ezek a metodikák tovább nőnek és lassan kiterjednek a munka minden területére. Azon kapod magad, hogy a reggel vagy az egész délelött rámegy a standupra, esténként hosszú unalmas telefonkonferenciákon veszel részt, esetenként pedig beugrik egy-egy rendkívüli esemény is, "all hands meeting", satöbbi. Az iterációkat szinte lehetetlen összefogni, mert bár megvan a release, a deployment eltart hónapokig, ami szerintem ijesztő, de hát tényleg ez van. Mire valami kijut élesbe, már rég kész lennél a következő verzióval.

A folyamatnak ezen a végén megintcsak elkezdenek problémák jelentkezni, amik a process-ből adódnak. Páran (néha a többség) félreértették a processzt, nem igazodtak ki az eszközökön. Vannak tipikus problémák, például számítógépektől jogosan várjuk el, hogy nagyon sokáig emlékezzenek egy dologra és ha a feladat végrehajtásának két lépése között eltellik 2-3 hét, akkor is mintha az elöbb történt volna, tudják folytatni. Embereknél ez egészen viccesen nem működik, 2-3 hét alatt teljesen elfelejtik, hogy hol tartottak és amire ennyit kell várni, az egyszerűen ennél a lépésnél megakad és az emberünk totál elveszti a fonalat. Ez a dolog kellene a munkájához, szóval mit csináljon két hétig? Minden alkalommal menjen el nyaralni, amikor belefut egy ilyenbe? Egész életét havajon töltené.
Programozók ilyenkor szoktak jönni azzal, hogy "az én gépemen futott", a managerek pedig azzal védekeznek, hogy "nekem sikerült". Például a munkaadómnál a legrövidebb általam ismert SLA 10 munkanap, azaz két hét.