Krótka historia czasu – Tomasz Nurkiewicz
Tomasz Nurkiewicz, niczym Stephen Hawking, opowiada o pułapkach związanych z datami i czasem w Javie (oraz ogólnie w informatyce). Byłem, widziałem – najlepsza prezentacja na tegorocznej Confiturze!
Od autora:
Jaka jest różnica czasu między Warszawą a Sydney? Odpowiedź na to pytanie jest zaskakująco trudna. Równie zaskakującym jest jak wielu programistów tej trudności nie dostrzega. Niby po co? Bo niemal co roku na światło dziennie wypływają zawstydzające błędy w oprogramowaniu, wynikające z niewiedzy bądź lekkomyślnego traktowania… czasu w systemach komputerowych.
Podczas tej prezentacji spróbuję pokazać, jak ważne jest świadome operowanie czasem podczas pisania oprogramowania. Nie będziemy (prawie) narzekali na klasę java.util.Date
, ale skupimy się na fundamentalnych nieporozumieniach i błędach. Zobaczymy w przykładach fatalne skutki beztroskiego i nieumiejętnego obchodzenia się z czasem.
Nauczymy się także jak przechowywać, przesyłać i przetwarzać czas oraz jak testować systemy zależne od czasu (czyli w zasadzie wszystkie). Nie spodziewajcie się eksploracji takiego czy innego API. Skupimy się raczej na zrozumieniu praw rządzących upływem czasu i ich odpowiednim modelowaniem w naszych programach.
Video również traktujące o czasie i strefach czasowych: http://www.youtube.com/watch?v=-5wpm-gesOY.