Gdzie są te słynne "Janusz Soft-y"? W ogłoszeniach widzę same duże firmy

2

Gdzie są te słynne "Janusz Soft-y"? Naprawdę istnieją? W ogłoszeniach widzę same duże firmy, mowa o rynku Python.

1
vitamin_b napisał(a):

Gdzie są te słynne "Janusz Soft-y"? Naprawdę istnieją? W ogłoszeniach widzę same duże firmy, mowa o rynku Python.

Odpowiem ogólnie, nie konkretnie w kwestii Pythona.

Ta pogardzana na forum strategia działania Januszsoft-ów w rzeczywistości działa lepiej niż wiele tzw. "dobrych praktyk" (które w rzeczywistości powinny być nazywane "dobre teoryjki" a nie "praktyki"). Gdy strategia jest lepsza, to do zrealizowania tego samego celu, potrzeba znacznie mniej ludzi. Sam prowadzę działalność indywidualną, w której dużo bliżej mi do januszsoftu, niż do wprowadzania w życie dobrych teoryjek. Gdybym przestał funkcjonować jak januszsoft, to musiałbym swoją działalność zamknąć, bo po prostu bym sobie nie poradził z nawałem jałowej pracy.

0

Hmm, choć może ironizujesz ale trochę w tym prawdy. Januszsofty specjalizują się w małych produktach o krótkim cyklu życiowym. Jeśli aplikacja odnosi sukces to zazwyczaj Januszsoft już jej nie rozwija bo nie ma kompetencji ani sił. Aplikacja jest wtedy przepisywana. Soft który musi działać i obsługiwać duże wolumeny nie jest w targecie Januszsoftów (pomijając nasze przetargi, khe, khe :D)

Pozostaje jednak pytanie co jest lepsze z punktu widzenia osobistego rozwoju (choć jak ktoś ogarnięty to większą swobodę dostanie w Januszsofcie niż w firmie gdzie poza Bogiem jest tylko dwóch seniorów którzy ustawiają resztę pod siebie).

0

Ja z jednej strony cieszę się, że pracowałem kiedyś w Januszsofcie, bo dzięki temu nauczyłem się sporo rzeczy, których bym normalnie nie ruszył. Z drugiej strony nie powinno się siedzieć tam zbyt długo.

Uważam, że dla gościa bez żadnego doświadczenia i z małą wiedzą, Januszsoft jest ok na rok, dwa. Potem przesiadka. A gdzie są Januszsofty? Nie wiem.

Przy okazji. Jeśli mały przedsiębiorca ma do napisania soft, ale nie ma kasy i zatrudni człowieka za pół stawki, który mu napisze ten soft, dzięki czemu przedsiębiorca będzie mógł się rozwinąć, to jest to Januszsoft, czy właśnie przedsiębiorczość i umiejętność negocjacji? Ewentualnie wyszukiwania okazji? Przecież nikt nikomu nie każde pracować za połowę stawki, nie?

6

W januszsoftach przecież chodzi o traktowanie pracowników i przekręty finansowe (zatrudnienie na minimalną na umowę zlecenie, reszta pod stołem, ale dopiero jak stracisz nogę i dostaniesz rentę), a nie o jakość kodu i myślenie długofalowe o projektach. To kuleje w firmach każdej wielkości.

1
Coredump napisał(a):
vitamin_b napisał(a):

Gdzie są te słynne "Janusz Soft-y"? Naprawdę istnieją? W ogłoszeniach widzę same duże firmy, mowa o rynku Python.

Odpowiem ogólnie, nie konkretnie w kwestii Pythona.

Ta pogardzana na forum strategia działania Januszsoft-ów w rzeczywistości działa lepiej niż wiele tzw. "dobrych praktyk" (które w rzeczywistości powinny być nazywane "dobre teoryjki" a nie "praktyki"). Gdy strategia jest lepsza, to do zrealizowania tego samego celu, potrzeba znacznie mniej ludzi. Sam prowadzę działalność indywidualną, w której dużo bliżej mi do januszsoftu, niż do wprowadzania w życie dobrych teoryjek. Gdybym przestał funkcjonować jak januszsoft, to musiałbym swoją działalność zamknąć, bo po prostu bym sobie nie poradził z nawałem jałowej pracy.

Sugerujesz, ze testy, wzorce, zdbanie o jakosc kodu itp to teoryjka? Jak tak, to nie "dużo bliżej mi do januszsoftu" tylko jestes jego skrajnym przypadkiem.

