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
Jak widać prawie każdą sferę życia można przenieść do sieci. Wszystko dla naszej wygody, a teraz także dla naszego bezpieczeństwa :). Ciekawy artykuł.
PolubieniePolubione przez 1 osoba
Fajna konferencja niosąca za sobą masę ciekawych ludzi, wiedzy i inspiracji. Dzięki za tę relację i wpis, który przeczytałem z wielką przyjemnością, pozdrawiam.
PolubieniePolubione przez 1 osoba
Dzięki za komentarz! Mam nadzieję, że zauważyłeś, że to recencja zeszłorocznej edycji ;p
PolubieniePolubienie
Trochę mi już brakuje zwykłych, fizycznych konferencji 😦
PolubieniePolubienie
Niestety 😦 w tym roku szykuje się stacjonarnie Segfault https://segfault.events/unconference2022spring/, gdzie planuję wystąpić – może wpadniesz? 🙂
PolubieniePolubienie