Pamiętacie PHPCon Poland? Tę konferencję z duszą, która była mocno integracyjna i pomogła
zbudować polską społeczność PHP? Chcemy do niej powrócić! Chcemy znów zorganizować to, za czym wielu z was
tęskni i co najmilej wspomina! Jak? Wracając tam, gdzie macie najlepsze wspomnienia, czyli do Orlego
Gniazda w Szczyrku, umożliwiając wam rezerwację pokojów i wyżywienia wraz z biletem
konferencyjnym. Wspólnie możemy sprawić, że to wydarzenie znów na stałe zagości w kalendarzu
polskich imprez deweloperskich!
W agendzie tym razem aż sześć piątkowych ścieżek warsztatowych o zróżnicowanej tematyce oraz
dwie ścieżki wykładowe w sobotę i niedzielę.
A zatem… do zobaczenia już wkrótce w Szczyrku!
Dlaczego musisz nas odwiedzić?
Legendarna impreza
Spotykamy się na konferencji, której wielu z was nie może się już doczekać.
Oczywiście w najlepszym z dotychczas odwiedzonych hoteli!
Nocleg w tym samym hotelu
Wejściówkę możesz łatwo połączyć z noclegiem, jeśli tylko chcesz.
Czy może być coś wygodniejszego?
Pełne wyżywienie
Każdy posiłek w tym samym miejscu. Dla uczestników warsztatów od
piątkowego obiadu, dla pozostałych – od sobotniego obiadu począwszy.
Warsztaty
Zainteresowanych praktyczną wiedzą zapraszamy na warsztaty w piątek.
Potrwają one aż do wieczora, bo prelekcje rozpoczniemy dopiero w sobotni poranek.
Wymiana doświadczeń
Nie ma problemów nie do rozwiązania! Na PHPConie spotkasz wielu
specjalistów z branży, którzy lubią dzielić się wiedzą i pomagać sobie nawzajem.
Po prostu przyjedź!
Integracja
Po godzinach miło spędzamy czas. Niejednemu z was na pewno przypadną
do gustu różne formy sponsorskiej aktywności… ;)
Agenda
Dzień Warsztatowy
piątek
15 listopada 2019 r.
10:00
Pisz testy - czyli praktyka tworzenia testów jednostkowych
Adrian Piętka
Pisz testy - czyli praktyka tworzenia testów jednostkowych
Adrian Piętka
SALA E
Podczas warsztatu uczestnicy zapoznają się tematem testów jednostkowych wraz z ich praktycznym zastosowaniem podczas implementacji logiki biznesowej.
Uczestnicy dowiedzą się czym są testy jednostkowe, jak je odróżniać od innych testów, kiedy i dlaczego warto je stosować. Nauczą się także pisać testy jednostkowe w oparciu o PHPUnit oraz zapoznają się z techniką TDD.
Warsztat dedykowany jest dla początkujących osób, nie mających wcześniej styczności z tworzeniem testów jednostkowych.
Wymagania względem uczestnika ograniczają się do:
znajomości podstaw PHP7,
własnego sprzętu z zainstalowanym: PHP, Git, dowolnym IDE (preferowany PHPStorm).
Agenda:
Podstawy - czym są testy jednostkowe, co i kiedy warto testować na poziomie testów jednostkowych (30 min)
Testowanie logiki biznesowej - podstawy tworzenia testów jednostkowych (1h 30min)
Mockowanie zewnętrznych zależności (30 min)
TDD jako sposób na odwrócenie modelowania kodu (1h)
PHPSpec basics
Dariusz Drobisz
PHPSpec basics
Dariusz Drobisz
ROOM D
Do you want to start doing BDD? An organization that you are working for are not ready for that big step? Start with yourself. Spec BDD is the way that you can start on your own and show other teammates profits from that approach. Especially when you can share with them well designed, tested code.
During workshop, you will learn what are the main goals of using Spec BDD, how PHPSpec and Prophecy mocking library work and how to use them to design your code communication. Attendees will try in practice some basic and more complicated examples that will show them how to use PHPSpec in their each day work. Workshop for people who want to start their PHPSpec adventure.
To get most out of the workshop you'll need own laptop with the newest version of PHP 7 and the general knowledge of OOP.
Sylius - rozwiązanie eCommerce na miarę Twoich potrzeb, część I
Łukasz Chruściel
Sylius - rozwiązanie eCommerce na miarę Twoich potrzeb, część I
Łukasz Chruściel
SALA H
W czasie warsztatu rozszerzymy wspólnie podstawową wersję Syliusa o produkty grupowane. Co więcej, pokażemy jak umożliwić dodawanie tych grup od razu do koszyka oraz stworzymy kilka domyślnych grup do bazowej konfiguracji nowego sklepu tak aby praca z nową funkcjonalnością była prostsza, a efekty Twojej pracy - szybciej widoczne. Warsztaty będą głównie nakierowane na pisanie kodu. Po warsztacie powinieneś być zaznajomiony z podstawami Syliusa, jak postawić swój pierwszy sklep na nim oraz jak rozszerzyć niektóre z jego funkcji. Czego się nauczysz:
zapoznasz się z architekturą oraz podziałem na Bundle ekosystemu Syliusa,
stworzysz CRUDowe API w kilka minut,
zapoznasz się z SyliusResourceBundle i stworzysz swojego pierwsze CRUDA,
dowiesz się jak w prosty sposób wygenerować CRUD do Admina z wykorzystaniem SyliusGridBundle,
nauczysz się jak używać komponentu State Machine w Syliusie,
jak usprawnić development projektu z użyciem fixturesów i SyliusFixturesBundle.
działającej wersji Sylius-Standard z użyciem Vagranta/Dockera lub lokalnie,
podstawowej wiedzy z Symfony.
REST easy with API Platform, part I
Antonio Perić-Mažar
REST easy with API Platform, part I
Antonio Perić-Mažar
ROOM F
We'll start by creating a fully-featured API in just a few minutes with API Platform, Symfony and Doctrine. The API will support pagination, data validation, access control, relation embedding, filters, and error handling. It will expose many formats (JSON-LD, Hydra, JSONAPI, HAL, JSON, XML, YAML, and CSV), will be documented with Swagger/OpenAPI and will have a nice UI done in React. Last but not least, the API will respond in a just few milliseconds thanks to its built-in invalidation-based cache mechanism.
Then, we will use the ReactJS tools provided by the API Platform to consume the exposed Hydra documentation. In a few more minutes, we will get a Material Design administration interface (a la Sonata / EasyAdmin - but 100% client-side) built with React. Finally, we'll discover 2 nice code generators to bootstrap a SPA (React, Redux and React Router) and iOS and Android mobile apps (React Native).
The specific Docker environment will be prepared before this workshop. You'll need to download and install it. Bring your laptop, favorite IDE and a basic Symfony knowledge.
Getting the Most Out of PHPStan, part I
Ondřej Mirtes
Getting the Most Out of PHPStan, part I
Ondřej Mirtes
ROOM G
PHP is nothing like compiled languages. If you make a mistake, the program will crash when the line of code with the mistake is executed. When testing a PHP application, whether manually or automatically, developers spend a lot of their time discovering mistakes that wouldn’t even compile in other languages, leaving less time for testing actual business logic.
PHPStan is a popular static analyser focused on finding bugs in your code. By leveraging the strength of PHP type system further enhanced in PHPStan itself, developers can create robust applications and discover bugs early in the development process. The aid the tool provides during refactoring is also indispensable.
In this workshop, the attendees will learn how to install, configure and run PHPStan, and also receive tips how to write code so that PHPStan can be as powerful as possible. They will also be able to write their own PHPStan rules and extensions.
Just bring your laptop with PHP 7.1+ and Composer installed.
10:30
11:00
11:30
12:00
12:30
13:00
13:30
14:00
🍴 obiad dla uczestników warsztatów
14:30
15:00
Twoja droga do CI/CD: ucz się, adaptuj, ulepszaj
Arkadiusz Kondas
Twoja droga do CI/CD: ucz się, adaptuj, ulepszaj
Arkadiusz Kondas
SALA E
Ten warsztat to wprowadzenie do świata ciągłej integracji i ciągłego dostarczania oprogramowania. Zaczniemy od wdrożenia nowoczesnych narzędzi do naszego projektu. Uczestnicy otrzymają prosty legacy projekt z którym będą pracowali przez cały czas trwania warsztatów. W kolejnych krokach zbudujemy pipeline integracyjny i wdrożeniowy z wykorzystaniem serwera Buddy.Works. Uczestnictwo w warsztatach zapewni odpowiednią dawkę wiedzy pozwalającą wdrożyć nowoczesne procesy DevOps w swoich organizacjach.
Czego się nauczysz:
umiejętności pracy zespołowej z rozproszonym repozytorium kodu
integracji narzędzi z środowiska PHP (testy, statyczna analiza itp.) z serwerem CI/CD (Buddy.Works)
jak automatycznie umieszczać kod na produkcji
jak wdrażać procesy Continuous Integration / Continuous Deployment w swoim zespole
poznasz cztery kluczowe metryki które charakteryzują zespoły o wysokiej wydajności
dowiesz się jak zbudować pipeline wdrożeniowy który nie będzie powodował przerw na produkcji
Czego będziesz potrzebować:
zainstalowanego PHP w wersji co najmniej 7.2,
zainstalowanego IDE (polecany PHPStorm),
zainstalowanego composera i gita.
Strangling your legacy code with PHPSpec
Dariusz Drobisz
Strangling your legacy code with PHPSpec
Dariusz Drobisz
ROOM D
Do you like legacy code that you have to work with? He hopes not. He wants you to strangle it. Slowly. The same way as it slows down your work. And PHPspec is ready to help you with that. Removing old, badly designed and untested code is one of the hardest parts of developers work. Especially when you want to repair everything at once.
In this workshop, you will learn how you can change the code with a lot of dependencies and mixed layers piece by piece to tested part of the system that is easy to maintain. Some design patterns usage examples will be also included during this workshop.
To get most out of this workshop you'll need own laptop with the newest version of PHP 7. Also, the knowledge of OOP and the basic knowledge of PHPSpec will work for you.
Sylius - rozwiązanie eCommerce na miarę Twoich potrzeb, część II
Łukasz Chruściel
Sylius - rozwiązanie eCommerce na miarę Twoich potrzeb, część II
Łukasz Chruściel
SALA H
W czasie warsztatu rozszerzymy wspólnie podstawową wersję Syliusa o produkty grupowane. Co więcej, pokażemy jak umożliwić dodawanie tych grup od razu do koszyka oraz stworzymy kilka domyślnych grup do bazowej konfiguracji nowego sklepu tak aby praca z nową funkcjonalnością była prostsza, a efekty Twojej pracy - szybciej widoczne. Warsztaty będą głównie nakierowane na pisanie kodu. Po warsztacie powinieneś być zaznajomiony z podstawami Syliusa, jak postawić swój pierwszy sklep na nim oraz jak rozszerzyć niektóre z jego funkcji. Czego się nauczysz:
zapoznasz się z architekturą oraz podziałem na Bundle ekosystemu Syliusa,
stworzysz CRUDowe API w kilka minut,
zapoznasz się z SyliusResourceBundle i stworzysz swojego pierwsze CRUDA,
dowiesz się jak w prosty sposób wygenerować CRUD do Admina z wykorzystaniem SyliusGridBundle,
nauczysz się jak używać komponentu State Machine w Syliusie,
jak usprawnić development projektu z użyciem fixturesów i SyliusFixturesBundle.
działającej wersji Sylius-Standard z użyciem Vagranta/Dockera lub lokalnie,
podstawowej wiedzy z Symfony.
REST easy with API Platform, part II
Antonio Perić-Mažar
REST easy with API Platform, part II
Antonio Perić-Mažar
ROOM F
We'll start by creating a fully-featured API in just a few minutes with API Platform, Symfony and Doctrine. The API will support pagination, data validation, access control, relation embedding, filters, and error handling. It will expose many formats (JSON-LD, Hydra, JSONAPI, HAL, JSON, XML, YAML, and CSV), will be documented with Swagger/OpenAPI and will have a nice UI done in React. Last but not least, the API will respond in a just few milliseconds thanks to its built-in invalidation-based cache mechanism.
Then, we will use the ReactJS tools provided by the API Platform to consume the exposed Hydra documentation. In a few more minutes, we will get a Material Design administration interface (a la Sonata / EasyAdmin - but 100% client-side) built with React. Finally, we'll discover 2 nice code generators to bootstrap a SPA (React, Redux and React Router) and iOS and Android mobile apps (React Native).
The specific Docker environment will be prepared before this workshop. You'll need to download and install it. Bring your laptop, favorite IDE and a basic Symfony knowledge.
Getting the Most Out of PHPStan, part II
Ondřej Mirtes
Getting the Most Out of PHPStan, part II
Ondřej Mirtes
ROOM G
PHP is nothing like compiled languages. If you make a mistake, the program will crash when the line of code with the mistake is executed. When testing a PHP application, whether manually or automatically, developers spend a lot of their time discovering mistakes that wouldn’t even compile in other languages, leaving less time for testing actual business logic.
PHPStan is a popular static analyser focused on finding bugs in your code. By leveraging the strength of PHP type system further enhanced in PHPStan itself, developers can create robust applications and discover bugs early in the development process. The aid the tool provides during refactoring is also indispensable.
In this workshop, the attendees will learn how to install, configure and run PHPStan, and also receive tips how to write code so that PHPStan can be as powerful as possible. They will also be able to write their own PHPStan rules and extensions.
Just bring your laptop with PHP 7.1+ and Composer installed.
EventStorming Big Picture - Jak tego używać z głową
Paweł Rekowski
EventStorming Big Picture - Jak tego używać z głową
Paweł Rekowski
SALA J
EventStorming staje się coraz popularniejszą metodą planowania prac w IT oraz rozwiązywania problemów. Dlaczego? Bo to działa! W swojej karierze miałem przyjemność moderować już kilkanaście sesji Big Picture - czyli pierwszego etapu EventStormingu, którego uczyłem się od samego mistrza - Alberto Brandoliniego, twórcy tej metody.
W trakcie tego warsztatu, podziele się z Tobą swoim doświadczeniem z wykorzystania ponad 100 metrów papieru i kilku tysięcy kolorowych karteczek. Nauczysz się jak stosując proste techniki, możesz w ciągu jednego dnia sprawić, że wszyscy w Twojej firmie będą rozumieć co tak na prawdę dzieje się w projekcie (co nie jest takie oczywiste :P) Poznasz techniki oraz tricki, których darmo szukać w jeszcze niedokończonej książce "Introducing EventStorming" oraz poczujesz na własnej skórze czym EventStorming jest i dlaczego jest tak bardzo skuteczny!
Na warsztacie nie będzie ci potrzebny laptop ani telefon. Zapraszam serdecznie :)
This talk will address several points in our codes that we can improve it to make it more stringent, avoiding false positives, points that have not been tested and have actually written code that complies with our business rules, avoiding unnecessary bugs. We will work with PHP 7 types, the identical operator, weak comparison functions and counters, and more.
Feature Toggle - Zarządzanie zmianami w Continuous delivery
Karol Kreft
Feature Toggle - Zarządzanie zmianami w Continuous delivery
Karol Kreft
Wdrożenie continuous delivery w zwinnych projektach nasuwa pytanie - czy wraz z szybkim dostarczaniem nowych funkcji systemu mamy możliwość ich prostego wyłaczenia gdyby zaszła taka potrzeba? A może chcemy wdrożyć eksperymentalny Proof of Concept by przekonać się, że będzie miał spodziewaną wartość dla klientów/użytkowników naszej aplikacji/serwisu? Implementacja Feature Toggle pozwala te i inne, również bardziej skomplikowane scenariusze, realizować szybko i możliwie bezboleśnie. Podczas prezentacji przedstawię na czym polega ta technika, zaprezentuje korzyści, które z niej wynikają oraz pokażę szerszy kontekst w którym najczęściej znajduje zastosowanie.
09:30
09:45
10:00
EventStorming jako wstęp do walki z Legacy Codem
Paweł Rekowski
EventStorming jako wstęp do walki z Legacy Codem
Paweł Rekowski
Wyobraź sobie aplikacje mającą kilka milionów linii kodu, rozwijaną przez ostatnie 7 lat gdzie wszystko jest pomieszane, poplątane i nikt tak naprawdę nie wie co się dzieje. Rozwijanie jej graniczy z cudem, a biznes musi coraz dłużej czekać na naprawy bugów i nowe ficzery.
Zanim zaczniesz wielki refactoring najpierw musisz zrozumieć co ten potwór w ogóle robi. Idealnie do tego nadaje się EventStorming - metoda stworzona przez Alberta Brandoliniego, u którego miałem przyjemność uczyć się w ramach EventStorming Master Class w Mediolanie.
Z tej prezentacji dowiesz się:
Jak skutecznie przeprowadzić EventStorming dla projektu Legacy?
Jak sensownie podzielić potwora na konteksty?
Jak podzielić odpowiedzialność między zespołami?
Co jest najważniejsze podczas sesji "Big Picture"?
Czego możesz się nauczyć z warsztatów, które "nie wyszły" i co to tak naprawdę znaczy?
Jakie trudności pojawią się w prowadzeniu warsztatu w środowisku międzynarodowym (Polska vs Rumunia)?
Dowiesz się czego nie znajdziesz w książce Alberto i czego nauczyłem się podczas wizyty w Mediolanie
i wiele więcej.
Wszystko na bazie moich doświadczeń w eMAG, ponad 100 metrów papieru i kilku tysięcy przyklejonych post-itów.
How your PHP application can get hacked, and how to prevent that from happening?
Antti Rössi
How your PHP application can get hacked, and how to prevent that from happening?
Antti Rössi
You’ve probably heard about the likes of XSS, CSRF, SQL Injection, RCE, Man-in-the-middle attack, and LFI. Very few of the developers out there have actually witnessed first-hand what exploiting any of the mentioned vulnerabilities looks like, and therefor don’t necessarily realise what the possible implications of being hacked can be. In this talk we’ll exploit some commonly known vulnerabilities and misconfigurations that can occur to a PHP (Laravel) application running on a Linux-based host. By learning to think like a hacker you’ll be able to develop more secure applications with Laravel, and to keep yourself, your clients, and your users data safe.
10:15
10:30
10:45
11:00
☕ przerwa kawowa
11:15
11:30
Event Sourcing na przykładzie PROOPH
Arkadiusz Prościak
Event Sourcing na przykładzie PROOPH
Arkadiusz Prościak
CQRS i Event Sourcing zdobywają coraz większą rzeszę zwolenników. Podczas prezentacji „pogrzebiemy” ORM-y, po to by zachwalić idee przechowywania danych jako serii zdarzeń a widoków danych jako projekcji. Następnie przyjrzymy się ciemnym stronom tego rozwiązania. To wszystko tylko po to, aby ostatecznie samemu ocenić na przykładach kodu, czy taka architektura i framework pomoże rozwiązać któryś z naszych codziennych problemów.
Reaktywny PHP
Arkadiusz Kondas
Reaktywny PHP
Arkadiusz Kondas
Programowanie sterowane zdarzeniami (event-driven) jest znane i używane w aplikacjach klient/serwer oraz bibliotekach asynchronicznych. ReactPHP (zbliżony do node.js lub Python Twisted), przenosi PHP na nowy poziom prędkości ze wszystkimi niezbędnym do tego funkcjami. Podczas prezentacji wprowadzę pojęcie event loop, non-blocking IO i programowania asynchronicznego w PHP, a także przedstawię sposoby gdzie ta technika może przydać się w twoim stosie technologicznym.
Czego nauczysz się z tej prezentacji:
zrozumiesz różnice pomiędzy blocking a non-blocking IO
poznasz bibliotekę ReactPHP i jej podstawowe komponenty
zobaczysz przykładowe zastosowania asynchronicznego programowania w PHP
poznasz alternatywy dla biblioteki ReactPHP
11:45
12:00
12:15
12:30
What can PHP Foreign Function Interface do for you?
Bohuslav Šimek
What can PHP Foreign Function Interface do for you?
Bohuslav Šimek
Next PHP version (7.4) will bring a lot of new exciting features. One of them is PHP Foreign Function Interface extension built directly into the core. But what problems exactly this extension is trying to solve? Does this mean that we no more need to write PHP extension if we want to use an existing library? In this talk, we will together discover the way how to easily call almost any C library directly from PHP. Why we want to do this. How to overcome common pitfalls and most importantly when to use approach and when not.
What you'll learn from this talk:
how to call C code from PHP without the necessity of writing an extension in any compiled language?
how to quickly prototype simple PHP wrapper around C library?
how to overcome common pitfalls?
when to use this approach and when not?
6 Things I Learned as a Lead Developer
Gabor Nadai
6 Things I Learned as a Lead Developer
Gabor Nadai
Being a Lead Developer is a fun, interesting and responsible adventure. Becoming one is not something that happens from one day to the next. It is something that you grow into by raising your voice, taking action and responsibility. I've learned many things working as a Lead Developer, but I'd like to share 6 things, which were the most important for me.
12:45
13:00
13:15
🍴 obiad
Your team vs kebab place vs F1 pitstop. Theory of constraints - primary DevOps element - explained!
Konrad Otrębski
Your team vs kebab place vs F1 pitstop. Theory of constraints - primary DevOps element - explained!
Konrad Otrębski
We will have a look at and analyze workflows that are present in classic kebab place and Formula 1 pitstop. We will compare them with development team in a typical software company.
Presentation will explain basic concepts of the Theory of constraints and will show you how you can magnify flow of work at your team to get things done!
13:30
13:45
14:00
🍴 obiad
14:15
Dwanaście zasad budowania systemów o wysokiej dostępności
Kamil Porembiński
Dwanaście zasad budowania systemów o wysokiej dostępności
Kamil Porembiński
Prezentacja opowiada o 12 kluczowych zasadach budowania systemów oraz aplikacji wysokodostępnych (High availability). W swojej prelekcji poruszę takie tematy jak monitorowanie infrastruktury, skalowanie oraz zasada skalowania (pionowe/poziome), wykorzystanie technologii, backup, restore, testowanie oraz wybór rozwiązań. Poruszone również zostaną tematy związane z redundancją oraz disaster recovery
14:30
14:45
15:00
2nd hardest thing in computer science
Paweł Lewtak
2nd hardest thing in computer science
Paweł Lewtak
Have you heard about the two hardest things in computer science? It's cache invalidation and naming things. I want to focus on the second one.
Let's see common examples of both good and bad naming. What's the common part of each of them? What's makes names good? Can we settle on good enough or should we aim for perfect names? I'll show some of good and bad practices so you'll be able to recognize both of them when you make code review for your peers. Naming is one of the two hardest things in CS, so I don't claim to be right about everything but I'm open to discussion and happy to learn from you as well.
git log: 10 najprzydatniejszych komend by dowiedzieć się wszystkiego o projekcie
Grzegorz Byrka
git log: 10 najprzydatniejszych komend by dowiedzieć się wszystkiego o projekcie
Grzegorz Byrka
Z początku git log (i shortlog) stworzono jako źródło informacji o ostatnich commitach i merge'ach. Ale narzędzia te są znacznie potężniejsze niż tylko to.
Zaczniemy od kilku podstawowych zapytań, pobawimy się ich opcjami by zobaczyć, jak można je wykorzystać w codziennej pracy.
Następnie zaprezentuję kilka bardziej złożonych komend, które uważam za najprzydatniejsze.
15:15
15:30
Why choose legacy?
Paweł Lewtak
Why choose legacy?
Paweł Lewtak
Most people would rather work on a greenfield project than a legacy one. On one hand, you have the freedom to choose a new language/framework/library to use and have fun learning that. On the other hand, there's an existing project, maybe old one, that skipped a few updates of libraries, maybe not using latest features your language of choice gives you.
I'll share my experience and show you why I like working with legacy projects, what's interesting in them for me, how I improve as a developer working with them. Hopefully, that'll allow you to enjoy working with legacy a bit more and hate it a bit less next time.
Jak rozpoznać Reptiliana w biurze - poradnik praktyczny
Tomasz Ferfecki
Jak rozpoznać Reptiliana w biurze - poradnik praktyczny
Tomasz Ferfecki
Czy twoja praca nie przynosi ci satysfakcji? Zaczyna Cię dotykać wszechobecny chaos? Może musiałeś zostać dłużej w biurze, przez co nie masz czasu na skorzystanie z benefitów? A może środowe owoce przyszły w czwartek? Jeżeli na przynajmniej jedno z powyższych pytań odpowiedziałeś twierdząco, to może być znak, że w twoim otoczeniu zalęgli się Reptilianie. Odkryj, w jaki sposób możesz pokrzyżować ich złowieszcze plany zniszczenia twojego projektu.
15:45
16:00
Be nice, help the person who hacks your servers to get your data
Srdjan Vranac
Be nice, help the person who hacks your servers to get your data
Srdjan Vranac
Where are your credentials and secrets stored? In .env files or in environment variables, or even worse in config files? Are your primary AWS keys shared amongst developers? Do you still have SSH keys from former employees on your servers?
If your answer is "Yes" to one or more of these questions you probably haven't heard the term "secrets management".
In this talk we will look into managing secrets in development and operations, and expose the problems related to them. I will give you an overview of the current state of techniques to mitigate these problems and we'll take a brief look at how an open source tool like Hashicorp Vault can provide a solution to managing secrets in the years to come.
Adventures in MySQL - 10 Awesome features you're probably not using
Liam Wiltshire
Adventures in MySQL - 10 Awesome features you're probably not using
Liam Wiltshire
If you've been in development for a while and you're anything like me, you probably still use MySQL in the same way as you did in the 3.x days - let's be honest, when was the last time you cracked open the MySQL documentation?
However, things have moved on, and these days there are some pretty awesome features in MySQL, from document store to spatial support and more, that would make your life easier, and your app faster - things that you could - or even should - be using.
Join Liam and discover what this modern MySQL looks like, and how you might use it to improve your applications.
16:15
16:30
16:45
17:00
☕ przerwa kawowa
17:15
17:30
Zwinnie czysta architektura
Michał Cisz
Zwinnie czysta architektura
Michał Cisz
Słyszałeś o świętym Graalu: o encjach, kontekstach, DDD i czystej architekturze. Widziałeś jak idea SOLID-nego kodu przegrywała w starciu z deadline’ami. Czas to zmienić! Na konkretnym przykładzie biznesowym odnajdziemy zwinności, ukryte w koncepcji czystej architektury. Zobaczysz progresywną ewolucję komponentów aplikacji, które dzięki iteracyjnej pracy z kodem zaadaptujesz do timeboxów używanych w metodykach agile. Przekonaj się sam, że framework, baza danych i siec www to szczegóły, a spryt doprowadzi Cię do pokrycia testami na poziomie 100%.
Everyday tools that make my work easier
David Ostrožlík
Everyday tools that make my work easier
David Ostrožlík
Tools we use daily to ease development of e-commerce framework for building big e-commerce projects.
In Shopsys Framework we have been using PHP and Symfony to build big e-commerce projects for several years. We also use many tools and techniques to ensure a high quality of code and features. We will show you tools that we use to build the application, check coding-standards, test our code, run these checks on our continuous integration server etc., and how we use them in our development process from beginning to end. In the end, you will get new ideas about how to make your work more efficient, easier and fun.
17:45
18:00
18:15
18:30
Serverless PHP
Sebastian Grodzicki
Serverless PHP
Sebastian Grodzicki
#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.
"We need a bigger boat" - Introduction to application scaling
Liam Wiltshire
"We need a bigger boat" - Introduction to application scaling
Liam Wiltshire
At one time or another, every developer comes across the same problem - their application starts getting slower, then starts falling over, then isn't available at all.
Often, this comes down to too many users, too much stored data - in other words a scaling problem.
Looking at a range of options, from horizontal and vertical scaling, to caching, sharding and optimisation, Liam will discuss approaches to scaling that can be used on new applications, and also some that can be retro-fitted to existing applications.
18:45
19:00
19:15
19:30
Kolacja i Integracja 🍺 🍺 🍺
(równolegle gra JeoPHPardy)
19:45
20:00
20:15
20:30
20:45
niedziela
17 listopada 2019 r.
ścieżka Zielona
ścieżka Niebieska
10:00
Making architecture explicit
Herberto Graça
Making architecture explicit
Herberto Graça
The Big Ball of Mud is the most serious problem I see in the majority of the code bases I look at.
But why do we keep falling into that trap? What are the root problems behind it? How can we avoid, escape, and stay out of it?
In this talk, you will learn about the architecture mental map I use to answer these questions. We will briefly revisit a few established software development and architecture ideas and see how you can put them in your service, exemplifying with some bits of code and tooling, to help keep the mud out of your application.
The main topics of the talk are:
The Big Ball of Mud problem
Overview of DDD, Hexagonal, Onion, Screaming, Clean, CQRS
How to organise the code base to reflect architecture boundaries
How to enforce the architecture boundaries
Antybohaterowie projektów IT
Przemysław Krzywania
Antybohaterowie projektów IT
Przemysław Krzywania
Ludzi z IT przedstawiamy jako bohaterów ratujących świat, ale czy na pewno ma to sens?
10:15
10:30
10:45
11:00
☕ przerwa kawowa
11:15
11:30
Zastosowanie GraphQL w agregacji i dostarczaniu danych w architekturze mikroserwisów.
Ǩonraȡ Ǩarɑuđɑ
Zastosowanie GraphQL w agregacji i dostarczaniu danych w architekturze mikroserwisów.
Ǩonraȡ Ǩarɑuđɑ
Konrad opowie o zastosowaniu technologii GraphQL w oparciu o Node.JS, w celu agregacji, cacheowania, oraz dostarczania danych do frontendu w architekturze mikro serwisów. Zalety, wady, możliwości skalowania, oraz poprawa bezpieczeństwa architektury dzięki zamaskowaniu mikroserwisów odpowiedzialnych za poszczególne działania.
Package Everything
Bruno Ramalho
Package Everything
Bruno Ramalho
Building PHP packages and best practices. Focus on the basic concept of composer and related best practices by using a real example of a big project without composer that was refactored to be modular. How to take advantage of open source packages.
11:45
12:00
12:15
Becoming a tech lead - Lesson learned
Jayesh Kawli
Becoming a tech lead - Lesson learned
Jayesh Kawli
It's always more challenging to work as a leader compared to working as an individual contributor. Through this talk, I am going to share my experiences going through this transition which will be useful for other people moving along the same path.
I will share some facts about shifting mindsets, working towards making team better and increasing efficiency. As a leader, one also has to become a mentor to coach their junior team members while balancing pace and the learning opportunity.
We will also touch upon topics such as learning from mistakes, using past sprints as a guideline and using custom-made benchmarks to gauge the effectiveness of overall work. This will also help to understand how to deal with project blockers, maintaining effective communication and better tickets estimates.
Attendees of this session will take away the following:
shifting the mindset as one goes from being an individual contributor to become a tech lead,
balancing productivity and pace with equal opportunity for learning,
how to act as a mentor to make the team better,
learning from past sprints to make effective future sprints,
handling communication, being proactive and avoiding blockers.
12:30
12:45
13:00
DDD, CQRS, ES, Hexagonal... i Symfony
Tomasz Kowalczyk
DDD, CQRS, ES, Hexagonal... i Symfony
Tomasz Kowalczyk
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.
Distributed Domain Destruction - Adventures in building distributed systems
Srdjan Vranac
Distributed Domain Destruction - Adventures in building distributed systems
Srdjan Vranac
The project has grown enough that it requires refactoring, and extracting pieces of it to be distributed to different machines and places. Of course it should work like a well oiled mechanism, but it may not... at first.
For the last three years I have been building, maintaining and fighting a few projects that make use of distributed computing, parallel processing, message brokers, queues and workers. This is one of those "from the trenches" talks, where I will regale you with tales about the series of unfortunate events that may happen as your application grows in complexity. Tales like disk space fluctuations, importance of logging, NoSql problems, restructuring your order of execution in code for performance gains, short sighted albeit logical architectural decisions that will cost you in the long run.
Come hear about the agony you will experience when it starts falling apart, and the thrill you will feel when everything is running juuust right.
In the past 3 years, I've been working with PHP, professionally only in the past 1 and a half. Since I discovery Open Source, my life has been all about contributing to it to make better and better each day, improving my career and my person.
My goal is to prove that anyone can code, and everyone should code.
Łukasz Chruściel
Sylius
Łukasz Chruściel
Sylius
Łukasz jest zaangażowany w rozwój Syliusa od czterech lat, obecnie jest członkiem Core Team’u. W roli trenera, występował na licznych konferencjach i prowadził warsztaty tak w Polsce jak i za granicą. Lubi pracować z systemami komunikującymi się przez API. Pragmatyczny programista, uwielbiający czysty, jakościowy kod i testy automatyczne. Prywatnie podróżnik, fan gier planszowych i gracz lacrosse’a.
Michał Cisz
Michał Cisz
Jestem wyznawcą minimalizmu i maniakiem wszelkich idei, które mogą usprawnić komunikację i wymianę wiedzy w zespole. Zawodowo od 15 lat wystukuję kod PHP, dbając o przestrzeganie zasad SOLID i organizując komponenty zgodnie z zasadami czystej do bólu architektury.
Co-organiser of PHPers meetups. In private husband and big rally fan!
Tomasz Ferfecki
Unity Group
Tomasz Ferfecki
Unity Group
Programista z zawodu i powołania (Ach… Jednorożec) posiadający 6-letnie doświadczenie w branży. Przez ostatnie 3 lata zajmował się rozwojem rozwiązań e-commerce. W swojej pracy ceni automatyzację monotonnych i powtarzających się procesów. Swoją pasję do automatyzacji przenosi na mini projekty bo na duże jeszcze nikt mu nie pozwolił, ale nie martwcie się… Rewolucja się szykuje. W godzinach po godzinach, ale w pracy, cotygodniowo zbiera ludzi wokół firmowego ogniska, moszczą się wygodnie i wspólnie dzielą się swoją wiedzą.
Herberto Graça
Werkspot
Herberto Graça
Werkspot
Herberto Graça is a senior software developer at Werkspot, in Amsterdam.
The first time he coded was in the late 1980s, on his cousin's ZX Spectrum computer.
He graduated from University with a Bachelor in IT, plus a Specialisation in Teaching and a Masters in School Leadership and Management.
He had a half year experience as a JAVA developer, and worked as an IT teacher for eight years, while he also did some occasional freelance work before he decided to become a full-time software developer.
When he is not coding for work or in a pet project, he spends his time reading a book, riding his motorbike or writing about software development and software architecture on his blog.
With over 15 years of experience in information technology, Sebastian Grodzicki leads the Logs & Infrastructure UI team at Elastic. He spent three years as CTO at SHOWROOM ("Europe's leading destination to discover the new generation of fashion designers") and a complete career path at GoldenLine (Poland's biggest business and employment-oriented social network service).
Ǩonraȡ Ǩarɑuđɑ
Jayesh Kawli
Wayfair
Jayesh Kawli
Wayfair
Senior iOS developer currently working at Wayfair in Boston, Massachusetts. He has been writing iOS applications for more than 5 years and currently works as a tech lead for the checkout team on Wayfair iOS application.
As a senior developer, he likes to share his knowledge and experience with other people. He has presented variety of topics at his company's internal Lunch and learn meetings, local meetups as well as several other international platforms. He also writes a blog which touches active topics in iOS development along with occasional off-topics such as food, travel, and web development.
Arkadiusz Kondas
Buddy
Arkadiusz Kondas
Buddy
Zawodowy programista. Entuzjasta uczenia maszynowego. Wierzy w ideę Software Craftsmanship. Miłośnik open source. Zawodowo zajmuje się programowaniem od 2008 roku. Pracę rozpoczął od roli Full Stack Developera. W międzyczasie pracował w różnych technologiach, między innymi: PHP, Ruby, Python, Java, C#, DevOps, Machine Learning. Prowadził i tworzył zespoły rozwijające zaawansowane systemy informacyjne. Tworzył, planował i rozwijał wysoko i nisko poziomową architekturę. Zmieniał i rozwijał przedsiębiorstwa za pomocą Event Stormingu. Obecnie pracuje dla Buddy, tworząc najlepsze narzędzia wspomagające codzienną pracę deweloperów (serwer CI/CD). W wolnych chwilach rozwija swoje projekty na githubie, bloguje i biega ultramaratony.
Tomasz Kowalczyk
Gentleman
Karol Kreft
intive
Karol Kreft
intive
Programista o humanistycznych zainteresowaniach, fan NBA, wielbiciel dobrej architektury (nie tylko tej w kodzie) oraz wycieczek po górach. Od 2010 zawodowo związany z tworzeniem aplikacji webowych w języku PHP. Pracuje we wrocławskim oddziale Intive.
Przemysław Krzywania
EBKF
Przemysław Krzywania
EBKF
W branży IT od 2008 roku. Zaczynał od programowania w C++ urządzeń mobilnych z Windows CE, następnie Adobe Flex i C#. Ostatecznie pracuje nad Full-Stack, wykorzystując głównie PHP. Od roku 2015 prowadzi w EBKF projekty związane z IIOT, Przemysłem 4.0 i Fintech. Jest fanem zwinnego podejścia do wytwarzania oprogramowania.
Paweł Lewtak
Paweł Lewtak
Programista z 10-letnim doświadczeniem. Pracował nad projektami od zera, począwszy od analizy i specyfikację aż po wdrożenia i dalszy rozwój. Wielki fan idei continuous learning, organizator warsztatów coding dojo. W wolnej chwili pochłania książki nie tylko branżowe, ale również gra w planszówki i gry video.
Ondřej Mirtes
PHPStan
Ondřej Mirtes
PHPStan
Ondřej works as a developer and mentor at Slevomat.cz (largest Czech Groupon-like e-commerce site offering deals to >300k daily visitors), moving between product and software development. He enjoys the quality assurance and frequent deployment of innovations for the end-users. He shares his experience at conferences across the world, offers his expertise as a consultant, and organizes training. He also likes pointing out mistakes in other people's code so much that he created PHPStan, a popular static analyzer that focuses on finding bugs in code without running it.
Gabor Nadai
ingatlan.com
Gabor Nadai
ingatlan.com
Gábor Nádai, but you can call him Mefi. Engineering Manager, currently working with a talented group of engineers and managers as Head of Engineering at ingatlan.com, Hungary's market leading real estate listing portal. His mission is building awesome community and teams to create great software which truly helps people.
David Ostrožlík
Shopsys
David Ostrožlík
Shopsys
David started working in IT when he was 16 years old and since then he went through tester and coder positions to programming. He has been programming in PHP for the last three years and after joining Shopsys two years ago, his passion has extended to Symfony, JavaScript, and ElasticSearch as well. With the knowledge of these technologies, he helped to build several e-commerce solutions and a year ago he started to develop Shopsys Framework. When he doesn't program, he likes to read, go on trips, play computer games and take care of his mustache.
Konrad Otrębski
Tagvenue Poland
Konrad Otrębski
Tagvenue Poland
Developer, architect, staying tuned with the industry. TDD, DDD practitioner and advocate. Pushing to master every day.
Antonio Perić-Mažar
Locastic
Antonio Perić-Mažar
Locastic
Antonio Perić-Mažar is CEO at Locastic digital agency, based in beautiful Croatian city called Split. Their main focus is to build complex mobile and web platforms for different clients that range from startups to enterprise companies from all over the globe.
He is a proud backend developer that moved into a managerial role after founding Locastic in 2011, since, in a very short period of time the team has grown and they became very popular in the development world.
He is quite a proactive guy - as he is one of the founders of the largest regional Blockchain Conference, he is hosting a free monthly Meetup event in Split, also recently he fell in love with Esports as he owns the best Croatian Counter-Strike team.
During the last few years Antonio also focused on sharing his business and development knowledge with Startups and other Entrepreneurs and he spoke on many conferences.
Adrian Piętka
Emphie Solutions
Adrian Piętka
Emphie Solutions
Fascynat programowania, architektury, chmury, metodyk zwinnych i dobrych praktyk w szerokim ujęciu. Polyglot Programmer kochający poznawać nowe języki i jednocześnie wykorzystywać ich najlepsze strony.
Założyciel DevEnv i współautor podcastu Dev:Cast.
Po godzinach, czyli kiedy nie pracuje ani nie robi czegoś dla DevEnv, podróżuje w miejsca zapomniane i pasjonuje się lokalną historią. Jest jednym z opiekunów schronu bojowego WAWOK w Rybniku.
Kamil Porembiński
thecamels.org
Kamil Porembiński
thecamels.org
Architekt systemowy, administrator Linux, a czasem Windows. Lubi tematykę security. Obecnie właściciel firmy thecamels.org, zajmującej się projektowaniem systemów o wysokiej dostępności. Zajmuje się skalowaniem dużych aplikacji internetowych, wspieraniem startupów w kwestiach serwerowych. Po godzinach zajmuje się żeglowaniem po morzach, lataniem, fotografią i podróżami.
Arkadiusz Prościak
coffeedesk.pl
Arkadiusz Prościak
coffeedesk.pl
Development Lead w Coffeedesk. Programuje komercyjnie od ponad 10 lat. Fan dobrych praktyk, testów automatycznych i Symfony. Skoncentrowany na celu, stara się zawsze znaleźć kompromis pomiędzy nowymi technologiami a dostarczaniem wartości biznesowej. Prywatnie triathlonista – w drodze do ironman-a.
Bruno Ramalho
Divante
Bruno Ramalho
Divante
Senior software engineer and lead developer with expertise in PHP, open source lover and DDD advocate. I’ve been involved building enterprise application for big ecommerce marketplaces.
Paweł Rekowski
eMAG
Paweł Rekowski
eMAG
Człowiek wielu pasji i zawodów - Przedsiębiorca, Programista, Lider, Mówca, Trener, Podcaster, a dodatkowo Tata dwóch rozrabiaków poszukujący skutecznych sposobów jak Czuć się, Wygąldać i Żyć #Lepiej. Od ponad 12 lat w branży IT - od początku związany z PHP. Pracował dla takich marek jak Oferia, Allegro czy BlaBlaCar. Obecnie Team Leader w eMAG.pl, gdzie wdraża Test Driven Development w biurach w Polsce i w Rumunii. Miłośnik ostrych brzmień, skutecznej komunikacji oraz uświadamiania programistów ile kosztuje ich praca.
Antti Rössi
Jobilla
Antti Rössi
Jobilla
Antti Rössi is the CTO at Jobila and white hat hacker who loves sharing his expertise on how our PHP applications can be hacked and what to do to prevent that.
He's been a professional web developer and an IT business owner for over 6-years currently.
Bohuslav Šimek
IntraWorlds s.r.o.
Bohuslav Šimek
IntraWorlds s.r.o.
Bohuslav Šimek work as a lead programmer in IntraWorlds, where he is primarily responsible for the underlying architecture. In his free time, he is trying to apply Atwood's Law to PHP. This fruitless effort can be summarized with the following words: "Any application that can be written in PHP, will eventually be written in PHP."
Srdjan Vranac
Code4Hire Kft.
Srdjan Vranac
Code4Hire Kft.
Vranac has been in this industry for a long time. He had good fortune to work with a lot of talented people, and had a chance to see some brilliant code, and some of the worst ever written.
He gets paid for writing code that performs exceptionally. He runs Code4Hire, a small outfit dedicated to solving tough problems.
Liam Wiltshire
Tebex Ltd
Liam Wiltshire
Tebex Ltd
Liam is a UK based developer and the CTO at [Tebex](https://www.tebex.io), a gCommerce company and game server monetization platform. From humble beginnings breaking things in Perl, Liam has tackled projects large and small, from brochure sites in WordPress to eCommerce sites in Magento and SaaS products in Laravel. Outside of CTO-ing, Liam is a father, musician, and is trying to learn the secret to actually having some spare time.
To hotel, który gościł nas w latach 2013-2014. Pamiętacie? Z pięknym widokiem na Skrzyczne,
przyjemnymi salami konferencyjnymi i przemiłą obsługą.
Orle Gniazdo to najwyżej położony (660 m n.p.m.) i największy wielofunkcyjny obiekt w Szczyrku.
Składa się z 6 kondygnacji i mierzy ponad 270 metrów długości. Dysponuje łącznie 270 pokojami
z widokiem na Skrzyczne i dolinę Żylicy, łazienkami i TV. Nocleg może w nim znaleźć
jednocześnie nawet 550 osób.
Orle Gniazdo to ogromny a przy tym niedrogi hotel, słynący z organizacji dużych, cyklicznych
wydarzeń. To tu rozgrywane są Mistrzostwa Polski w szachach, tu grane są prywatne koncerty oraz
organizowane międzynarodowe konferencje i zloty. Tu również zlokalizowana jest meta trzeciego
etapu wyścigu kolarskiego Tour de Pologne.
Dojedź w dowolny sposób do Katowic i przesiądź się na pociąg Kolei
Śląskich do Bielska-Białej (rozkład jazdy
➡ tutaj). Następnie przejdź kładką
na dworzec autobusowy i wsiądź do autobusu jadącego do przystanku Szczyrk Centrum (rozkład
jazdy ➡ tutaj). Można się tu
dostać każdym autobusem w kierunku Szczyrku (Centrum, Biały Krzyż, Biła i Salmopol). Przejdź
przez główną drogę na ulicę Słoneczną, następnie w prawo w Klimczoka/Wczasową, która
serpentynami pnie się ostro pod górę. Hotel Orle Gniazdo znajduje się na końcu tej drogi,
2 km od przystanku autobusowego.
Samochodem
Dojedź do Bielska-Białej, następnie drogą ekspresową S-1 w kierunku
Żywca, Zwardonia i Żyliny. Opuść drogę ekspresową na węźle Wilkowice (zjazd oznaczony:
Wilkowice - Bystra - Szczyrk). Na pierwszym rondzie pierwszy zjazd (w prawo, Bystra - Szczyrk),
na następnym drugi zjazd (prosto), aż do pierwszego skrzyżowania z sygnalizacją świetlną
w Bystrej. Tam w lewo i za główną drogą do ronda w Buczkowicach, na którym wybierz pierwszy
zjazd (w prawo, DW-942, Szczyrk). Po dotarciu do Szczyrku szukaj reklam Orlego Gniazda -
będą po odbydwu stronach drogi. Skręć we Wczasową (w prawo - uwaga, łatwo przeoczyć!)
około 1900 m od tablicy wjazdowej z napisem „Szczyrk”. Następnie znów w prawo i serpentynami
stromo pod górę, około 2 km.
Samolotem
Na docelowy port lotniczy wybierz Katowice-Pyrzowice (KTW) albo
alternatywnie Kraków-Balice (KRK). Z obydwu lokalizacji kursują autobusy do Katowic, przy
czym z Pyrzowic te połączenia są bezpośrednie i częstsze. Wybierz taki transport, którym
dostaniesz się do głównego dworca kolejowego w tym mieście. Dalej kontynuuj
jak w opisie „Transportem publicznym”.
Bilety
We wtorek o północy zakończyliśmy sprzedaż biletów.
Do zobaczenia na miejscu!
Sponsorzy
Zostań Sponsorem
Zostań sponsorem konferencji PHPCon Poland 2019 – to rzadka okazja, by pokazać swoją
markę ogólnopolskiej społeczności środowiska PHP i być dobrze kojarzonym!
Pomysłodawca, twórca i lider ekipy PHPCon Poland. Event manager z dziesięcioletnim doświadczeniem. Brał udział w organizacji Jesieni Linuksowej, PyCon PL i dBConf, a oprócz PHPConu organizuje obecnie także php Central Europe conference. Były prezes Polskiej Grupy Użytkowników Linuxa PLUG. Zawodowo, od kilkunastu lat devops w polskiej administracji celnej. Szczęśliwy mąż i ojciec innych organizatorów PHPCon Poland. Niereformowalny rowerowy włóczęga z zacięciem survivalowym.
Joanna Grzesista
Conferia
Formalna CFO konferencji, odpowiedzialna również za sponsor relations. Na miejscu organizuje biuro konferencji oraz dystrybucję pakietów startowych. Prywatnie żona i matka innych organizatorów PHPCon Poland ;)
Mariusz Kuta
webMASTAH.pl
Ninja frontendu, miłośnik baz danych, huligan php. Łebski master strony PHPCon Poland. Na miejscu technik sal konferencyjnych i operator sprzętu. Uzależniony od muzyki elektronicznej, kryminałów i pestek słonecznika.
Piotr Krzysztofik
piotrex41.pl
Programista PHP, webmaster, webdesigner i webdeveloper. Na PHPConie pełni rolę technika sal konferencyjnych oraz operatora sprzętu.
Przemysław Pawliczuk
przemyslaw.pawliczuk.pl
Specjalista od żałosnych i niemożliwych problemów. Jego pierwsze słowa to: "Paamayim nekudotayim". Programowania nauczył się podczas rendez vous z Symfony, po 10 latach z PHP. Uzależniony od soku pomarańczowego, na PHPConie, podczas którego rozpoczął swoją przygodę jako prelegent, od lat opiekuje się technikaliami. Po godzinach - mąż, szef Pionier Rzeszów Toastmasters, majsterkowicz, fan akordeonu uwielbiający dobrą muzykę vocal-trance.
Tomasz Kowalczyk
GOG
Software architect z ponad 10-letnim stażem w tworzeniu aplikacji webowych. Entuzjasta programowania funkcyjnego ukierunkowany na jakość i utrzymywalność oprogramowania. Autor kilku bibliotek open source. Dostarcza dobrze zaprojektowane i otwarte rozwiązania problemów technicznych.
Sebastian Molenda
Currency One
Programista PHP na odwyku aktualnie zajmujący się Node.JS-em i eksperymentujący z FP. Prywatnie majsterkowicz i fan cięższego grania. Po wielu wspólnych latach w roli gościa czas się jakoś odwdzięczyć społeczności.
Mateusz Grzesista
Conferia
Uczeń jednego ze śląskich techników. Młodszy organizator PHPCon Poland odpowiedzialny za przygotowanie techniczne sal, realizację, montaż i publikację materiałów AV po konferencji.
Newsletter
Bądźmy w kontakcie! Zapisz się do newslettera, by być na bieżąco ze
wszystkimi informacjami o PHPCon Poland.