9

Janusz Softy? Są, są...

Byłem na interview w domku prywatnym gdzieś na Żeraniu, szukali Python Ninja. Myślałem, że to jakaś pomyłka, ale nie, to był typowy wąsaty Janusz, który podjechał tam swoim Passerati. Rozmowa odbyła się w kuchni, a Janusz opowiadał mi o klientach w Austrii i Szwajcarii czekających na soft, który ja miałem napisać. Potem zaczął wypytywać o moje wydatki, żeby ustalić mi pensję. Fascynująca rozmowa...

Inny Janusz Soft znalazłem w warszawskim biurowcu, szukali Python Developera. Przyszedłem na umówioną rozmowę do firmy z psem w logo, a oni mówią, że nie mają mojego CV bo Janusz (właściciel firmy) gdzieś pojechał i nie wiadomo kiedy wróci. Powiedziałem, że nie ma problemu, chętnie opowiem o moim doświadczeniu, na co oni mówią, że ich to nie interesuje. Dawno nie spotkałem takich buraków jak tam.

Inny Janusz Soft znalazłem w biurowcu na Mordorze. Rozwiązałem kilkugodzinny zestaw rozmaitych zadań, a oni mówią świetna robota dostaniesz u nas pracę - 30% niższa pensja niż chciałem, na umowie o dzieło. Janusz (dyrektor) twierdził, że u nich wszyscy tak pracują...

3
Złoty Jeleń napisał(a):

Sugerujesz, ze testy, wzorce, zdbanie o jakosc kodu itp to teoryjka? Jak tak, to nie "dużo bliżej mi do januszsoftu" tylko jestes jego skrajnym przypadkiem.

Z dobrymi teoryjkami jest tak, że każda z nich, w jakimś szczególnym przypadku jest użyteczna - i dla tego jednego przypadku jest dobrą PRAKTYKĄ, w pozostałych - mało użyteczna, bezużyteczna, lub szkodliwa i pozostaje dobrą teoryjką, a złą praktyką.

Januszsoft (jak ja go widzę), bądź moja działalność, wychodzi z założenia, że ignoruje się dobre teoryjki, dopóki nie okaże się, że któraś z tych dobrych teoryjek, okaże się pożyteczna w realizacji tego konkretnego, postawionego przede mną zadania. Zamiast wychodzić z założenia, z jakiego wychodzi mnóstwo osób po otrzymaniu wiedzy akademickiej - że dobra teoryjka jest równoznaczna z dobrą praktyką - wychodzi się z założenia, że dobra teoryjka, dopóki nie udowodni swojej przydatności w tym konkretnym zadaniu, jest bezużyteczna, a jeśli wymaga dodatkowego wkładu pracy, jest praktyką złą.

Mnóstwo oprogramowania, z którego na codzień korzystamy, powstało januszsoft-ową metodologią. Niezależnie czy projekt z założenia miał mieć krótki, czy długi czas życia, metoda januszsoft-owa działa lepiej niż metoda - jakby ją tu nazwać - akademicka.

4

No właśnie, gdzie są te JanuszSofty? W szczególności interesują nas firmy zatrudniające nielegalnie ludzi na umowy o dzieło i umowy zlecenie przy stałym stosunku pracy. W pierwszym kwartale 2018 mamy do znalezienia 10 firm tego typu w województwie Mazowieckim. Jeżeli ktoś chce się podzielić i został na przykład oszukany na składach ZUS prosimy o informację: sprawdzimy i jeśli trzeba ukaramy.

0
Coredump napisał(a):
Złoty Jeleń napisał(a):

Sugerujesz, ze testy, wzorce, zdbanie o jakosc kodu itp to teoryjka? Jak tak, to nie "dużo bliżej mi do januszsoftu" tylko jestes jego skrajnym przypadkiem.

Z dobrymi teoryjkami jest tak, że każda z nich, w jakimś szczególnym przypadku jest użyteczna - i dla tego jednego przypadku jest dobrą PRAKTYKĄ, w pozostałych - mało użyteczna, bezużyteczna, lub szkodliwa i pozostaje dobrą teoryjką, a złą praktyką.

