Nový projekt vs. cizí kód

Re:Nový projekt vs. cizí kód
« Odpověď #30 kdy: 10. 09. 2020, 23:50:29 »
Dobre... zpet k zakladni otazce a motivaci k ni.
Myslim, ze dlouhodobe neni udrzitelne kazde 2 roky vsechno prepisovat.
Ono to není nejen udržitelné, ale ani možné. Takže se to zas tak moc nedělá. Co má šanci na úspěch je přepis dílčích částí. Ale tak aby celý systém zůstal funkční.
Ja  som zazil projekty, ktore mali pravidlo "program moze byt len tak velky, aby ho jeden koder dokazal za mesiac napisat nanovo". Toto fungovalo fajn.
Jo, takovéhle jednoduché projekty se píšou fajn. Akorát že Běžný Franta Uživatel si zvykl používat počítač i k věcem, jejichž inherentní složitost je o pár řádů někde jinde.
Fakt bych rád viděl, jak by nějaký kodér napsal za měsíc třeba korektní práci s daty a časy. Nebo vykreslování unicodu. A to není ani celý program, to je jenom malý bezvýznamný dílek.
To pravidlo by mohlo fungovat pro nějakého lepiče lopatiče, který lepí dohromady prefabrikáty.


Re:Nový projekt vs. cizí kód
« Odpověď #31 kdy: 11. 09. 2020, 06:35:31 »
Já rád dělám na legaci kódu pro klienta. Protože obvykle ten klient už ví, že je v háji, a já umím dělat refactoring tak akorát, abych na jednu stranu nezařízl bussines, a na druhou stranu abych ozdravoval kód. Takže když po letech odcházím, je ten kód obvykle v mnohem lepším stavu.

Vzhledem k tomu, že většinu programátorů se legaci kódu štítí, tak mám skvělou vyjedávací pozici s klientem :-)

Ok tak jestli dobre pocitak tak sme zatim 4.
Ale proc se toho ta vetsina stiti?

Re:Nový projekt vs. cizí kód
« Odpověď #32 kdy: 11. 09. 2020, 07:18:13 »
Uz 15 let se delam vyvoj software. Na ruznych pozicich, v ruznych jazycich, domenach a pro klienty v ruznych castech sveta.
Ptam se protoze pozoruju trend.
Ty dva roky sem si z prstu nevycucal. Je to opakovana zkusenost. Takze muzu rict, ze dela.
Posledni zkusenost je asi mesic stara.
"Cerstve" vyvinuta vec. Posledni work package je v produkci asi pul roku. Vyvoj zacal v prosinci 2018. Business si chrochta, ze to funguje. Opsici jsou taky relativne spokojeny (i kdyz to jsou vecny brucouni...)
A ted sem se dozvedel, ze se mam podilet navrhu neceho co to ma nahradit. A kdyz sem se zeptal architekta u zakaznika jaka je motivace, abych vlastne vedel jaky problem mam resit... tak nevedel...
Rikal, ze ho to vlastne nezajima, protoze na to mame budget tak muzem vyzkouset novou platformu.

Kdybych byl businesak/uzivatel/akcionar .... tak ho asi vystrelim ze cvicek...
Ale jelikoz jsem potencialni dodavatel tak se jdu vybrecet na root a hledat logiku...

A co proc ti to vadi? Evidentne se pohybujes v nejake (pochybne - jak jinak ze) korporatni sfere, kde prava ruka nevi co dela leva. Proste klasika. Tak ale bud rad ze mas praci ne. Nebo proc se pohybujes mezi temito lidma? Evidentne to jejich businessu dava smysl, kdyz na to uvolnili prachy. Chces logiku. Tak ja ti nejakou dam. Treba se jim tam zmenil nejaky vysoky manager a jednim z jeho KPI jsou uspesne realizovane nove IT projekty. Takhle to bejva casto.

