Warszawa 2019 13-14 JUNE

Schedule

13.06.2019

  Track A
08:00
09:00
Badge pickup
09:00
09:15
Opening / Welcome session
09:15
09:55
Keynote
Fabien Potencier
10:05
10:45
Symfony MakerBundle - szybsza praca i mniej błędów
Przemysław Bogusz
10:45
11:15
Break
11:15
11:55
DDD, CQRS, ES, Hexagon... oraz Symfony
Tomasz Kowalczyk
12:00
13:30
Lunch
13:30
14:10
Krótka historia o tym jak możemy projektować i implementować aplikacje Symfony przy użyciu TDD
Leszek Prabucki
14:20
15:00
Statyczna analiza aplikacji Symfony
Jakub Zalas
15:00
15:30
Break
15:30
16:10
Migracja frameworka w 3 dni
Filip Berlikowski
16:10
16:50
Wszystko, co chciałbyś wiedzieć o Syliusie, ale nie miałeś kiedy zapytać
Łukasz Adrian Chruściel
17:00
17:30
Symfopardy!
Tomasz Kowalczyk
17:30
19:30
Social event

14.06.2019

  Track A
08:00
09:00
Badge pickup
09:00
09:40
Overview of the Symfony HttpClient component and contracts
Nicolas Grekas
09:50
10:30
Let's play a game with Blackfire Player
Marcin Czarnecki
10:30
11:00
Break
11:00
11:40
Serverless PHP
Sebastian Grodzicki
11:45
12:05
Lightning talks session
12:05
13:30
Lunch
13:30
14:10
Framework agnostic application - will it fit with Symfony?
Dariusz Drobisz
14:20
15:00
Symfony Serializer - nasz przyjaciel w pracy z API
Paweł Skotnicki
15:00
15:30
Break
15:30
16:10
Źle używasz Doctrine'a !
Tomasz Surowiec
16:20
17:00
Demystifying React for Symfony developers
Titouan Galopin
17:00
17:15
Closing session

Keynote

Fabien Potencier - polski - Track A - 13.06.2019, 09:15

Keynote

Symfony MakerBundle - szybsza praca i mniej błędów

Przemysław Bogusz - polski - Track A - 13.06.2019, 10:05

Głównym celem wystąpienia będzie zaprezentowanie korzyści, wynikających z wykorzystywania MakerBundle w codziennej pracy, a przede wszystkim wskazanie, o ile ułatwia oraz przyśpiesza tworzenie kodu.

Plan prezentacji, to m.in.:

  • krótkie omówienie podstawowych komend dostępnych w MakerBundle, np. służących do tworzenia obiektów, komend, czy formularzy, wraz z przykładami wygenerowanego za ich pomocą kodu,
  • wskazanie na konkretnych przypadkach o ile szybsze efekty daje korzystanie z MakerBundle nawet w stosunku do pracy z szablonami i uzupełnianiem kodu oferowanym przez zaawansowany edytor, jakim jest PhpStorm,
  • bardziej zaawansowane przykłady zastosowania – gotowy pakiet plików do wykonywania operacji CRUD na obiekcie, system do rejestracji użytkowników wraz z formularzem,
  • tworzenie własnych komend do generowania kodu,
  • prezentacja repozytorium projektu na portalu GitHub i zachęcenie do włączenia się w rozwój oprogramowania.

DDD, CQRS, ES, Hexagon... oraz Symfony

Tomasz Kowalczyk - polski - Track A - 13.06.2019, 11:15

Dość często rozmawiamy na temat architektury naszych projektów i tego, w jaki sposób dostarczyć z ich pomocą jak najlepiej działające rozwiązanie z najwyższą jakością techniczną. Niestety nie rozmawiamy aż tak często na temat środowiska, w którym to robimy - frameworka - który dość często determinuje ilość pracy wymaganej do wdrożenia. W tej prelekcji zaprezentuję w jaki sposób Symfony może zostać wykorzystany w kontekście dowolnego rozwiązania archtekturalnego - m.in. DDD, CQRS, Event Sourcing, Hexagon - i jak dobrze pasuje on w każdym z tych przypadków. Oczywiście rozwiązanie idealne nie istnieje, jednak niektóre narzędzia są zaprojektowane tak, by pozwolić nam przejąć wystarczającą kontrolę nad projektem, a Symfony jest zdecydowanie jednym z takich narzędzi.

