41. odcinek DevTalk to nie przelewki, oj nie. Dzisiaj trochę… potaplamy się w błocie.
Do rozmowy zaprosiłem Jarosława Pałkę: znanego i uznanego programistę, architekta, managera, team leadera, prelegenta, bloggera i co tam jeszcze. Spotkać możecie go na bardzo wielu konferencjach, gdzie opowiada o Javie i ciężkiej orce w naszym zawodzie. Na Twitterze: @j_palka.
Takiego to speca do zadań specjalnych zaangażowałem, aby wraz z nim uporać się z niezmiernie trudnym tematem: Legacy Code. <…złowrogi świst zimnego wichru pomiędzy cmentarnymi nagrobkami…>. A w bonusie otrzymujecie także trochę refleksji na temat relaksu, stanu środowiska IT itede, psuć niespodzianek nie będę.
Jest to najdłuższy odcinek do tej pory, ale sami o to prosiliście. Słucham, więc jestem ;).
Tymczasem… zapraszam do radio-tele-odbiorników:
Montaż odcinka: Krzysztof Śmigiel.
Ważne adresy:
- zapisz się na newsletter
- zasubskrybuj w iTunes, Spotify lub przez RSS
- ściągnij odcinek w mp3
Linki:
- blog Jarka: https://geekyprimitives.wordpress.com
- książki:
- “Working Effectively with Legacy Code”: https://www.amazon.com/Working-Effectively-Legacy-Michael-Feathers/dp/0131177052
- “Refactoring to Patterns”: https://www.amazon.com/Refactoring-Patterns-Joshua-Kerievsky/dp/B001TKD4RQ
- “Growing Object-Oriented Software”: https://www.amazon.com/Growing-Object-Oriented-Software-Guided-Tests/dp/0321503627
- “Your Code as a Crime Scene”: https://pragprog.com/book/atcrime/your-code-as-a-crime-scene
- The First International Conference on Software Archaeology: http://ticosa.org/programme.html
- Michael Feathers “To Kill Code”: https://michaelfeathers.silvrback.com/to-kill-code
- teoria systemów: https://en.wikipedia.org/wiki/Systems_theory
- prezentacja J.B. Rainsberger “Integration Tests Are a Scam”: https://www.infoq.com/presentations/integration-tests-scam
- “The Definitive Guide to Sleep”: http://www.marksdailyapple.com/the-definitive-guide-to-sleep/
- post “Recykling czasu. Czyli: “kto ma dłuższego?””: http://devstyle.pl/2016/09/27/recykling-czasu-czyli-kto-ma-dluzszego/
- post “Dziewczyno! Nie nadajesz się do programowania!”: http://devstyle.pl/2016/07/07/dziewczyno-nie-nadajesz-sie-do-programowania/
- post “Czy programista musi być pasjonatem?”: http://devstyle.pl/2010/04/07/czy-programista-musi-byc-pasjonatem/
Muzyka wykorzystana w intro:
“Misuse” Kevin MacLeod (incompetech.com)
Licensed under Creative Commons: By Attribution 3.0
http://creativecommons.org/licenses/by/3.0/
Słucham DevTalk’a od niedawna (#33 – ten z Gynvael’em) i możesz wierzyć lub nie, ale od początku po każdym odcinku miałem taki lekki niedosyt, coś w stylu “łee, już się skończyło?”. A dzisiaj czuję się jak po dobrej Wigilii, dzięki wielkie. :)
Maciej,
No to git, czyli strategia z “nie zatrzymuj nagrywania dopóki jest jeszcze cokolwiek do dodania” działa :).
Hej! Podbijam opinię, że był niedosyt – a teraz było o wiele lepiej. Maciek, podtrzymaj trend dłuższych devtalków :)))
Szkoda że już to mam:)
Bardzo dobry podcast! Za jakiś czas przesłucham ponownie.
Jedne z lepszych podcast. Szacun dla Pana Jarka za ogromną wiedzę !
[…] Podcast o legacy code […]
O legacy code z Jarosławem Pałką
Dziękujemy za dodanie artykułu – Trackback z dotnetomaniak.pl
Bardzo ciekawy podcast. Trafne uwagi odnośnie szalonych refactoringów, czy nadziei, że będzie rewrite i wszystko będzie lepiej. Jak ktoś może napisać dobrą aplikację, jak większość tego co widział, to ‘bagienko’.
Inna sprawa to podejście do legacy. Niektóre fragmenty kodu nie stają się legacy po commicie, one są legacy zanim je ktoś napiszę (mi się też zdarza, nie tak rzadko). Jak ktoś dodaje coś do kilkutysięcznego JSP z html’em, css’ami i js’ami to, jeśli ma się zmieścić w sensownym czasie, będzie tak samo złe, albo gorsze.
Co do metryk które powiedzą nam, czy kod jest do refaktoryzacji, to ciekawe byłoby narzędzie, które pokazywałoby ile jest copy-paste’ów w obrębie projektu.