Kdyz se mi neco nelibi tak to chci zmenit. Ne hned utikat nekam kde to bude jinak.
To je stejny jako s tim kodem...
Kdyz si chci budovat s klientem nejaky dlouhodobejsi vztah tak musim:
Pochopit jeho motivaci abych se mohl bud prizpusobit, nebo ho presvedcit ze ta motivace je spatna.
A taky to potrebuju pochopit od spoda (proc se toho programatori stiti) abych je mohl presvedcit ze nove neni vzdycky lepsi a ze stoji za to jit pracovat i udrzbu a rozvoj.

Re:Nový projekt vs. cizí kód
« Odpověď #33 kdy: 11. 09. 2020, 08:02:24 »
Já rád dělám na legaci kódu pro klienta. Protože obvykle ten klient už ví, že je v háji, a já umím dělat refactoring tak akorát, abych na jednu stranu nezařízl bussines, a na druhou stranu abych ozdravoval kód. Takže když po letech odcházím, je ten kód obvykle v mnohem lepším stavu.

Vzhledem k tomu, že většinu programátorů se legaci kódu štítí, tak mám skvělou vyjedávací pozici s klientem :-)

Ok tak jestli dobre pocitak tak sme zatim 4.
Ale proc se toho ta vetsina stiti?

Kdyby se toho vetsina stitila, tak co by delali? Hadam ze 90% programatorske prace je udrzba a rozvoj stavajich systemu. Osobne tak ze 70% delam totez - udrzbu a rozvoj. Nicmene, kdyz si muzu vybrat porad se vice citim jako programator se zamerenim na vyvoj nez udrzbu. Niceho se nestitim, ale proste ten fun factor je uplne nekde jinde :)

Re:Nový projekt vs. cizí kód
« Odpověď #34 kdy: 11. 09. 2020, 08:11:59 »
Uz 15 let se delam vyvoj software. Na ruznych pozicich, v ruznych jazycich, domenach a pro klienty v ruznych castech sveta.
Ptam se protoze pozoruju trend.
Ty dva roky sem si z prstu nevycucal. Je to opakovana zkusenost. Takze muzu rict, ze dela.
Posledni zkusenost je asi mesic stara.
"Cerstve" vyvinuta vec. Posledni work package je v produkci asi pul roku. Vyvoj zacal v prosinci 2018. Business si chrochta, ze to funguje. Opsici jsou taky relativne spokojeny (i kdyz to jsou vecny brucouni...)
A ted sem se dozvedel, ze se mam podilet navrhu neceho co to ma nahradit. A kdyz sem se zeptal architekta u zakaznika jaka je motivace, abych vlastne vedel jaky problem mam resit... tak nevedel...
Rikal, ze ho to vlastne nezajima, protoze na to mame budget tak muzem vyzkouset novou platformu.

Kdybych byl businesak/uzivatel/akcionar .... tak ho asi vystrelim ze cvicek...
Ale jelikoz jsem potencialni dodavatel tak se jdu vybrecet na root a hledat logiku...

A co proc ti to vadi? Evidentne se pohybujes v nejake (pochybne - jak jinak ze) korporatni sfere, kde prava ruka nevi co dela leva. Proste klasika. Tak ale bud rad ze mas praci ne. Nebo proc se pohybujes mezi temito lidma? Evidentne to jejich businessu dava smysl, kdyz na to uvolnili prachy. Chces logiku. Tak ja ti nejakou dam. Treba se jim tam zmenil nejaky vysoky manager a jednim z jeho KPI jsou uspesne realizovane nove IT projekty. Takhle to bejva casto.

Kdyz se mi neco nelibi tak to chci zmenit. Ne hned utikat nekam kde to bude jinak.
To je stejny jako s tim kodem...
Kdyz si chci budovat s klientem nejaky dlouhodobejsi vztah tak musim:
Pochopit jeho motivaci abych se mohl bud prizpusobit, nebo ho presvedcit ze ta motivace je spatna.
A taky to potrebuju pochopit od spoda (proc se toho programatori stiti) abych je mohl presvedcit ze nove neni vzdycky lepsi a ze stoji za to jit pracovat i udrzbu a rozvoj.

Zmenit chovani zakazniku v bankach, automotive, tele,...? Hodne stesti. Hromada lidi s provomocema co ma ruzne cile, vlastni cile. Ale treba se ti povede a bude z tebe dobry politik


