Pokud děláte ve firmě, prasíte?
- akadlec
- Člen | 1326
@FilipProcházka kéž by to tak šlo, bohužel vedoucí hlava je právě ta co to založila a přes některé věci jdnoduše nejede vlak a bohužel to ostatním vývojářům asi i vyhovuje, neb ve většině případů je to jejich první „velká“ práce.
Práci zde bych asi přirovnal ke vtipu kde se chlap nechal přeoperovat na ženskou a kámoši se ho ptali co bolelo nejvíce, to když mu odřezali půlku mozku.
- Zax
- Člen | 370
arron napsal(a):
Hele všimnul sis u toho, že jsi ten čas na ty testy měl? A sám to vlastně píšeš. Ne vždycky je to uplně zjevný, ale ve skutečnosti ten čas, který bys věnoval psaní testů, tak vždycky věnuješ hlednání nějaké více čí méně banální chyby. Nebo mačkání F5 a procházení nějakého procesu. Nebo dumpování nějakých proměnných (btw. co třeba použít debugge, v tomhle případě by jsi ten proces prošel jednou a dost možná bys zjistil podstatně rychleji, kde ta chyba je).
Ano, jsem si toho vědom. Ale copak se budu patlat s tím, abych si nainstaloval tester, nastavil prostředí a ty testy napsal, když mám na krku deadline a na seznamu spoustu práce? Mít jistotu, že tomu ten čas můžu klidně věnovat, tak už dávno testuju.
Debugger dost zpomaluje spouštění kódu, zkusil sis vůbec někdy použít xdebug se zaplou laděnkou? Na každej request čekáš 5 vteřin…
Takhle jsi sice našel chybu, strávil jsi na tom večer, ale za měsíc, až se v tohlo části kódu zase nějaká chyba objeví, tak ten večer stráviš znovu…neudělal jsi vlastně žádnou přidanou hodnotu.
Jop, přesně tak. Možností je třeba se k tomu vrátit, až se vyčistí vzduch a nebude mě škrtit deadline.
Jinak obecně k testům. Co takhle přirovnání ke stavařům. Dovedeš si představit, že Ti někdo řekne: „No víte, my jsme tam ten penetrační nátěr nedělali, protože by to trvalo dlouho a nebylo by to vidět.“?? Nebo: „No, my jsme tu podlanu nesrovnávali, ona je sice trochu křivá, ale trvalo by to moc dlouho a zase tak moc vidět to neni.“?? Takovýho stavaře bys okamžitě vyhodil!! Jasně, existují i takoví, kteří tu práci dělají blbě a stejně mají práci. Ale najímají si je „hloupí“ lidé, kteří pak pláčou.
Pěkná analogie a opět souhlasím. Ale myslíš, že je plně v mé režii, jak dlouho na projektu můžu strávit času?
A stejně tak programátoři. Takhle se to prostě dělá a hotovo, o tom prostě není diskuze, jestli se píšou testy nebo nepíšou!! Patří to k tomuhle řemeslu a každý kdo to nedělá, tak prostě není dost dobrý řemeslník. Tečka. A řeči o tom, že něco je tak jednoduchý, že na to nejsou potřeba testy taky neobstojí. Jestliže je to tak jednoduchý, tak napsat na to test je taky tak jednoduchý, že je mi v podstatě trapný ho nenapsat, protože to trvá třeba 5 minut (a někdy třeba jenom minutu :-)).
Možná jo, jenom člověk musí být zvyklý ty testy psát. Když jsem naposledy viděl tester před čtvrt rokem, tak nemůžeš čekat, že to bude za pět minut. Jednou jsem dokonce strávil celý den tím, že jsem se snažil nastavit si správně testovací prostředí. Nešla mi rozjet knihovna mbstring a chyba byla celkem dobře schovaná (možná tu i někde vyhrabeš moje téma, kde jsem už dost zoufale prosil o pomoc).
Co na to říct… snad asi jen – nedejme se. Flek si dyžtak vždycky někde najdeme. Pokud vedení nestojí o solidní práci, tak ať si seženou patlaly. Já už se naštěstí s šéfem domluvil, takže příští dva měsíce strávím brutálním refaktoringem a psaním testů.
Editoval Zax (13. 3. 2015 11:49)
- arron
- Člen | 464
Zax napsal(a):
Ano, jsem si toho vědom. Ale copak se budu patlat s tím, abych si nainstaloval tester, nastavil prostředí a ty testy napsal, když mám na krku deadline a na seznamu spoustu práce? Mít jistotu, že tomu ten čas můžu klidně věnovat, tak už dávno testuju.
Ten vtip je v tom, že Ty jsi na to ten čas měl, jenom ses rozhodl ho využít jinak (hledat chybu „ručně“). Ale okej, možná to chce jenom trochu víc zkušeností, ale ber to jako poučení pro příště, že nikdy nemáš tolik času, aby sis mohl dovolit ty testy nenapsat.
Jak jako patlat? Jak dlouho máš pocit, že Ti to zabere? Když to fakt hodně nepůjde, tak třeba hodinu. Neříkej mi, že nemáš hodinu??
Trochu mi to připomnělo ten příběh s tím dřevorubcem, jak musel každý den pokácet 20 stromů a vycházelo mu to časově jen tak tak každý den. Jenže jak takhle každý den kácel, tak se mu tupila sekera a každý den tím kácením musel strávit víc a víc času, aby těch 20 stromů pokácel. Až nakonec nedělal nic jiného, než že jenom kácel stromy. No a šel kolem pocestný a ptá se ho: „A proč si tu sekeru nenabrousíš?“ A dřevorubec povídá: „Nemám na to čas, musím kácet, jinak to nestihnu.“…
Debugger dost zpomaluje spouštění kódu, zkusil sis vůbec někdy použít xdebug se zaplou laděnkou? Na každej request čekáš 5 vteřin…
Používám debugger dost často a s tímhle jsem nikdy problém neměl :-) I s laděnkou i bez ní :-)
Pěkná analogie a opět souhlasím. Ale myslíš, že je plně v mé režii, jak dlouho na projektu můžu strávit času?
Je plně v Tvé režii, jak ten čas strávíš. Jestliže ho chceš strávit tím, že po každé změně budeš projíždět celý usecase, tak proč ne, že jo :-) Jo, trochu přeháním, ale chci říct, že je to fakt hodně na Tobě, jak se k tomu postavíš.
Možná jo, jenom člověk musí být zvyklý ty testy psát. Když jsem naposledy viděl tester před čtvrt rokem, tak nemůžeš čekat, že to bude za pět minut.
Jak říkáš i psaní testů je skill a i pro něj platí učicí se křivka (která jak známo zaznamenáva jistý dočasný propad v produktivitě, přes který se dostaně jenom někdo).
- studna
- Člen | 181
Zax napsal(a):
Ano, jsem si toho vědom. Ale copak se budu patlat s tím, abych si nainstaloval tester, nastavil prostředí a ty testy napsal, když mám na krku deadline a na seznamu spoustu práce? Mít jistotu, že tomu ten čas můžu klidně věnovat, tak už dávno testuju.
Hm, nastavit prostředí je otázka maximálně deseti minut. A pokud jsi již někdy testy psal, tak je to imho copy&paste. A není to o tom, psát testy hned. Je to o tom psát testovatelný kód, testy dopíšeš doma po půlnoci a alespoň tak přinášíš do firmy přidanou hodnotu.
Debugger dost zpomaluje spouštění kódu, zkusil sis vůbec někdy použít xdebug se zaplou laděnkou? Na každej request čekáš 5 vteřin…
Ajajaj. XDebug si můžeš zapnout jenom pro CGI (pro spouštění testů), tedy na rychlost načítání webu to nemá absolutně vliv. A 5 vteřin je moc, nejspíš máš zaplé profilování, které vždy nepotřebuješ.
Jop, přesně tak. Možností je třeba se k tomu vrátit, až se vyčistí vzduch a nebude mě škrtit deadline.
Začarovaný kruh. Zkus pracovat i ve volném čase, jinak se těžko něco změní.
Pěkná analogie a opět souhlasím. Ale myslíš, že je plně v mé režii, jak dlouho na projektu můžu strávit času?
Na druhou stranu plně v Tvé režii je to, jak daný projekt bude vypadat. A jak se Ti na něm bude v budoucnu pracovat.
Možná jo, jenom člověk musí být zvyklý ty testy psát. Když jsem naposledy viděl tester před čtvrt rokem, tak nemůžeš čekat, že to bude za pět minut. Jednou jsem dokonce strávil celý den tím, že jsem se snažil nastavit si správně testovací prostředí. Nešla mi rozjet knihovna mbstring a chyba byla celkem dobře schovaná (možná tu i někde vyhrabeš moje téma, kde jsem už dost zoufale prosil o pomoc).
Pokud nejsi zvyklý psát testy, tak si imho nemůžeš stěžovat, že se někde nepíšou testy. Nejdřív musíš začít u sebe. Nestačí jen říct, že se něco dělá špatně. Musíš ukázat tu správnou cestu a dokázat, že je to lepší způsob, než kterým se to dělalo doposud.
Editoval studna (13. 3. 2015 12:28)
- Zax
- Člen | 370
@arron Uznávám, máš prostě pravdu. Příběh s dřevorubcem pobavil :-) No, člověk se holt musí párkrát spálit, než mu to dojde, že… nicméně tester už mám nainstalovaný, teď je čas zjistit, že ten kód, co jsem dosud bušil ve spěchu, je netestovatelný a že to musím celý předělat :-D
Debugger zpomaluje, to je prostě fakt. Míra zpomalení asi dost závisí na hardwaru, možná i na použitém OS… každopádně na mém domácím PC (Win 7, 3.5 GHz, 16 GB RAM) to skutečně jelo šnečí rychlostí, nedalo se s tím pracovat. Debugger jsem ve finále zapínal jen když jsem měl skutečně nějaký zapeklitý problém, o kterém jsem věděl, že ho jen s laděnkou asi nevyřeším. Asi mu dám ještě šanci a zkusím ho ve firmě prosadit, osobně by mi to určitě vůbec nevadilo :-)
@studna Ne, profiler jsem zaplý určitě neměl. Snad ještě umím do Googlu nabušit „xdebug too slow“ ;-)
Jistě že nejsem zvyklý psát testy. Začal jsem se tomu bohužel věnovat moc pozdě. Ale u sebe už jsem rozhodně začal. Na mém Githubu určitě nějaké testy najdeš a kdybych nemusel nastoupit do zaměstnání kvůli finančním problémům, tak bych testoval dodnes a zlepšoval se v tom. Bohužel jsem v práci nepřišel do styku s jediným testem a až dosud jsem řešil jen pidi projektíky, kde to skutečně nemělo ani moc smysl.
Editoval Zax (13. 3. 2015 12:31)
- Filip Procházka
- Moderator | 4668
Taky je dobrý rozjet si nějaký projekty bokem, klidně jenom pro radost a taky se věnovat opensource. Člověk se na tom naučí například jak psát testy a v práci je pak efektivnější a může si říct o víc peněz :)
- Zax
- Člen | 370
encero napsal(a):
@arron Ani ne tak poradit, jako naucit. Tzn idealne formou „skoleni“. Tzn postavit realny web ne nejaky proof of concept. A k tomu kompletni testy. Napriklad vubec netusim jak testovat modely. A tak vubec :)
Samozrejme za uplatu :)
@encero Osobně jsem taky nikdy model netestoval, vlastně jsem za život napsal všehovšudy tak 10–20 testů, ale IMO v tom vůbec nic není. Na začátku testu si vytvoříš testovací databázi, naplníš daty a pak prostě testuješ úplně normálně – jestli ti to vrací správná data, jestli se ti správně insertují… Na konci zase databázi vymažeš. Tam není nic k nepochopení ;-) Taky ti nic nebrání využít Nette DI, používat neony a podobně.
@FilipProcházka +1. Hodlám si to brzy zařídit tak, abych se firmě mohl věnovat jen z poloviny a zbytek času si pojedu svoje. Open source (na který v tuto chvíli nemám vůbec náladu), bokovky, nebo třeba prostě jen relax, který je taky k životu velice důležitý. :-) Hmmm jak já se těším!
- arron
- Člen | 464
Zax napsal(a):
Debugger zpomaluje, to je prostě fakt. Míra zpomalení asi dost závisí na hardwaru, možná i na použitém OS… každopádně na mém domácím PC (Win 7, 3.5 GHz, 16 GB RAM) to skutečně jelo šnečí rychlostí, …
S tím xDebugem je to velmi zvláštní, protože ho mám zapnutý doma na serveru (CentOS, 1 GHz jednojádro, 1 GB RAM) a nemám žádný problém :-)
- Zax
- Člen | 370
@arron
[xdebug]
zend_extension=${US_ROOTF}/core/php54/extensions/php_xdebug.dll
xdebug.remote_autostart=on
xdebug.remote_enable=on
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.idekey=default
xdebug.profiler_enable=0
xdebug.profiler_output_dir=${US_ROOTF}/tmp/profiler
@studna to není prokrastinace, když čekáš, než se ti přes pomalý O2 ADSL stáhne ze serveru složka vendor :-D
Editoval Zax (13. 3. 2015 13:03)
- arron
- Člen | 464
Zax napsal(a):
[xdebug]
Hele mám to takhle, ale nedokážu posoudit rozdíl Win x Linux:
xdebug.remote_enable=1
xdebug.ideKey="PhpStorm"
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_connect_back=1
xdebug.remote_port=9000
xdebug.remote_log="/tmp/xdebug.log"
EDIT: asi jsme už hodně offtopic v tomhle vláknu…
Editoval arron (13. 3. 2015 13:11)
- Tharos
- Člen | 1030
Zax napsal(a):
[xdebug]
xdebug.remote_autostart=on
Řešením je také xdebug.remote_autostart=off
a spouštět jej
on demand. Existují na to hezké
bookmarklety.
Editoval Tharos (13. 3. 2015 13:21)
- Zax
- Člen | 370
@DavidGrudl Přesně jsem čekal, že se ozveš :-D Asi tě někdy zkusím vyprovokovat ještě tou starší laděnkou s nápisem „Nette“ místo „Tracy“ :-P
@Tharos Hmm díky, to se bude hodit. Já si matně pamatuju, že jsem zkoušel s tím nastavením nějak laborovat a nejlíp mi to fungovalo s autostartem. Dokonce jestli si dobře vzpomínám, tak jsem možná i jeden čas fungoval bez autostartu a používal na zapínání nějaký panýlek do Tracy, který ale asi přestal fungovat s nějakou novou verzí, nebo tak něco. Ale už je to fakt dávno a nerad bych kecal ;-)
- arron
- Člen | 464
Tharos napsal(a):
Řešením je takéxdebug.remote_autostart=off
a spouštět jej on demand. Existují na to hezké bookmarklety.
xdebug.remote_autostart je totiž defaultně 0, tak proto ho tam nemám. Jinak používám „The easiest Xdebug“ extension do FF. Jenom si musíš dát pozor a nastavit stejně xdebug.ideKey jak na serveru, tak v extension a nakonec i v IDE.
- Quinix
- Člen | 108
@Zax existují na to doplňky do prohlížečů, kterýma si právě zapneš debug jen když je to potřeba. Např. https://chrome.google.com/…kmdgkmoaaaoc
- Tharos
- Člen | 1030
arron napsal(a):
Tharos napsal(a):
Řešením je takéxdebug.remote_autostart=off
a spouštět jej on demand. Existují na to hezké bookmarklety.xdebug.remote_autostart je totiž defaultně 0, tak proto ho tam nemám.
To bylo na @Zax a na ukázko jeho nastavení. :)
- Zax
- Člen | 370
Když už z toho vzniklo téma o xdebugu, tak toho využiju. Ve firmě jsme debugger rozjeli celkem bez větších problémů (používáme DBGp proxy), ale teď řeším, že mi to nefunguje doma. Nastaveno mám myslím vše správně (porty, mapping, host atd.), IDE klíč zaregistruju v poho, porty jsem si v routeru naforwardoval k sobě, script na serveru se zastaví (takže zjevně zaregistruje můj breakpoint), ale do IDEčka mi nedorazí žádná odpověď. S xdebug.remote_connect_back=on mi to funguje v poho, ale jak to vypnu a začnu to cpát přes DBGp, tak smůla. Bohužel nejsem žádný velký síťař, takže mě vůbec nenapadá, na čem by to mohlo selhávat. Nečekám, že tu někdo umí s křišťálovou koulí, ale stejně se musím zeptat, protože může jít klidně o nějakou prkotinu, která mi prostě není hned zjevná – neřešil jste tohle někdo?
- Filip Procházka
- Moderator | 4668
Xdebug se přes fóru rozběhává dost blbě, přijď raději do Nette jabber roomu a někdo ti tam určitě poradí lépe :)
- arron
- Člen | 464
encero napsal(a):
@arron Ani ne tak poradit, jako naucit. Tzn idealne formou „skoleni“. Tzn postavit realny web ne nejaky proof of concept. A k tomu kompletni testy. Napriklad vubec netusim jak testovat modely. A tak vubec :)
Samozrejme za uplatu :)
Poslal jsem Ti mail tady přes fórum :-)
- webdata
- Člen | 153
Zax napsal(a):
@FilipProcházka +1. Hodlám si to brzy zařídit tak, abych se firmě mohl věnovat jen z poloviny a zbytek času si pojedu svoje. Open source (na který v tuto chvíli nemám vůbec náladu), bokovky, nebo třeba prostě jen relax, který je taky k životu velice důležitý. :-) Hmmm jak já se těším!
No nevím zda bude firma nadšená za poloviční výkon a docela bych si pak dával bacha co máte napsané v konkurenční doložce pokud chcete dělat ještě něco bokem.
Jinak já když jsem dělal ve firmě, tak tam bylo důležité aby to co nejrychleji fungovalo a to jak a nebo v čem to je udělaný nebylo podstatný. Teď jsem už 4 roky jako OSVČ (zatím dobrý) a kód se snažím psát pěkně i s testama, protože pak ho mohu použít i pro jiné zakázky a hodně mě to usnadní/urychlí práci. Ke všem projektům pak generuji přes APIGen dokumentaci, pač sem tam taky zapomínám a přijde mě rychlejší proklikat si projekt v prohlížeči než třeba v super vychytaným IDE (phpstorm/netbeans).
Editoval webdata (15. 3. 2015 19:41)
- arron
- Člen | 464
webdata napsal(a):
No nevím zda bude firma nadšená za poloviční výkon a docela bych si pak dával bacha co máte napsané v konkurenční doložce pokud chcete dělat ještě něco bokem.
Jenom tak pro zajímavost, opravdu máš konkurenční doložku? Tedy opravdovou konkurenční doložku, tak jak je definovaná zákonem, tzn. s tím, že po dobu trvání doložky normálně pobíráš plat ačkoliv už ve firmě nepracuješ?
- webdata
- Člen | 153
arron napsal(a):
webdata napsal(a):
No nevím zda bude firma nadšená za poloviční výkon a docela bych si pak dával bacha co máte napsané v konkurenční doložce pokud chcete dělat ještě něco bokem.Jenom tak pro zajímavost, opravdu máš konkurenční doložku? Tedy opravdovou konkurenční doložku, tak jak je definovaná zákonem, tzn. s tím, že po dobu trvání doložky normálně pobíráš plat ačkoliv už ve firmě nepracuješ?
Jen tak pro zajímavost. Měl jsem konkurenční doložku dle zákona, která byla součástí pracovní smlouvy. Když jsem odcházel, tak jsem říkal že budu dělat to co jsem dělal ve firmě, tedy programovat. Samozřejmě, že se jim to nelíbilo a prskali. Ale každá mince má rub a líc. A pokud bych tedy nesměl po ukončení pracovního poměru po dobu trvání konkurenční doložky (většinou 1 – 2 roky), tak by mne musela firma platit tuším 50% platu co jsem měl ve firmě po dobu co platí konkurenční doložka aniž bych tam vůbec něco dělal. O nějakém nouhau vynašení z firmy se nedalo mluvit, protože tam ještě dnes programují funkcionálně v čistém PHP.
Takže došlo k dohodě, že mohu jít na ŽL a oni mne nebudou muset platit rentu. A když jsem to spočítal kolik by to hodilo, tak rád jsem to oželel, protože jako OSVČ jsem to měl za pár měsíců zpět.
Jinak to vyjednávání bylo docela peklíčko, protože se jim tam programátoři zrovna nehrnou.
Editoval webdata (15. 3. 2015 20:22)
- akadlec
- Člen | 1326
ale tak konkurenční doložka s rentou je i docela fajn záležitost pokdu je to dobře smluvně ošetřeno. Taky jsem měl takvou jednu smlouvu kterou firmě sestavil jejich právník. Můj se na to koukl, zasmál se a řek že není problém to podepsat a kdykoliv napadnout ;) jinak doložka byla na zákaz činnosti v konkrétním oboru po dobu 2 let a renta v podobě měsíčního platu což by bylo fajn, mít plat za nic a dělat něco jiného jako bokovku ;)
jinak stále prosím ty co dokážou sehnat nový job za těch 30min prosím o uvedení těch lokalit a zda tím mysleli full time job a nebo nějaké jednorázové šolichání ;)
- webdata
- Člen | 153
akadlec napsal(a):
jinak stále prosím ty co dokážou sehnat nový job za těch 30min prosím o uvedení těch lokalit a zda tím mysleli full time job a nebo nějaké jednorázové šolichání ;)
Tak stačí se podívat na inzerci firem. Například zde v TR a okolí není problém sehnat práci jako PHP programátor (je jich tu totiž málo). Teda za předpokladu, že budete dělat za mzdu 12k – 20k hrubého. Co vím, tak je tu zhruba 5 firem kteří shánějí PHP programátora a to už pěkně dlouho.
- webdata
- Člen | 153
akadlec napsal(a):
jo 12–20k hrubého tak to lecos vysvětluje ;)
Jde to mimo tema. Ale pokud vezmu, že zde v kraji to je dobrej plat (průměr tu je tak někde kolem 14k hrubého). Ale jinak souhlas motivační to moc není. A pokud si někdo z mého kraje domluví třeba nějaký home working s pražskou firmou s tím že 1× za týden se ukáže v kanclu a za to bude mít např. 40k tak mají místní firmy smolíka.
Editoval webdata (16. 3. 2015 12:28)
- webdata
- Člen | 153
akadlec napsal(a):
no mít domluvený homooffice je fajn, ale co sem zatím viděl tak 90% na to přistoupit nechce a vyžaduje člověka onsite :( což se asi není čemu divit, neb sebekázeň některých lidí bývá hodně špatná ;)
Já s homeoffice nemám problém, jsem čisté OSVČ, nesedím na dvou židlích. Takže pokud neudělám práci nedostanu zaplaceno. A je jedno kde tu práci dělám (doma, kavárna nebo firma). Pokud je někdo student (nic proti studentům), který nemusí platit zdravotní, sociální, daně a velké peníze ve složenkách, tak tam už je docela problém. Firma má pak problém a takový student nemá co ztratit. Ale pokud by to byl jeho jedinej příjem, tak by určitě kmital. To už totiž není o sebekázni ale o přežití.
- akadlec
- Člen | 1326
@JanEndel njn ale nenabíráte ;) resp. nikde jsem neviděl job offer když jsem v zimě hledal ;)
@webdata jasně to já chápu, osobně s tím taky nemám problém, pokud se k tomu člověk postaví rozumně a uvědomí si že pokud půl dne stráví na FB apod. tak další měsíc nebude mít co žrát a kde bydlet tak dokáže fungovat na homoofisu ;) taky jsem tak fungoval a vesměs sem toho pro zaměstnavatele udělal víc než kdybych seděl u něj v kanclu ;)
- Honza Kuchař
- Člen | 1662
Přidám také svoji trošku. Kdysi jsme prasili. Tedy máme některé legacy systémy, které už prostě opravdu nejsou opravit.
Potom přišla asi 3 roky fáze, nechceme prasit, ale nevíme úplně jak, což začalo přinášet inovace a důvody, proč spousta věcí předtím nefungovala.
A teď jsme se do toho konečně pustili pořádně, vypadá to k světu, funguje to a mám z toho ohromnou radost!! Rád bych najel na takový základ scrumu (podle popisu něco podobného, jako mají v Dáme jídlo). Uvidíme jak se to osvědčí. :)
PS: Máme parádní projekt, kde chceme vyhnat děti z bytů mezi stromy, je-li nám někdo ochoten pomoci (samozřejmě programováním a jistě budou i výlety všude možně), nechť mi napíše zprávu tu na fóru, domluvíme schůzku a ukážu více. :) (Kancelář máme na FI MUNI, Botanická 68, Brno; prac. podmínky individuální)