To już kolejna edycja konferencji 4developers, w której wzięłam udział. Tym razem była to edycja wyjątkowa, bo zdalna! Standardowo składała się z kilku ścieżek, ale dla odmiany trwała kilka dni. Nie miałam możliwości uczestniczyć codziennie w prelekcjach, aczkolwiek jeszcze 2 tygodnie od zakończenia konferencji były dostępne nagrania (tylko dla zarejestrowanych uczestników).
Poniżej przedstawiam kilka ciekawych prelekcji, które miałam okazję wysłuchać:
Robert Podsiadły – „Jak my developerzy robimy to na backendzie”
Robert poruszył istotny temat komunikacji QA i developerów. W swojej prezentacji pokazał kilka przykładów projektów, w których w różny sposób musiał podejść do aspektu testowania.
Robert obalił takie mity jak:
- pisanie testów jest łatwe/trudne
- mój kod działa, nie potrzebuje testów
- klient nie płaci za testowanie
- testerzy są od testowania
- pokrycie testami ma wynosić 100%
Dodatkowo podczas prelekcji została poruszona kwestia danych testowych. Robert powiedział min. że: „nasze testy są tak dobre, jak dane testowe, które zdefiniujemy”. Jak najbardziej się z tym zgadzam. Nieraz to właśnie błędne dane testowe sprawiały, że testy były fałszywie dodatnie.
Mariusz Gil – „Od modelu do commita, historia pewnego agregatu”
Mariusz zaczął od pokazania problemu: przykładu niezinformatyzowanej biblioteki. Jest to miejsce, które ma wiele książek, które członkowie mogą wypożyczać. Muszą przestrzegać takich zasad jak np. wypożyczenie max 5 książek na raz czy stosować się do maksymalnej długości wypożyczenia 14 dni (z opcją jednorazowego przedłużenia).
W prezentacji Mariusz przedstawił próby informatyzacji procesów bibliotecznych przez 3 zespoły, z różnymi podejściami do programowania. Według każdego z zespołów, podstawowy byt to coś innego:
- (zespół 1) wypożyczenie => zbyt mały agregat

- (zespół 2) karta biblioteczna z kolekcją wypożyczanych książek => zbyt duży agregat

- (zespół 3) wypożyczenie + karta biblioteczna => prawidłowy agregat

Nie wchodząc w szczegóły mogę napisać, że w bardzo ciekawy i przystępny sposób Mariusz pokazał wady i zalety każdego z rozwiązań.
Zachęcam do zerknięcia na GitHub Mariusza, gdzie jest przygotowane przykładowe repozytorium.
Brian Benz – Improving applications with DevOps
Brian zaczął prelekcję od ciekawego przykładu, pokazującego jak usprawniamy procesy wraz z upływem czasu na przykładzie zmiany kół w bolidzie. Kiedyś ten proces zajmował dobrych kilkadziesiąt sekund – teraz kilka/kilkanaście.
Według Briana proces powinien się składać z kilku kroków: planowania, developmentu i testów, wdrożenia oraz monitorowania.

Jednak żeby procesy zachodziły sprawnie, musi być odpowiedni podział obowiązków i dobra integracja między zespołami. Na przykładzie współpracy Dev i Ops:
- Dev (Code, unit testing, GitHub repo, CI/CD Automation)
- Ops (Azure DevOps Project, Web Servers, Scalling, CI/CD Automation, Monitoring, Security)
Później przyszedł czas na DEMO: pokazanie, jak można zintegrować aplikację z GitHuba z Azure DevOps. W ramach przykładu został utworzony Canary release (udostępnienie zmian tylko wybranej części użytkowników, w tym przypadku 50%). Połowa użytkowników powinna zobaczyć nową wersję strony, a połowa starą wersję.
Mariusz Bojkowski – Magical C# 9 – something positive in 2020?

C#9 to nowinka, która będzie dostępna dopiero po wyjściu na świat .NET 5 (planowo listopad 2020). Oferuje „magiczne” rzeczy 🙂
Mariusz pokazał kilka nowości, m.in:
- słowo kluczowe init jako setter
- Rekordy i słowo kluczowe with
- Zmiany w klasie Program, metodzie Main – nie trzeba będzie już ich definiować (przykład)!
- Zmiany w pattern matching, słowa kluczowe and, or, not (przykład)
- Deklaracja nowych obiektów przez new () (przykład)
Slajdy są dostępne pod linkiem.
Podsumowanie
Konferencja w wersji online wypadła całkiem nieźle. Z plusów: było dostępnych wiele wykładów, i to przez kilka dni, a nie jeden. Wykłady można było obejrzeć później.
Oczywiście największy minus,to brak możliwości spotkania się i porozmawiania na żywo z innymi osobami. Trudno nawiązać nowe kontakty. Ale jak widać, również zdalnie można zrobić fajną konferencję 🙂
Mimo wszystko nie jestem zwolennikiem konferencji online. Nauczanie internetowe w moim przypadku doprowadziło do mnóstwa wynaturzeń, np. nauki lutowania przez kamerkę internetową. Dobrze, że uczestnicy chociaż starali się przedstawić rzeczowe materiały.
PolubieniePolubione przez 1 osoba
Niestety musimy sobie jakoś radzić w aktualnej rzeczywistości. Lepsze konferencje online, niż żadne. Ale ja równie preferuję wersje stacjonarne 🙂
PolubieniePolubienie
Obecnie technologie są tak zaawansowane, że mamy tą możliwość przeprowadzania, czy brania udziału w konferencjach online. W tych czasach docenia się to jeszcze bardziej, zwłaszcza że jest to szansa na ciągły rozwój i pogłębianie swoich zainteresowań.
PolubieniePolubione przez 1 osoba
Dokładnie, super, że są możliwości i z nich korzystamy 🙂
PolubieniePolubienie
U mnie na razie oprócz własnie działania tego typu hobbystycznie jak u Ciebie to cala kasa poleciała na start na oprogramowanie dla firm budowlanych, jak się zachciało niestety biznesu to trzeba inwestować
PolubieniePolubienie