Re:Nový projekt vs. cizí kód
« Odpověď #35 kdy: 11. 09. 2020, 08:38:31 »
Uz 15 let se delam vyvoj software. Na ruznych pozicich, v ruznych jazycich, domenach a pro klienty v ruznych castech sveta.
Ptam se protoze pozoruju trend.
Ty dva roky sem si z prstu nevycucal. Je to opakovana zkusenost. Takze muzu rict, ze dela.
Posledni zkusenost je asi mesic stara.
"Cerstve" vyvinuta vec. Posledni work package je v produkci asi pul roku. Vyvoj zacal v prosinci 2018. Business si chrochta, ze to funguje. Opsici jsou taky relativne spokojeny (i kdyz to jsou vecny brucouni...)
A ted sem se dozvedel, ze se mam podilet navrhu neceho co to ma nahradit. A kdyz sem se zeptal architekta u zakaznika jaka je motivace, abych vlastne vedel jaky problem mam resit... tak nevedel...
Rikal, ze ho to vlastne nezajima, protoze na to mame budget tak muzem vyzkouset novou platformu.

Kdybych byl businesak/uzivatel/akcionar .... tak ho asi vystrelim ze cvicek...
Ale jelikoz jsem potencialni dodavatel tak se jdu vybrecet na root a hledat logiku...

A co proc ti to vadi? Evidentne se pohybujes v nejake (pochybne - jak jinak ze) korporatni sfere, kde prava ruka nevi co dela leva. Proste klasika. Tak ale bud rad ze mas praci ne. Nebo proc se pohybujes mezi temito lidma? Evidentne to jejich businessu dava smysl, kdyz na to uvolnili prachy. Chces logiku. Tak ja ti nejakou dam. Treba se jim tam zmenil nejaky vysoky manager a jednim z jeho KPI jsou uspesne realizovane nove IT projekty. Takhle to bejva casto.

Kdyz se mi neco nelibi tak to chci zmenit. Ne hned utikat nekam kde to bude jinak.
To je stejny jako s tim kodem...
Kdyz si chci budovat s klientem nejaky dlouhodobejsi vztah tak musim:
Pochopit jeho motivaci abych se mohl bud prizpusobit, nebo ho presvedcit ze ta motivace je spatna.
A taky to potrebuju pochopit od spoda (proc se toho programatori stiti) abych je mohl presvedcit ze nove neni vzdycky lepsi a ze stoji za to jit pracovat i udrzbu a rozvoj.

Zmenit chovani zakazniku v bankach, automotive, tele,...? Hodne stesti. Hromada lidi s provomocema co ma ruzne cile, vlastni cile. Ale treba se ti povede a bude z tebe dobry politik

Mozna sem naivni, ale treba staci predstavit levou ruku te prave a donutit je at si chvilku povidaji.
Vetsinou sou to chytry lidi a prijdou na to, ze kdyz si pomuzou tak ty cile dosahnou oba spis nez kazdy zvlast.

A kdyz se tam objevi sociopat tak ho to aspon donuti se vybarvit.

Nicmene tohle vlakno ma byt spis o te motivaci "odspodu"

Re:Nový projekt vs. cizí kód
« Odpověď #36 kdy: 11. 09. 2020, 08:40:16 »
Já rád dělám na legaci kódu pro klienta. Protože obvykle ten klient už ví, že je v háji, a já umím dělat refactoring tak akorát, abych na jednu stranu nezařízl bussines, a na druhou stranu abych ozdravoval kód. Takže když po letech odcházím, je ten kód obvykle v mnohem lepším stavu.

Vzhledem k tomu, že většinu programátorů se legaci kódu štítí, tak mám skvělou vyjedávací pozici s klientem :-)

Ok tak jestli dobre pocitak tak sme zatim 4.
Ale proc se toho ta vetsina stiti?

Kdyby se toho vetsina stitila, tak co by delali? Hadam ze 90% programatorske prace je udrzba a rozvoj stavajich systemu. Osobne tak ze 70% delam totez - udrzbu a rozvoj. Nicmene, kdyz si muzu vybrat porad se vice citim jako programator se zamerenim na vyvoj nez udrzbu. Niceho se nestitim, ale proste ten fun factor je uplne nekde jinde :)

