V edycja otwartej, darmowej konferencji
poświęconej zagadnieniom informatycznym
18 listopada 2017, Gliwice

Software Architecture

Microservices, Command Query Responsibility Segregation, Porty i Adaptery, Event Sourcing, Domain Driven Design, Test Driven Design, Event Driven Architecture, Clean Code i wiele więcej! Dowiedz się jak budować stabilne oprogramowanie, słuchając prawdziwych historii prosto z pola walki.

GameDev

Obecnie gry stają się coraz bardziej zaawansowane i złożone, jak więc można za nimi nadążyć? Co zrobić by zrozumieć proces ich powstawania? W ramach tej ścieżki oferujemy przyjemny sposób na wgląd w tajniki tworzenia tych niesamowitych wirtualnych środków rozrywki.

Software Craftsmanship

W dzisiejszym świecie proces wytwarzania oprogramowania kojarzony jest częściej z linią produkcyjną niż z warsztatem. Ścieżka ta poświęcona jest tematyce związanej z praktykami pozwalającymi połączyć programowanie z takimi zagadnieniami jak perfekcja, zwinne wytwarzanie oprogramowania czy też rzemiosło.
Zobacz relację z czwartej edycji!
A co w tym roku? 

Wysłuchamy między innymi

Marius Rejdak (XCaliber)

Legacy code na kontenerach?

Kontenery to ostatnio bardzo popularny, ale i kontrowersyjny temat. Zwolennicy i przeciwnicy sprzeczają się nad jego zasadnością, a należy pamiętać że jak każda inna technologia ma swoje wady i …

Legacy code na kontenerach?

Kontenery to ostatnio bardzo popularny, ale i kontrowersyjny temat. Zwolennicy i przeciwnicy sprzeczają się nad jego zasadnością, a należy pamiętać że jak każda inna technologia ma swoje wady i zalety.

W tej prezentacji nie postaram się wprowadzić Cię w świat kontenerów, lecz pokażę jakie wyzwania można napotkać migrując stary projekt, oraz jaki wpływ może wywrzeć na proces developmentu i wdrożenia produkcyjne.

  Język: Polski
  Poziom: 
Piotr Pelczar (Euro Bank)

Pragmatic Monolith-First, easy to decompose, clean architecture

Tworzenie architektury systemów odpowiadającej przyszłym potrzebom biznesu to wróżenie z fusów. Nie istnieje jedna strategia  na strategiczne planowanie systemu. Zbyt wczesne podjęcie decyzji o …

Pragmatic Monolith-First, easy to decompose, clean architecture

Tworzenie architektury systemów odpowiadającej przyszłym potrzebom biznesu to wróżenie z fusów. Nie istnieje jedna strategia  na strategiczne planowanie systemu. Zbyt wczesne podjęcie decyzji o architekturze opartej o mikrousługi może utrudnić refaktoryzacje i wprowadzić zbyt dużą bezwładność systemu wyniesioną na poziom infrastruktury i spowolnić development. Z kolei monolit bardzo ciężko opanować.

Zaprezentuję propozycję budowy systemu rozpoczynając od dobrze zorganizowanego monolitu z wyraźnie zaznaczonymi zakresami techniczno-biznesowymi, umożliwiającego podjęcie decyzji w którym kierunku go dekomponować i jak go dostarczać. Jego założeniem będzie dobre wykorzystanie strategicznego i taktycznego Domain-Driven Design, oparcie o Hexagonal Archiecture. Zaprezentuję ciągłe i automatyczne monitorowanie złożoności przypadkowej różnej klasy narzędziami wbudowanymi w CI.

Zapraszam, jeżeli interesuje Cię budowa systemów o bogatej i skomplikowanej domenie biznesowej.

  Język: Polski
  Poziom: 
Piotr Wittchen (SAP Hybris)

Jak tworzyć projekty open-source, których ludzie chcą używać?

Podczas prelekcji chciałbym podzielić się swoim ponad dwuletnim doświadczeniem oraz przemyśleniami związanymi z tworzeniem projektów open-source. Opowiem o tym, dlaczego programiści decydują się na …

Jak tworzyć projekty open-source, których ludzie chcą używać?

