Przejdź do treści

DevStyle - Strona Główna
Najgłupsze rzeczy, jakie popełniłem podczas kodowania

Najgłupsze rzeczy, jakie popełniłem podczas kodowania

Maciej Aniserowicz

12 kwietnia 2010

Na miękko

Tagi:

    Rzadko to rzadko, ale czasami moja głupota mnie przeraża. Zdarza mi się utknąć nad jakimś kawałkiem kodu, który MUSI działać. Po prostu MUSI. A nie działa…

    Zwykle ma to miejsce po bardzo długiej sesji kodowania. Takiej jak ta, o której pisałem kiedyś. Podzielę się, chociaż mi wstyd:). Jedziemy…

    Mailu, dlaczego się nie wysyłasz???

    Prawie 3 godziny zmarnowałem jednej nocy na wysłanie maila. Siedziałem, testowałem, drapałem się w głowę, wymyślałem najdurniejsze juz możliwe rozwiązania… Wreszcie o 4 rano dostrzegłem że faktycznie coś chyba jest nie tak z mojej winy.

    Info na stronie Onetu:

    Mój konfig:

    Bez dalszego komentarza.

    WCFie, dlaczego nie działasz???

    Równie niemało czasu (i o równie zboczonej porze) zajęło mi kiedyś przesłanie WCFem obiektu z serwera na klienta. Poniżej uproszczony kod… który NIE WYSYŁAŁ DANYCH! W jakie zagłębiłem się wówczas konfiguracje WCFa, czegóż ja nie zmieniałem, jakieś limity, jakieś zabezpieczenia… A godzin tych nikt już mi nie zwróci:

    Ale przynajmniej teraz ZAWSZE gdy coś z WCF nie działa tak jak trzeba to przypominam sobie ową historię i sprawdzam czy przypadkiem moja klasa nie wygląda tak jak ta powyżej:).

    SQLu, dlaczego źle się wykonujesz???

    Innym razem tworzyłem w kodzie zapytanie SQL (komentarze "tak się nie robi!" proszę na bok). Zwracało one dane zależne od daty przekazanej w parametrze. Tworzyła je klasa skonfigurowana w kontenerze DI jako singleton, i wyglądało to mnie więcej tak:

    Pierwsze wykonanie: OK. Ale im dalej w las, tym bardziej bezsensowne wyniki!

    Oczywiście okazało się, że po takiej zmianie:

    wszystko było już w porządku.

    Wszystko, oprócz mojego poczucia własnej wartości:).

    O, parametrze, dlaczegóż wartość twa niezmienna jest???

    Nie tak wcale dawno z kolei modyfikowałem logikę wykonywania skryptów IronPython w tworzonym systemie. Nowe założenia (uproszczono-wymyślone): "jeśli przekazany skrypt jest pusty, pobierz z konfiguracji domyślny skrypt i go uruchom".

    Banał, prawda? Ale, kurde, nie działa! Oto dlaczego:

    Fluent eNHajbernejcie, dlaczego mapowania moje ignorujesz???

    Dawszy się ponieść szałowi refactoringu zapędziłem się też w kozi róg przy użyciu NHibernate. Po dość intensywnych przemieszczeniach funkcjonalności między klasami, klas między folderami, folderów między projektami itd (jak to bywa w bardzo początkowej fazie projektu) znalazłem się w sytuacji… prawie że bez wyjścia. Kodu jako takiego nie zmieniałem w ogóle – modyfikowałem jedynie jego położenie. A mimo to nie mogłem z bazy pobrać nic. NIC!

    Nie było błędu, ale nie było też danych. Po podłączeniu SQL Profilera okazało się, że nie wykonują się nawet żadne zapytania. Norrrrrmalnie szok i masakra.

    Powyższy obrazek pokazuje (zasymulowaną w 5 minut w nowej instancji VS) co było nie tak. Idiot, idiot, idiot! Półtorej godziny wyrwane z nocy jak… ząb ze zgniłego dziąsła?

    Karto sieciowa, dlaczego coś z tobą nie tak???

    Ostatnia historyjka (i tak już pewnie wystarczająco straciłem w Waszych oczach:) )…

    Tworzę sobie nową wirtualkę, wpinam w sieć gotową do testowania, i… i nic!

    NIe pamiętam już ile czasu zajęło mi dostrzeżenie tego:

    Blacha!


    To kilka masakrycznych po prostu debilizmów z ostatnich kilkunastu miesięcy… Może nie nadają się na The Daily WTF, ale mam nadzieję że uśmiech u kogoś wywołało:) (są jak Pokemony – musisz rozwiązać je wszystkie!)

    A jakie Wy mieliście przygody, po których głupio było spojrzeć w lustro?

    Zobacz również