Januszsoft (jak ja go widzę), bądź moja działalność, wychodzi z założenia, że ignoruje się dobre teoryjki, dopóki nie okaże się, że któraś z tych dobrych teoryjek, okaże się pożyteczna w realizacji tego konkretnego, postawionego przede mną zadania. Zamiast wychodzić z założenia, z jakiego wychodzi mnóstwo osób po otrzymaniu wiedzy akademickiej - że dobra teoryjka jest równoznaczna z dobrą praktyką - wychodzi się z założenia, że dobra teoryjka, dopóki nie udowodni swojej przydatności w tym konkretnym zadaniu, jest bezużyteczna, a jeśli wymaga dodatkowego wkładu pracy, jest praktyką złą.

Mnóstwo oprogramowania, z którego na codzień korzystamy, powstało januszsoft-ową metodologią. Niezależnie czy projekt z założenia miał mieć krótki, czy długi czas życia, metoda januszsoft-owa działa lepiej niż metoda - jakby ją tu nazwać - akademicka.

No i z takim podejsciem te JanuszSofty nigdy nie wybijają się ponad przeciętność. Z twoim podejściem chcesz wymyślać koło na nowo, ale do wniosków dojdziesz jak będzie za późno, produkt jakiś tam powstanie, coś tam się sprzeda, ale będzie pełen bugów i niemożliwy do utrzymania bez przepisywania większości przy każdej większej nowej funkcjonalności

9

@Coredump - no to jest wg mnie typowe januszowanie. Po co mamy robić interfejsy skoro wystarczy dopisać 20 if'ów? Po co nam single responsibility - skoro program dziala? Potem aplikacja się rozrasta i dorobienie prostej rzeczy powoduje, że inne przestają działać. Patrząc na te wypowiedzi - zakładam, że nie piszecie żadnych testów, a na code-review nie tracicie czasu, bo programista powinien pisać kod działający od razu poprawnie w 100%. A potem gromy spadają na programistów, a to w nich wywołuje poczucie winy... "ejj no kurde... faktycznie jestem słabym programistą".

Niestety... to jest te najgorsze januszowanie. Skoro masz firmę która tworzy soft, to przykładaj uwagę do tego jakiej jakości jest ten kod - przecież to fundament firmy.

Poza tym bycie szefem w janusz-sofcie, a bycie pracownikiem tam to dwie różne sprawy.

Pracownik w januszsofcie prawdopodobnie nie nauczy się niczego nowego/dobrego - będzie utrwalał w głowie złe praktyki i potem wyjdzie, że po 3 latach pracy dostaniemy regulara, który gorzej radzi sobie z zadaniami niż Junior po roku w dobrej firmie. Czyli jest to de facto strata zarówno dla firmy jak i w życiorysie programisty.

Szefowie w januszsoftach z kolei też mają ciekawe praktyki - wjeżdżanie na ambicje typu "No kto jak kto, ale Ty na pewno dasz radę napisać ten export/import w 2 godziny", albo "Panowie... musimy się sprężać, w tym miesiącu cieniutko z kasą, więc dajemy z siebie 200%".

Znam przypadki gdzie nawet pojawił się syndrom sztokholmski - pracownicy wierzą w to, że jeśli zmienią firmę to utopią całą firmę i dramat - szef będzie musiał zwolnić wszystkich....

Podobnie jest w przypadku gdy szef ma "super programistę" i o niego nie dba - potem nikt nie jest w stanie udźwignąć obowiązków po tej osobie w momencie gdy odchodzi. Podobnie jest w przypadku pożarów - ściąganie pracownika z urlopu, panikowanie - bo ktoś nie może czegoś wrzucić na produkcję.... Jednym słowem - dramat.

A wracając do pytanie z tematu - gdzie są? W całej Polsce, wszędzie tam gdzie:

  • pracownicy są zatrudniani po kosztach (wszelkie umowy śmieciowe)
  • zatrudnia się python deva, a potem wymaga się żeby ciął layouty, robił deploye, konfigurował serwery, a jak przyjdzie znajomy szefa z lapkiem - to i usunął wirusy.
  • nikt nie dba o kod
  • wierzy się w to że programista stworzy w 100% działający kod (nie mówię, że nie da się, ale czasami funkcjonalności są spore i nietrudno o błąd)
  • nie płaci się za nadgodziny
  • panuje przekonanie, że dodanie jednego checkboxa to zawsze jest prosta sprawa
  • programista nie ma nic do powiedzenia i nie ma prawa powiedzieć "nie dam rady zrobić tego w tydzień"
0

de facto

Tak mówili w firmie dla której pracowałem. Janusze jakich mało. Co druga warszawska firma, to Januszsoft. Zero kultury programistycznej.