Podczas prelekcji chciałbym podzielić się swoim ponad dwuletnim doświadczeniem oraz przemyśleniami związanymi z tworzeniem projektów open-source. Opowiem o tym, dlaczego programiści decydują się na tworzenie takich projektów, jaka jest ich motywacja oraz jakie korzyści może wynieść z tego zarówno pojedyncza osoba, jak i firma, która wspiera takie rozwiązania. Przedstawię również cechy, które moim zdaniem powinny posiadać dobre projekty oraz praktyczne wskazówki na to, jak dostosować projekt do wysokich standardów jakości. Będzie to pomocne nie tylko przy tworzeniu własnych rozwiązań, ale także podczas ewaluacji rozwiązań, które już istnieją. Opowiem też o tym, jak promować swoje projekty oraz co może pomóc w stworzeniu wokół naszego rozwiązania społeczności programistów, którzy będą chcieli pomagać nam rozwijać nasze pomysły. Większość z moich projektów open-soruce, to lekkie biblioteki napisane w języku Java, a wymienione zagadnienia nie będą poparte teorią, lecz praktycznymi sytuacjami oraz stworzonymi przeze mnie rozwiązaniami, w których rozwój zaangażowali się programiści nie tylko z Polski, ale także m.in. z USA, Japonii, Rosji, Walii oraz Brazylii. Stworzone przeze mnie biblioteki zostały wdrożone m.in. w aplikacji mobilnej w firmie EERO z Doliny Krzemowej, która tworzy domowy system WiFi oraz w Toss.im, która jest firmą dostarczającą aplikację mobilną do obsługi finansów osobistych dla mieszkańców Korei, a także w open-sourcowej aplikacji PAT Track służącej do monitorowania rozkładu jazdy autobusów w Pittsburgh, PA (USA) oraz wielu innych. Każde z tych wdrożeń nastąpiło bez mojego udziału na podstawie dokumentacji, kodu źródłowego, testów i przykładowych aplikacji.

  Język: Polski
Daniel Pokusa (Onwelo)

Orchestrate your choreography!

Gdy mówimy o orkiestracji powinniśmy myśleć o filharmonii i dyrygencie, który wskazuje muzykom rytm dzięki czemu każdy muzyk wie kiedy zagrać swoją - znaną mu z nut - partię. Tak samo zachowuje się …

Orchestrate your choreography!

Gdy mówimy o orkiestracji powinniśmy myśleć o filharmonii i dyrygencie, który wskazuje muzykom rytm dzięki czemu każdy muzyk wie kiedy zagrać swoją - znaną mu z nut - partię. Tak samo zachowuje się metoda, która wskazuje innym metodom, kiedy mają wykonać swoje - znane - zadanie. Z kolei choreografia to układ taneczny, który nie potrzebuje dyrygenta. Wystarczy muzyka i tancerze (np. baletu) doskonale wiedzą kiedy zatańczyć swoją partię. Muzyka tworzy dla nich pewne zdarzenia, które pozwalają im reagować na nie w z góry ustalony sposób. Podobnie działa metoda reagująca na zdarzenie- jeśli coś się wydarzy możemy wykonać z góry zaprogramowany kod. 

W oparciu o te dwa fundamentalne podejścia do pisania oprogramowania zbudowano wiele frameworków i narzędzi. Leżą one w podwałach takich architektur jak Event Driven Architecture, Microservices, CQRS, Hexagonal Architecture i wiele innych. Moim zdaniem jednak zbyt rzadko zastanawiamy się nad nimi. Niezależnie w którym buzzwordzie jesteś zakochany wielokrotnie będziesz stawał przed wyborem jednej z tych dwóch dróg.

Chciałbym Wam pokazać plusy i minusy stosowania Orkiestracji i Choreografii, ale przede wszystkim jak praktycznie je łączyć ze sobą budując własną architekturę złożonych systemów- zarówno na poziomie kodu źródłowego jak i całych komponentów.  

  Język: Polski
  Poziom: 
Chcesz więdzieć więcej o SpreadIT?

Nasi sponsorzy i partnerzy

Patronat honorowy

Sponsor główny

Sponsor Ścieżki GameDev

Sponsor Ścieżki Software Architecture

Sponsor Ścieżki Software Craftsmanship

Sponsor złoty

Sponsor złoty

Sponsor złoty

Sponsor złoty

Sponsor złoty

Sponsor srebrny

Sponsor srebrny

Sponsor srebrny

Sponsor brązowy

Sponsor brązowy

Patron medialny

Patron medialny

Patron medialny

Patron medialny

Patron medialny

Patron medialny

Partner

Partner

Partner

Partner

Korzystając z tej strony, zgadzasz się na zapisywanie przez nas plików cookie na Twoim komputerze zgodnie z naszą polityką prywatności.