OK "fun factor" to me zajima.
Proc je to vic "fun" ?

JaaSt

Re:Nový projekt vs. cizí kód
« Odpověď #37 kdy: 11. 09. 2020, 10:16:14 »
Tak letos mám za sebou 25 let kdy mě programování živí. Takže už jsem prošel různé věci. Změny v cizím kódu dělám rád, je to někdy detektivní práce, někdy se něco přiučím co sám neumím a skoro nikdy nezáleží na tom, v jakém stavu je kód, spíš jen na tom, jak se k tomu staví zadavatel.
Vypíchl bych dvě věci. Převzal jsem kód v C++ pro programátorovi z Kolumbie, který na první pohled snad ani nebyl kód ale chaos. Jenže během měsíců, kdy jsem na tom sem tam dělal úpravy jsem postupně zjistil, že jeho úroveň schopností je tak vysoko nad mojí, že tam se asi nikdy nedohrabu. Naprosto šílený chaotický kód v mých očích, který ale nebylo možné nějak rozložit, jako kdyby nějak myslel na všechno. Takže v mých očích nejlepší kód co jsem kdy viděl byl zároveň z hlediska nějaké strukury projektu pro orientaci asi nejhorší.
A ještě zajímavější věc je přebrat po deseti letech kód sám po sobě. Věci, které jsem vypotil se skřípěním zubů mi po tzěch letech připadaly až trapně jednoduché :-D

Re:Nový projekt vs. cizí kód
« Odpověď #38 kdy: 11. 09. 2020, 10:34:01 »
Jako dite jsem mel rad stavebnice - lego, merkur atd. Byla zabava neco budovat. To je pro me ten fun factor. Kdyz prebiram projekt, tak me tenhle factor odpadne. Uz je vybudovano a je potreba to jiz vybudovane jen prevzit. A nekdy to prevzeti je pohoda a nekdy peklo. Ale v obou pripadech je to jen pro me jen prace.

Treba jedna moje zkusenost co jsme prebirali system. Behem nejakych 10 let se na tom vystridalo treba 5 lidi jako udrzovaci - nepocitam ten puvodni tym co to napsal. I sam zakaznik v prubehu let ztracel povedomi co vsechno ten system vlastne dela. Vselijake dokumentace se behem tech let nastradala fakt hromada. A melo se na tom pripravovat vcelku velka zmena, ktera ten system obejbala na neco jineho nez byl staveny. Tak se to rok prebiralo, slo to do vysokych MDs a porad jsme meli velke mezery ve znalosti co ten system ma delat. No zmenu jsme realizovali a nasekali tam hromadu veci, ktere nekoho dalsiho jeste pekne potrapej. Bohuzel fungovani a styl toho systemu jsme pochopili prilis pozde. Psani testu a refaktoring je vetsinou cista utopie do ceho nikdo neinvestuje. Protoze to ma naklady blizici se napsani toho systemu znova.

Nebo jinej pripad, za neco starsiho na cem se vystridalo dost lidi. Par mesicu jsme se s tim seznamovali, stalo to hodne energie a pak ten system zakaznik zariznul, ze se bude delat nova verze. A bude ji delat jiny tym.


Re:Nový projekt vs. cizí kód
« Odpověď #39 kdy: 11. 09. 2020, 11:07:01 »
Jako dite jsem mel rad stavebnice - lego, merkur atd. Byla zabava neco budovat. To je pro me ten fun factor. Kdyz prebiram projekt, tak me tenhle factor odpadne. Uz je vybudovano a je potreba to jiz vybudovane jen prevzit. A nekdy to prevzeti je pohoda a nekdy peklo. Ale v obou pripadech je to jen pro me jen prace.
OK beru. Taky me bavilo lego.  Treba to jde s vekem. Ja dneska treba kdyz chci nejakou novou skrinku tak neficim do IKEA :-). Radsi prosmejdim nejaky bazary a hledam co bych si mohl opravit a zrenovovat.
Proste starsi veci maji ducha kdezto novy jsou jen... nejaky slisovany piliny.