1
axelbest napisał(a):

@Coredump - no to jest wg mnie typowe januszowanie. Po co mamy robić interfejsy skoro wystarczy dopisać 20 if'ów? Po co nam single responsibility - skoro program dziala? Potem aplikacja się rozrasta i dorobienie prostej rzeczy powoduje, że inne przestają działać. Patrząc na te wypowiedzi - zakładam, że nie piszecie żadnych testów, a na code-review nie tracicie czasu, bo programista powinien pisać kod działający od razu poprawnie w 100%.

Napisałem to już wcześniej, ale powtórzę: generalnie pracuję sam, nie jestem niczyim szefem, ani nie mam ambicji, by zostać takim w przyszłości.
Moja opinia o przeglądzie kodu nie ma wielkiego znaczenia, bo i tak nie ma kto mi ich zrobić. Testów doczekały się bardzo niewielkie wycinki, a i to dopiero po kilku latach, gdy okazało się że akurat te by się przydały. Jeśli trzeba napisać jakiś duży fragment od nowa, to piszę od nowa, nie rozpaczam - rzecz jasna intensywnie korzystając z metody kopiuj-wklej. Utrzymywanie starych a jednocześnie dodawanie nowych funkcjonalności jakoś jeszcze ogarniam. Nie jest oczywiście idealnie, ale lepiej niż gdybym stosował dobre teoryjki - bo wtedy robienie tego jednoosobowo byłoby zwyczajnie niewykonalne.

0
vitamin_b napisał(a):

Gdzie są te słynne "Janusz Soft-y"? Naprawdę istnieją? W ogłoszeniach widzę same duże firmy, mowa o rynku Python.

To zacznij patrzeć na ogłoszenia na Gumtree i w mniejszych miastach typu Rzeszów itp.

2

@Coredump - no ale skoro nikogo nie zatrudniasz i nie wprowadzasz nowych programistów w jakieś kiepskie rozwiazania - to nie nazywałbym tego januszowaniem. Robisz jak umiesz i tyle, ważne jest żeby wiedział że pewne rzeczy stosuje się po to, żeby pracę ułatwić. Ważne jest żebyś się rozwijał i wiedział że Twoje podejścia do pewnych zagadnień nie zawsze będą poprawne - czasami ktoś inny może mieć lepszy pomysł.

Jak robisz stronę wizytówkę z 3 podstronami - to nawet sam html styknie, nie ma potrzeby korzystania z framework'ów, orm'ów, wzroców. Ale... jeśli dasz radę usprawnić ten proces tworzenia tych "html'owych stronek" to rób to i rozwijaj się. Jeśli wchodzisz w większe projekty i musisz wchodzić po drabinie if'ów - to znak, że czas na refaktor - ale o tym wiesz, bo wiesz kiedy przepisać coś. Metodę kopiuj-wklej stosujesz w obrębie jednego projektu? Czy różnych? jeśli różnych - to może warto przygotowac konkretne paczki z kodem i dociagac je menadzerem.

2
Coredump napisał(a):

Ta pogardzana na forum strategia działania Januszsoft-ów w rzeczywistości działa lepiej niż wiele tzw. "dobrych praktyk" (które w rzeczywistości powinny być nazywane "dobre teoryjki" a nie "praktyki"). Gdy strategia jest lepsza, to do zrealizowania tego samego celu, potrzeba znacznie mniej ludzi. Sam prowadzę działalność indywidualną, w której dużo bliżej mi do januszsoftu, niż do wprowadzania w życie dobrych teoryjek. Gdybym przestał funkcjonować jak januszsoft, to musiałbym swoją działalność zamknąć, bo po prostu bym sobie nie poradził z nawałem jałowej pracy.

Nawał jałowej pracy jest powodowany głównie przez brak zły dobór archiektury, nieodpowiedni dobór technologii do zadania, brak testów automatycznych i dodawanie kodu metodą kopiuj-wklej.

1

Widzę, że swoimi wypowiedziami wprowadziłem niektórych w rozbawienie, ale ok, nic złego w tym nie ma.

Cała ta dyskusja kojarzy mi się z przemyśleniami, które sam miałem przed założeniem własnej działalności. Pracowałem sobie z innymi ludźmi, dokonywane przez nich wybory mnie denerwowały, krytykowałem je... i coraz silniej pojawiała mi się myśl, że ci ludzie w końcu mi powiedzą: "skoro uważasz, że tak wszystko wiesz lepiej, to dlaczego sam nie założysz firmy i nie wprowadzisz swoich teorii w życie?" - i będą mieli 100% rację.

