PHP Russia is the only Russian confenrence focused on PHP. Main topics are PHP ecosytem (PHP itself, standards, frameworks, libraries and OpenSource) and major players experience in building complex projects using best practices and modern approaches.
10:45 |
Opening the Conference
in Online track
(15 minutes)
Conference opening |
11:00 |
Time is an illusion (lunchtime doubly so)
Talk by Andreas Heigl in Online track (45 minutes) Have you ever read a "Good morning" in an international IRC-Channel shortly before you leave the office for lunch? In international business time is an illusion as everywhere is a different time. In this talk we'll dive into he depths of Timezones and how to handle them. We'll see why timezones are important and why and how they started to exist. And of course we'll examine how to handle those little buggers efficiently in code and database. |
11:55 |
Cycle, ORM and graphs
Talk by Anton Titov in Online track (45 minutes) - Why do we need an ORM? - ActiveRecord vs DataMapper. - Persist, topological dependencies sorting. - Implementing persistence layer with iterative depth sorting. - Cycle ORM overview. |
12:50 |
Getting the most out of the PHP 7 engine - the example of Symfony
Talk by Nikolas Grekas in Online track (45 minutes) PHP 7.0 is already history. But do you know how to take full advantage of it? If the engine is faster on all operations in general, some of them are particularly optimized. With PHP 5, you may have taken some habits that are no longer topical to write faster code? I propose to review with you the various optimization techniques implemented in Symfony, which make the v4 the fastest ever published. This will be an opportunity to twist the puzzle around a few preconceived ideas, and give you a few more for the day when you'll try to squeeze the last few milliseconds out of this intensive loop. Benchmark in support of course. |
13:45 |
PHP performance panel discussion intiated by Badoo
in Online track
(45 minutes)
Is PHP suitable for big traffic projects? Are PHP frameworks and ORMs? How to develop a performant framework or project? What tools to use? Is there an alternative to PHP's typical handle-and-die model? We'll try to answer these questions and more in the discussion. |
14:30 |
Lunch time
in Online track
(30 minutes)
Lunch time |
15:00 |
More Than a Query Language: SQL in the 21st Century
Talk by Markus Winand in Online track (45 minutes) "Great News –The Relational Model is Dead" was a prominent comment on the release of the new SQL standard in 1999. The message behind the provoking statement was that SQL has evolved beyond the relational model. As much as this move was discussed at that time, it took decades until database vendors caught up with this idiomatic change. Many developers haven't heard of it until today. This talk provides the big picture on the evolution of SQL and introduces some selected modern SQL features by example. You will see that SQL has changed as much as our requirements have changed over the past decades. |
15:55 |
Discussion with ManyChat
Social Event by Andrey Derbenev, Alexander Makarov in Online track (15 minutes) Andrey Derbenev (backend developer of ManyChat) and Alexander Makarov (Yii). The practice of functional community and sharing knowledge within the company, how to make highload project with Redis and PHP, about a monitoring system, and about specificity of working in a product company. |
16:20 |
Queues, busses and the messenger component
Talk by Tobias Nyholm in Online track (45 minutes) Message queues are the perfect way to decentralize your application. You may use them for communication, scheduling and decentralization of your application. With help from a message queue you may decouple your application from the framework and the infrastructure. Which means that your app is written in pure PHP and not Symfony/Laravel/Yii etc. With some smart configuration on your message bus you may put the message queue outside of your application and you may leverage from a decentralized and asynchronous system. This talk will quickly go throw the basics of queues, hexagonal design and show proof of concept with Symfony's Messenger component. |
17:15 |
What is the point of speaking at conferences and how to choose a topic for the next PHP Russia
Event Related by Igor Somov in Online track (15 minutes) Igor Somov talking about future of PHP Russia. |
17:40 |
Practical Security in Web Applications
Talk by Chris Holland in Online track (45 minutes) Explore effective methods to identify & avoid the most common and devastating security pitfalls in Web Applications. When it comes to an enterprise's exposure to security vulnerabilities, one could easily argue that its web presence is by far its greatest threat. There are many ways to build vulnerable applications and a few effective ways to "build them right". We'll instrument you to stay on right side of this equation. |
18:35 |
Effortless Software Development
Talk by Anna Filina in Online track (45 minutes) Software development can be an eternal struggle, or it can be code that pretty much writes itself. In this talk, we'll look at how simple acceptance tests and a few diagrams help us dive right into the code, which we in turn outline using DDD, This allows us to have a clean and testable design without worrying about implementation details. Code can be then implemented without developers worrying about stepping on each others' toes, while still be confident that everything will work once put together. Discover how my team can build features faster than the client can sign them off. |
19:20 |
Afterparty
in Online track
(40 minutes)
Discussions and afterparty |