A dzisiaj napiszę "co u mnie".
Więc tak - delegacja do Warszawy minęła pomyślnie. Mieszkanie służbowe było bardzo OK, hotel już mniej, biuro przypominało labirynt (faktycznie można było w nim biegać w kółko), na dodatek co krok drzwi otwierane kartami magnetycznymi, zero "szerokiej, otwartej przestrzeni". Za to fotele genialne, obejrzałem bardzo skrupulatnie ale niestety, nie znalazłem info o producencie. I komputery Della też bardzo dobrze zrobione, wielkie radiatory, wielkie ciche wiatraki...
Bez wdawania się w zbędne szczegóły, kod który przez ponad 8h był w stanie przetworzyć koło 90k jednostek danych (po czym wykładał się z braku pamięci) udało mi się doprowadzić do stanu, w którym mieli coś koło 11mln jednostek w czasie ok. 0,5h. Dałoby się jeszcze bardziej to wyśrubować, ale tylko po aktualizacji paru frameworków używanych w projekcie, a to było wykluczone.
Oprócz poprawionego kodu zostawiłem też bardzo ładny anglojęzyczny raport, opisujący zastany problem, diagnozę, podjęte czynności naprawcze, zakres modyfikacji istniejącego kodu ze wskazaniem błędów popełnionych przez jego pierwszego autora, możliwości dalszej optymalizacji, wyliczenie wypróbowanych przeze mnie optymalizacji łącznie z tymi, z które nic nie dały i z nich zrezygnowałem, zyski i zagrożenia jakie niesie ew. aktualizacja frameworków, rozpiskę zmodyfikowanych klas z krótkimi streszczeniami do każdej, etc. Taki ładny transfer wiedzy w skondensowanej formie. Dokument który powinno się IMO zawsze przekazywać razem z kodem... napisanie go zajmuje trochę czasu, ale ostatecznie oszczędza czas i mój, i innych.
Podziękowali mi za przyjazd i naprawienie kodu (to było miłe, to podziękowanie). A potem wyrwałem się z powrotem do Poznania, bo
Czyli wszystko poszło tak jak miało pójść, chociaż po pierwszym dniu byłem pesymistycznie nastawiony. Za to drugiego wyszedłem na prostą, a trzeciego nawet niespodziewane aktualizacje specyfikacji nie zrobiły na mnie wrażenia i zaimplementowałem je od ręki. (...)
Czytaj dalej...