Ja to samo mogę napisać krytykom moich praktyk - spróbujcie swoje idee wprowadzić w życie, ale tak od początku do końca. Okażą się słuszne - świetnie - zrobicie coś dobrze działającego, a przy odrobinie szczęścia będziecie się mogli z tego utrzymywać. Część z tych poglądów okaże się błędna - też dobrze - nie będziecie tkwić w błędzie dalej. Oczywiście także część moich poglądów, została w ten sposób - negatywnie - zweryfikowana.

Widziałem tu na forum wiele wątków w stylu, że nowy pracownik przychodzi do pracy, widzi że kod nie spełnia standardów, jakie - według nego - spełniać powinien - i rozważa, czy tam zostać, czy odejść. Wiadomo, że zawsze rzeczywistość jest odległa od teoretycznego ideału, jednak może wcale główną przyczyną tego dystansu nie jest niska jakość pracy poprzedników, lecz rzeczywiste problemy, o których człowiek wygłaszający tak negatywną ocenę nie wie?

Ja zamawiającemu mam dostarczać działające oprogramowanie, a nie kod źródłowy ładnie wyglądający i spełniający nieinteresujące zamawiającego standardy - i pod tym kątem muszę optymalizować swoją pracę, bo w przeciwnym przypadku zwyczajnie nie dam rady jej wykonać. Utrzymywanie też jest częścią moich zadań - i też muszę to uwzględnić optymalizując swoją pracę. Jednak większość dobrych teoryjek mi w tym nie pomaga, więc w mojej pracy te teoryjki pozostają teoriami a nie praktykami.

1

Widocznie źle wdrażasz te teoryjki.

0

pewnie masz po części rację, tylko robiąc w zespole masz większe pole manewru, niż robiąc samemu za człowieka orkiestrę na jednoosobowej, najlepiej szukać złotego środka pozostając konkurencyjnym na rynku, wiadomo, że przy zleceniach z PL to niełatwe, bo i budżety na projekty liche

0

Ja wiele lat temu pracowałem jako developer w Janusz Soft. Kazano nam np. tynkować i malować ściany, myć kible itp. Dlugo tam nie popracowalem :) Ale nie developerzy zacisneli zęby i zostali

0

Java Developer
Tak ciekawostka. Nie jest to Janusz Soft ale:

Casumo.
Senior Backend Java Developer

3333 zł brutto / miesiąc . Tyle placą w Media Markt czy Castoramie :)

2
Coredump napisał(a):

Ja zamawiającemu mam dostarczać działające oprogramowanie, a nie kod źródłowy ładnie wyglądający i spełniający nieinteresujące zamawiającego standardy

Ale te dobre praktyki nie istnieją po to, aby chwalić sie nimi przed klientem, tylko właśnie po to, żeby szybciej tworzyć działające programy. Oczywiście zasadniczo dobrej praktyki da się użyć w zły sposób, w złym miejscu albo w złym celu, ale to jest arugment przeciwko kompetencji programisty, a nie przeciwko tej praktyce.

i pod tym kątem muszę optymalizować swoją pracę, bo w przeciwnym przypadku zwyczajnie nie dam rady jej wykonać. Utrzymywanie też jest częścią moich zadań - i też muszę to uwzględnić optymalizując swoją pracę. Jednak większość dobrych teoryjek mi w tym nie pomaga, więc w mojej pracy te teoryjki pozostają teoriami a nie praktykami.

Gadasz jak ktoś z syndromem pracy w korpo, w którym jacyś oderwani od kodu architekci z wież narzucali jakieś chore standardy i pomysły twierdząc, że opierają je na dobrych praktykach. Jeśli mam rację, to prawdopodobnie nie widziałeś nawet żadnej dobrej praktyki, jedynie coś, co ktoś tak nazywał.
A jeśli nie mam racji, to obal cokolwiek merytorycznie, np. takie DRY albo stosowanie strategii zamiast drabinki ifów, a nie stosując swoje subiektywne odczucia.

3