Mozna je to i dobra analogie s tim programovanim... to si jeste promyslim ;-).

Psani testu a refaktoring je vetsinou cista utopie do ceho nikdo neinvestuje. Protoze to ma naklady blizici se napsani toho systemu znova.
Z tohohle mi tece krev obracene...
Jak "neinvestuje"? To je snad nase zodpovednost ne?
Co bys rekl plynarum co ti zapojujou doma kotel a reknou "No snad to nikde neutika, nemame cas a penize na to to zkontrolovat... musime bezet za dalsim zakaznikem?"

Nebo jinej pripad, za neco starsiho na cem se vystridalo dost lidi. Par mesicu jsme se s tim seznamovali, stalo to hodne energie a pak ten system zakaznik zariznul, ze se bude delat nova verze. A bude ji delat jiny tym.

No a to je to o cem mluvim. Nekdo presvedcil zakaznika o tom, ze je to dobry napad... (treba je v tomhle konkretnim pripade) ale proc? Jak?

Re:Nový projekt vs. cizí kód
« Odpověď #40 kdy: 11. 09. 2020, 11:30:51 »
Tak letos mám za sebou 25 let kdy mě programování živí. Takže už jsem prošel různé věci. Změny v cizím kódu dělám rád, je to někdy detektivní práce, někdy se něco přiučím co sám neumím a skoro nikdy nezáleží na tom, v jakém stavu je kód, spíš jen na tom, jak se k tomu staví zadavatel.
Vypíchl bych dvě věci. Převzal jsem kód v C++ pro programátorovi z Kolumbie, který na první pohled snad ani nebyl kód ale chaos. Jenže během měsíců, kdy jsem na tom sem tam dělal úpravy jsem postupně zjistil, že jeho úroveň schopností je tak vysoko nad mojí, že tam se asi nikdy nedohrabu. Naprosto šílený chaotický kód v mých očích, který ale nebylo možné nějak rozložit, jako kdyby nějak myslel na všechno. Takže v mých očích nejlepší kód co jsem kdy viděl byl zároveň z hlediska nějaké strukury projektu pro orientaci asi nejhorší.
A ještě zajímavější věc je přebrat po deseti letech kód sám po sobě. Věci, které jsem vypotil se skřípěním zubů mi po tzěch letech připadaly až trapně jednoduché :-D

Me se pred par lety stalo, ze jsem 3 roky pricmrndaval na jednom velkym projektu a furt sem brblal ze je to tragedie a kterej **** to navrhoval.
A pak sem resil nejakej incident a nejak sem automaticky sahnul na misto kde bych to cekal a ono to tam bylo.
Proste najednou to kliklo... a me doslo, ze je to vlastne sakra dobre navrzeny, jen ja sem mel jinej mindset.
A pak sem se tim zacal probirat a kdyz sem narazil zas na nejakou vec co se mi zdala jako prasecina.... Tak to bylo bud moje vlastni dilo ( ::)), Nebo jsem tomu proste dal benefit of doubt a po nejakem case sem pochopil, ze to fakt smysl dava.... A nebo ne tak sem to zmenil.

Re:Nový projekt vs. cizí kód
« Odpověď #41 kdy: 11. 09. 2020, 12:17:40 »

Psani testu a refaktoring je vetsinou cista utopie do ceho nikdo neinvestuje. Protoze to ma naklady blizici se napsani toho systemu znova.
Z tohohle mi tece krev obracene...
Jak "neinvestuje"? To je snad nase zodpovednost ne?
Co bys rekl plynarum co ti zapojujou doma kotel a reknou "No snad to nikde neutika, nemame cas a penize na to to zkontrolovat... musime bezet za dalsim zakaznikem?"


Jsi si fakt naprosto jistý, že jsi zkušený vývojář - a ne kluk, co o vývoji SW nic neví? Ono totiž podle tvých příspěvků vypadáš na to druhé.

Re:Nový projekt vs. cizí kód
« Odpověď #42 kdy: 11. 09. 2020, 12:27:18 »