Krótka historia o tym jak możemy projektować i implementować aplikacje Symfony przy użyciu TDD

Leszek Prabucki - polski - Track A - 13.06.2019, 13:30

W czasie sesji live codingu (bo czemu nie). Postaram się pokazać jak możemy zaprojektować i wstępnie zakodować prosty przypadek rejestracji użytkownika przy użyciu TDD, a potem integrować go za pomocą Symfony Flex i Doctrina w webie. Na samym końcu postaramy się aby nasz rzypadek użycia mógł zostać wykonany asynchronicznie przy pomocy komponentu Messanger. W całym procesie postaram się powiedzieć o używanych przez narzędziach (PHPUnit, PHPSpec, Behat) oraz technikach zapożyczonych między innymi z haxagonal architecture.

Statyczna analiza aplikacji Symfony

Jakub Zalas - polski - Track A - 13.06.2019, 14:20

Statyczna analiza przeprowadzana jest na kodzie źródłowym bez jego uruchamiania. Jako, że bywa pomocna w recenzjach kodu, jest często częścią procesu ciągłej integracji (ang. Continuous Integration). Potrafi być także niezastąpiona w zdobywaniu wiedzy o nieznajomym projekcie.

Przez swoją obiektywność, statyczna analiza pozwala na skupienie się na rzeczach istotnych dla biznesu, zamiast kłócenia się o literówki, standardy, czy praktyki. Niektóre narzędzia potrafią nawet zidentyfikować problemy z projektem kodu, jego utrzymaniem, czy wykryć błędy. Pozostaje zapytać, czy powinniśmy bezwzględnie ufać narzędziom?

Podczas prelekcji, Kuba wyjaśni jak wcielić statyczną analizę kodu w projekt oparty o Symfony, aby pogłębić swoją percepcję o jego jakości.

Migracja frameworka w 3 dni

Filip Berlikowski - polski - Track A - 13.06.2019, 15:30

Jak zaplanowaliśmy i zrealizowaliśmy migrację z Silex do Symfony w 3 dni i dlaczego (prawie) nam się udało. Studium przypadku migracji dużego projektu generującego 100 mln EUR obrotu miesięcznie z zachowaniem polityki "zero downtime".

How we planned and conducted migration from Silex to Symfony in 3 days and why we (almost) made it. Case study of migration of a big project generating 100 mln EUR turnover a month all according to our "zero downtime" policy.

Wszystko, co chciałbyś wiedzieć o Syliusie, ale nie miałeś kiedy zapytać

Łukasz Adrian Chruściel - polski - Track A - 13.06.2019, 16:10

Sylius to framework e-commerce, który we wrześniu 2017 roku osiągnął pierwszą wersję stabilną. Zanim jednak ten moment nastąpił, był on rozwijany przez ludzi z całego świata począwszy od roku 2011. Jak wygląda teraz? Czego nauczyliśmy się w trakcie jego rozwoju? Jakie były nasze największe problemy oraz jak społeczność reagowała na nasze decyzje? Na te i inne pytania odpowiem w mojej prezentacji.

Symfopardy!

Tomasz Kowalczyk - polski - Track A - 13.06.2019, 17:00

Weź udział w konkursie Jeopardy! Sprawdź swoją wiedzę o Symfony wraz z pozostałymi uczestnikami w atmosferze świetnej zabawy. Każda sesja konkursu to 25 pytań w pięciu kategoriach związanych z naszym ulubionym frameworkiem i jego środowiskiem. Brzmi interesująco? Do zobaczenia!

Overview of the Symfony HttpClient component and contracts

Nicolas Grekas - polski - Track A - 14.06.2019, 09:00

Have you heard of Symfony HttpClient? This new component is part of Symfony 4.3. How about experimenting with it by launching "compose require symfony/http-client"? That is what I propose you do at this conference. We will review its features and essential characteristics. Enough to replace Guzzle et al.? Undoubtedly as far as I am concerned :)

