Z pamiętnika programisty

Tytuł: „Z pamiętnika dewelopera historii kilka…”

„Ciekawe, niecodzienne, śmieszne, przerażające historie z pracy programisty” – anegdoty, opowieści, śmieszne zdjęcia, przejścia, wpadki, doświadczenia z różnych etapów produkcji oprogramowania. Dziwny konflikt w zespole? Przykłady niedoprecyzowania wymagań klienta? Problemy w komunikacji? Odkrycie rano, że kod napisany późno w nocy można było napisać trzy razy bardziej efektywnie?

Daleko nam do komików, ale jak to w życiu też zdarzają się ciekawe, często wywołujące uśmiech historie, o których warto opowiadać. Każda taka historia to dobra nauka co może pójść nie tak, gdzie możemy się zaskoczyć.

Dlatego zapraszamy do mini-konkursu na historie związane z pracą programisty. Jak to działa?

    • Krok 1: Spisać, przygotować do publikacji i wysłać na nasz adres (slawomir.jabs@jdd.org.pl) swoją opowieść, anegdotę, zdjęcia lub mini-zgłoszenie tematu*

    • Krok 2: Wszystkie zgłoszenia będziemy publikować na podstronie konferencji w zakładce „Z pamiętnika dewelopera historii kilka…”**

      Pierwsza część konkursu trwa do 20 października. Po tym terminie wybierzemy 2 osoby które otrzymują gadżety i nagrody rzeczowe a wszyscy uczestniczący specjalny kod rabatowy.

      To jednak nie koniec…

    • *Krok 3 (opcjonalny): W czasie konferencji jeden z wykładów będzie przeznaczony na panel, w czasie którego będzie można przeprowadzić krótką, 5 minutową prezentację ciekawych historii. Jeżeli macie lekkie, zabawne historie i chcecie potrenować publiczne wystąpienia to właśnie tutaj jest taka możliwość.

    • Krok 4: Podczas konferencji uczestnicy będą mogli głosować która historia podoba im się najbardziej. Wybrana przez publikę osoba otrzyma konsolę PSP a najciekawsze także nagrody książkowe.

* Krok 3 jest opcjonalny

**Rada Programowa zastrzega sobie prawo do wybrania i cenzury zgłoszeń:)

W razie pytań skontaktuj się z organizatorami.

A jaka jest Twoja historia?

Historia 1 by Sławek Sobótka

Tytuł: java.util.Calendar a sprawa Polska, czyli gdzie są moje 24 minuty?

*Problem:*

Duży system, w którym klientem do serwera były applety. Na wielu formularzach istnieje możliwość edycji czasu pewnych zdarzeń. Czas edytowany przez zwykłe pole tekstowe w formacie godzina:minuty. Niestety, na niektórych formularzach można zaobserwować następujące schorzenie: wpisujemy pewien czas, zapisujemy, następnie gdy ponownie edytujemy rekord, czas jest zawsze cofnięty o 24 minuty! Liczba 24 kojarzy się każdemu z ilością godzin w dobie tak więc jest to doskonale zwodnicza wartość…

*Tło techniczne:*

Czas – z powodów, które pamiętają już tylko prastarzy Słowianie programujący w technologiach z epoki krzemu łupanego – był zapisywany w bazie danych jako:
01.01.1900 godzina_z_formularza:minuta_z_formularza:00.000

Kluczowy jest tutaj pierwszy stycznia roku 1900.

Zapis i odczyt działały poprawnie. Komunikacja applet – serwisy serwera poprzez Spring Remoting (zdalne wywołanie metod Beanów Springa, serializacja paramentów i wyników i wyjątków).
Czas był przesyłany w DTOsach w postaci obiektów klasy java.util.Calendar (służącej lepiej lub gorzej do manipulacji czasem) zamiast java.util.Date (służącej jako kontener na czas).
Calendar jest o tyle sprytną klasą, że jej obiekty badają lokalizację systemu operacyjnego na którym żyją. W przypadku podpisanych appletów robiły to na maszynach klienckich po ich przesłaniu i deserializacji.

*Warto wiedzieć:*

Po tygodniu poszukiwań okazało się, że głęboko w kodzie kalendarza istnieje logika, która uwzględnia następujący fakt: 4 sierpnia 1915 roku na terenie Polski dokonano standaryzacji czasu, tak aby dopasować go do globalnych stref czasowych i przesunięto wówczas wskazówki o 24 minuty:)

A panowie z Suna (niestety) odrobili lekcje z historii…

Hisotria 2 by Damian Nowak (AtlasHost.eu)

„Mój największy coding-fail”

403 Forbidden

fail kod

Czy już widzisz na czym polega błąd? Ten babol na szczęście nie trafił do kodu produkcyjnego. Technika „code review” praktykowana w mojej firmie (Spartez) od razu go wychwyciła.

Twój zespół jeszcze nie stosuje code review? Albo nie wiesz co w ogóle jest? Obejrzyj prezentację z JDD 2009 – Efektywne przeglądy kodu dla developerów Java używających metodologii z rodziny agile prowadzoną przez Wojtka Seligę, kolegę z pracy.

Spoiler (odpowiedź w kolorze tła): Najpierw dokonuję zmiany w treści strony i ją zapisuję. Potem sprawdzam, czy wykonujący operację ma odpowiednie uprawnienia i w zależności od tego zwracam 200 OK lub 403 Forbidden. ;-)



  • jdd

Organizator

Złoci sponsorzy

  • e-point
  • j-labs

Srebrni sponsorzy

  • Lumesse
  • Luxoft
  • SII

Sponsorzy

  • Redhat
  • WITS

Sponsor Afterparty

  • WITS

Patroni medialni

  • helion
  • Polish JUG
  • Poznan JUG
  • SDJ