Czytam wasze wyznania odnośnie JanuszSoftwareDomów i jako weteran bo mam na liczniku 5 takich miejsc i prawie 6lat na rynku mogę jedynie potwierdzić te smutne doniesienia. Powiedział bym tak 70% małych firm IT na polskim rynku to januszmaxyIT 20% to miejsca względnie dobre no i [10%] jest kilka firm które można polecić przyjacielowi a potem bez zażenowania spojrzeć mu w oczy. Każda odmiana mobbingu, w kółko zasłanianie się biznesem [biznes to biznes tamo.. wymagania wymagania] i co najgorsze czego k%#a nie moge nigdy zrozumieć i po czym właśnie poznać na pierwszy rzut oka janusza... GRA W WOJNE Z KLIENTEM. No geniusz... rekin biznesu. Nie jesteś programistą jesteś pracownikiem a więc przenoszenie biurek a nawet i sprzątanie biura. Spotkałem się już dosłownie ze wszystkim a najgorzej dla ciebie gdy chcesz być uczciwym, januszex urodził się z darem dymania ludzi uczciwych, on ma wytatuowane 'biznes nigdy nie pyta..'. Jego nie interesuje, że kod to spagetti, że framework to 10-letnie g**no dawno temu zakopane. On nie wie co to CI i CD. Dla niego książki o architekturze albo o technikach programowania to "gówniana teoria która ma się nijak do praktyki". To jest czarodziej który wygląda jak biedak a wydymał na swojej drodze już z 20 innych klientów, wygląda tak tylko z pozoru bo w garażu stoi beta, dla niepoznaki porusza się jakimś 10-letnim gratem w kombi. O zapleczu sprzętowym nie wspomnę. Mógłbym więcej o technikaliach ale nie widze potrzeby. Polski rynek małych firm IT to totalny żart. Dosłownie na palcach jednej ręki można policzyć dobre firmy w dużym mieście. Reszta to od miesiąca do miesiąca na emeryturę szefa za 1/3 stawki.

Takk.. więc jeśli utożsamiasz się w jakiejś części z tym co napisałem to wiedz, że właśnie postrzegam cię ja [mam nadzieje że nie tylko ja] jako JanuszSoftwarexIT.

0
somekind napisał(a):

Ale te dobre praktyki nie istnieją po to, aby chwalić sie nimi przed klientem, tylko właśnie po to, żeby szybciej tworzyć działające programy.

Dlatego skoro tworzenia mojego nie przyspiesza, to nie używam.
Oczywiście mam swoje dobre praktyki, które mi pomagają, ale dobrych teoryjek do tych praktyk nie mam - po prostu coś, co po kolejnych iteracjach pisania różnych fragmentów od nowa, wynikającego głównie ze zwiększających się wymagań, sprawdzało się najlepiej. Tymi dobrymi praktykami okazało się m.in. utrzymywanie po kilka wersji kodu robiącego prawie to samo. Na przykład jeśli jakiś moduł wymaga dodatkowej funkcjonalności, której dopisanie wymaga też modyfikacji istniejących części, to tworzę modul_v2 i tam gdzie modul_v1 się spisywał, nie podmieniam go na nowy. Z czasem jego użycie wygaśnie. Typowy scenariusz wygaszania starszych wersji modułów jest taki, że znaleziony zostaje błąd w częściach wykorzystujących modul_v1, wtedy w pierwszym kroku próbuję wykorzystać modul_v2, zamiast poprawiać modul_v1. Albo ktoś sobie wprost zażyczy dodatkowej funkcjonalności w części, która dotychczas używała modul_v1.

Z tym że to też nie jest praktyka, którą wykonuję w sposób rygorystyczny jak praktykę religijną. Czasem tak, czasem inaczej.

Gadasz jak ktoś z syndromem pracy w korpo, w którym jacyś oderwani od kodu architekci z wież narzucali jakieś chore standardy i pomysły twierdząc, że opierają je na dobrych praktykach. Jeśli mam rację, to prawdopodobnie nie widziałeś nawet żadnej dobrej praktyki, jedynie coś, co ktoś tak nazywał.

Argumentacja typu https://en.wikipedia.org/wiki/No_true_Scotsman . Z tego co napisałeś wynikałoby, że dobra teoryjka ma bardzo mętne przełożenie na praktykę, że jest tylko nic nie znaczącym ogólnikiem - jak np. "dbanie o jakość kodu".

A jeśli nie mam racji, to obal cokolwiek merytorycznie, np. takie DRY albo stosowanie strategii zamiast drabinki ifów, a nie stosując swoje subiektywne odczucia.