A pak sem resil nejakej incident a nejak sem automaticky sahnul na misto kde bych to cekal a ono to tam bylo.
Proste najednou to kliklo... a me doslo, ze je to vlastne sakra dobre navrzeny, jen ja sem mel jinej mindset.


Zažil jsem, že jsem něco považoval za prasárnu na první pohled. Ale na druhý pohled jsem uznal, že je to asi nejmenší zlo, které mohlo v dané situaci vzniknout.
Nikdy jsem nezažil, abych něco označil za prasárnu po hlubším prozkoumání a po letech jsem změnil názor.
Nicméně pokud se ti to stalo, tak bys to měl ilustrovat smysluplným příkladem. Ten tvůj současný příklad rozhodně neilustruje nic.

To je asi jako kdybych napsal: Měl jsem partnerku, o které jsem si myslel, že je úplně blbá, protože dává těžké věci do horních polic a lehké věci do dolních polic. A pak po letech jsem zjistil, že to vlastně ukládá dobře, protože když jsem hledal hodně těžkou věc, tak jsem se automaticky podíval do horní police...a..... no nebudu vás napínat, tak věc tam byla.

Re:Nový projekt vs. cizí kód
« Odpověď #43 kdy: 11. 09. 2020, 12:34:31 »
OK beru. Taky me bavilo lego.  Treba to jde s vekem. Ja dneska treba kdyz chci nejakou novou skrinku tak neficim do IKEA :-). Radsi prosmejdim nejaky bazary a hledam co bych si mohl opravit a zrenovovat.
Proste starsi veci maji ducha kdezto novy jsou jen... nejaky slisovany piliny.

Mozna je to i dobra analogie s tim programovanim... to si jeste promyslim ;-).

Zrovna zabavu ve forme postavit si jako klucina hrad z lega bych nesrovnaval s tim smontovat nejakou blbost z IKEA. Ale klidne bych videl analogii v tom, ze zakaznici ocekavaji od dodavatelu, ze se budou chovat jako IKEA - ocekavame ze to bude fungovat a bude to levne.


Z tohohle mi tece krev obracene...
Jak "neinvestuje"? To je snad nase zodpovednost ne?
Co bys rekl plynarum co ti zapojujou doma kotel a reknou "No snad to nikde neutika, nemame cas a penize na to to zkontrolovat... musime bezet za dalsim zakaznikem?"

Jenze koho zodpovednost? Jako nas programatoru? Zakaznika to treba nezajima. Nase firma to platit nechce. S tema plynarema to je trochu jine. Ty maji zakony, smernice atd. V tomhle pohledu je vyvoj SW stale punk. Kdyz se jeden projekt posere tak na tebe zakaznik je mozna chvili nasrany, ale i u nej se za dva roky vymeni management a tvoje firma jede zase s cistym stitem.

No a to je to o cem mluvim. Nekdo presvedcil zakaznika o tom, ze je to dobry napad... (treba je v tomhle konkretnim pripade) ale proc? Jak?

To nevim. Je to normalni politikareni. Cely ten korporatni svet bank atd. je politikareni, ktere casto nema vubec nic spolecneho s vybudovanim uzitecneho a kvalitniho systemu.

Re:Nový projekt vs. cizí kód
« Odpověď #44 kdy: 11. 09. 2020, 13:07:04 »

Psani testu a refaktoring je vetsinou cista utopie do ceho nikdo neinvestuje. Protoze to ma naklady blizici se napsani toho systemu znova.
Z tohohle mi tece krev obracene...
Jak "neinvestuje"? To je snad nase zodpovednost ne?
Co bys rekl plynarum co ti zapojujou doma kotel a reknou "No snad to nikde neutika, nemame cas a penize na to to zkontrolovat... musime bezet za dalsim zakaznikem?"


Jsi si fakt naprosto jistý, že jsi zkušený vývojář - a ne kluk, co o vývoji SW nic neví? Ono totiž podle tvých příspěvků vypadáš na to druhé.

Kdyz sem se rano dival do zrcadla tak to na klucinu fakt nevypadalo. Rad si poslechnu co se ti na mych prispevcich nezda pokud to bude trochu vecne.