Let's play a game with Blackfire Player

Marcin Czarnecki - polski - Track A - 14.06.2019, 09:50

Jak ulepszyć testy swojej aplikacji i nie martwić się o jej wydajność na serwerach produkcyjnych? Bazując na przykładach implementacji z GOG.com opowiem jakie problemy rozwiązaliśmy dzięki Blackfire Player, jak włączyć testy wydajności w proces CI oraz jak w łatwy sposób korzystać z Blackfire Player w połączeniu z Dockerem.

Serverless PHP

Sebastian Grodzicki - polski - Track A - 14.06.2019, 11:00

serverless nie był do tej pory gorącym tematem w świecie PHP, ponieważ żaden z dostawców usług chmurowych nie wspiera natywnie PHP w środowisku tego typu. Pod koniec zeszłego roku AWS udostępniło dwie nowe usługi (Lambda Runtime API oraz Lambda Layers), które pozwalają na samodzielne dodanie PHP do środowiska typu #serveless. Podczas prezentacji omówię poszczególne elementy takiej architektury oraz pokażę kod PHP działąjacy na AWS Lambda.

Framework agnostic application - will it fit with Symfony?

Dariusz Drobisz - polski - Track A - 14.06.2019, 13:30

Frameworki są świetnymi narzędziami. Symfony jest moim ulubionym. Wielu programistów nauczyło się dzięki nim w jaki sposób w dzisiejszych czasach tworzy się aplikacje internetowe. Dokumentacje frameworków pokazują w jaki sposób stworzyć aplikację wykorzystując podejście właśnie tego konkretnego narzędzia. Nie ma w tym nic złego, w końcu to właśnie zadanie dokumentacji. Niestety wielu programistów nie szuka innego podejścia do architektury. Trwają przy tym, co zobaczyli w dokumentacji frameworka.

Podczas prezentacji zobaczysz jak warstwy aplikacji i domeny mogą wygląda w podejściu framework agnostic. Użycie architektury portów i adapterów pomoże nam w tym. Co bardziej interesujące, bardzo łatwo można taką aplikację rozdzieloną od frameworka zintegrować z tego typu narzędziem. Zobaczysz to na przykładzie Symfony, gdzie od czasu kiedy na pokładzie pojawił się Symfony Flex, taka integracja jest jeszcze łatwiejsza.

Symfony Serializer - nasz przyjaciel w pracy z API

Paweł Skotnicki - polski - Track A - 14.06.2019, 14:20

Jako programiści aplikacji internetowych często stykamy się z różnymi API - jako dostawcy i konsumenci - a to oznacza konieczność serializacji i deserializacji. To bardzo szerokie zagadnienie, ale Symfony dostarcza nam komponent, który pomoże nam rozwiązać większość problemów z którymi się spotkamy. W prezentacji przedstawię użycie komponentu Serializer od najprostszych przypadków po bardziej skomplikowane, choć równie często spotykane w naszej pracy, wymagające implementacji własnych normalizerów

Źle używasz Doctrine'a !

Tomasz Surowiec - polski - Track A - 14.06.2019, 15:30

Podczas developerki często spotykam się z brakiem zrozumienia ORM'a. Zbyt często widzę anemiczne encje z autoinkrementami, raporty generowane z kolekcji zhydrowanych obiektów i repozytoria przekaczające 2k wierszy. Bazując na doświadczeniu z wielu projektów, chciałbym pokazać czego unikać przy codziennej pracy z Doctrine'em, dlaczego to jest złe i jaka jest alternatywa.

Demystifying React for Symfony developers

Titouan Galopin - polski - Track A - 14.06.2019, 16:20

The world of Javascript is vast and exciting... but it can also be quite scary! It is an innovative world in which new technologies appear all the time, which can make it difficult for developers to keep up to date.

One of the most famous of these technologies is probably React. It changed the way we conceive User Interfaces, both in the browser and in mobile applications. But understanding it can be challenging: let's demystify it together so that you can enter the world of Javascript with confidence!