Dobra praktyka ma się dobrze spisywać w praktyce, a nie być wdzięcznym obiektem do teoretycznych rozważań. Swoją drogą, drabinka if-ów jest czytelna, szczególnie jeśli bardzo dawno się do danego fragmentu nie zaglądało i się go nie pamięta. Dużo bardziej czytelna, niż różne przerosty formy nad treścią wg ideologii programowania obiektowego; jest ciekawa stronka dotycząca OOP i przyległych jej wzorców projektowych: http://www.oocities.org/tablizer/oopbad.htm

0
Coredump napisał(a):

Dobra praktyka ma się dobrze spisywać w praktyce, a nie być wdzięcznym obiektem do teoretycznych rozważań. Swoją drogą, drabinka if-ów jest czytelna, szczególnie jeśli bardzo dawno się do danego fragmentu nie zaglądało i się go nie pamięta. Dużo bardziej czytelna, niż różne przerosty formy nad treścią wg ideologii programowania obiektowego; jest ciekawa stronka dotycząca OOP i przyległych jej wzorców projektowych: http://www.oocities.org/tablizer/oopbad.htm

Uuuu... uważaj, temat krytyki OOPu już podejmowao na tym forum, ale skończyło się jak zawsze - zaeloci tego paradygmatu zakrzyczeli temat
Czy programowanie obiektowe to najgorszy paradygmat programowania jaki kiedykolwiek wymyślono?

4

Argumentacja typu https://en.wikipedia.org/wiki/No_true_Scotsman . Z tego co napisałeś wynikałoby, że dobra teoryjka ma bardzo mętne przełożenie na praktykę, że jest tylko nic nie znaczącym ogólnikiem - jak np. "dbanie o jakość kodu".

Pisanie krótkich niekrytycznych projektów w pojedynkę gdzie klient robi za testera to zupełnie inna sprawa niż rozwijanie wieloletnich projektów o niskim apetycie na ryzyko (ponieważ w nich drobne błędy dużo kosztują) w wieloosobowym zespole przy okazji integrując się z systemami pisanymi przez zespoły z tej samej firmy.

Techniki programistyczne nie są po to by je kochać lub nienawidzić tylko po to by ich używać kiedy mają sens. W małych pierdółkowatych programach pisanych na szybko można odpuścić sobie dobre praktyki, ale w przypadku dużych projektów odwalanie fuszerki będzie dużo kosztować. Drabinki ifów wydają się OK jeśli cały czas masz w głowie miejsca gdzie te drabinki się znajdują i przy dodawaniu kolejnego szczebla w drabinie ifów przypominasz sobie o wszystkich pozostałych. Pracując w zespole nie można polegać na takich założeniach. Robienie N+1 implemetacji interfejsu o X metodach jest o tyle lepsze od dokładania N+1 szczebla w X drabinkach, że implementując interfejs kompilator wymusza na tobie implementację tych X metod, a przy drabinkach ifów musisz sam sobie wyszukiwać i martwić się o to, czy żadnej drabinki nie przegapiłeś.

Z testami automatycznymi natomiast jest tak, że na początku pisanie testów idzie wolno, testy są kiepskie (np niby pokrywają kod, ale słabo wykrywają problemy), podejście jest złe (np testuje się metody z osobna zamiast testować funkcjonalności), trzeba się przestawiać (chciałoby się zaklepać cały kod naraz, ale trzeba się pilnować z testami) i nie ma się intuicji co do tego w jakiego typu testy inwestować najwięcej czasu. Z czasem jednak dochodzimy do wprawy i czujemy, że testy się rzeczywiście przydają i że dzięki nim zyskujemy czas w dłuższej perspektywie.

Pisząc samemu nie masz nawet możliwości obiektywnego spojrzenia na powstały kod. To, że twoje sposoby ci odpowiadają nie oznacza iż ktoś inny by się w nich odnalazł i nabrał w nich wprawy.

Kilka lat temu pracowałem w Javowym JanuszSofcie tworzącym stronę e-podróżnik.pl Chciałem ich przekonać do pisania testów automatycznych, ale szefostwo mnie wyśmiało. Stwierdzili że pisanie testów automatycznych to strata czasu. Z drugiej strony jakoś nie widzieli absurdu w tym, by programiści regularnie testowali ręcznie system tracąc przy tym mnóstwo czasu. Być może do teraz zmienili podejście, ale jak się ma emocjonalne podejście do sprawy to można takich oczywistych absurdów nie zauważyć.

0

Mowisz i masz:

  1. d a t a i n v e s t . p l
  2. a l p h a m o o n . m l
  3. b l u e l i v . c o m

We wszystkich 3 powyzszych zostalem bezczelnie oszukany - albo obiecano mi prace i juz sie do mnie nie odezwano, albo kazano mi sie "wykazac" i zrobic cos za darmo dla nich bo inaczej to "nie zapraszamy do biura". oczywiscie potem juz sie nie odezwali

bonus:
opcja 3) to dla tych "salso-maniakow", ktorzy sie do hiszpanii chca wybrac jako wybitni programisci (wiadomo: klimat, panienka, morze, jedzenie...)

W zwiazku z powyzszym dalej zostaje przy swoim bootcampie ze spawalnictwa / rozkrecaniu maszyn elektrycznych, bo po prostu szkoda mi iuz czasu (trzeba sie brac za zakladanie rodziny juz, bo nie jestem +20)

Wole jakies nowe hobby miec w czasie wolnym po pracy, inne niz leb w laptoka. bycie handlowcem/sprzedawca swoich uslug innych niz IT i kontakt z ludzmi nie sa takie zle, jakby na to popatrzec inaczej.

1
Coredump napisał(a):

Dlatego skoro tworzenia mojego nie przyspiesza, to nie używam.

Jeśli ich nie znasz, to nawet nie wiesz, czy hipotetycznie mogłyby przyspieszyć.

Na przykład jeśli jakiś moduł wymaga dodatkowej funkcjonalności, której dopisanie wymaga też modyfikacji istniejących części, to tworzę modul_v2 i tam gdzie modul_v1 się spisywał, nie podmieniam go na nowy. Z czasem jego użycie wygaśnie. Typowy scenariusz wygaszania starszych wersji modułów jest taki, że znaleziony zostaje błąd w częściach wykorzystujących modul_v1, wtedy w pierwszym kroku próbuję wykorzystać modul_v2, zamiast poprawiać modul_v1. Albo ktoś sobie wprost zażyczy dodatkowej funkcjonalności w części, która dotychczas używała modul_v1.

To nie jest nic niespotykanego. Niczego nie wynalazłeś, za to wbrew sobie używasz "dobrej teoryjki". :D

Argumentacja typu https://en.wikipedia.org/wiki/No_true_Scotsman .

To nie była w ogóle argumentacja, jedynie hipoteza. Tu nie ma jak ani czego argumentować, bo do tej pory poza postawieniem tezy, że dobre praktyki to tak naprawdę nic niewarte teorie, nie przedstawiłeś żadnych argumentów ani przykładów.

Z tego co napisałeś wynikałoby, że dobra teoryjka ma bardzo mętne przełożenie na praktykę, że jest tylko nic nie znaczącym ogólnikiem - jak np. "dbanie o jakość kodu".

Doprawdy nie mam pojęcia jak takie wnioski wyciągnąłeś z mojego zdania o patologiach korporacyjnych architektów, którzy nie rozumieją dobrych praktyk.
Ale powtórzę może jeszcze raz - to, że ktoś czegoś nie rozumie, może być argumentem przeciwko kompetencjom tego kogoś, a nie przeciwko temu czemuś.

Dobra praktyka ma się dobrze spisywać w praktyce, a nie być wdzięcznym obiektem do teoretycznych rozważań.

A które niby dobre praktyki są używane do teoretycznych rozważań?

Swoją drogą, drabinka if-ów jest czytelna, szczególnie jeśli bardzo dawno się do danego fragmentu nie zaglądało i się go nie pamięta.

Zwłaszcza taka na 500 linijek kodu.

0

Ale o czym jest w ogóle ta rozmowa? Coredump nawet nie opisał co dokładnie ma na myśli, a obskoczyliście go jak gołębie rzucone im ziarno.

1

Coredump twierdzi że wzorce projektowe są niepotrzebne, ale najwyrazniej nie pracuje z projektami w większej skali, mam też powody by twierdzić że nie pracował nigdy w grupie z innymi programistami. Zarabia jakiś tam hajs, robi co potrafi, lecz jest odporny na wiedzę lub nie umie znaleźć przypadków zastosowania owych wzorców. Możliwe też ze sam je stosuje, nawet nie wiedząc o tym. Równie dobrze można twierdzić że ABS w samochodzie jest totalnie zbędny skoro ktoś potrafi bezpiecznie jeździć.

1 użytkowników online, w tym zalogowanych: 0, gości: 1