📜 ⬆️ ⬇️

Impressions from the best reports at the International PHP Conference

In early June, one of the most advanced PHP conferences, the International PHP Conference 2016, was held in Berlin. Specialists such as Sebastian Bergman, Arne Blankerts, Stefan Pribsch and more than 50 people who contribute to PHP development. The conference was held in the luxury 4-star hotel Maritim Proarte. The reports were read in several parallel streams in English and German and touched upon both PHP development and near-topic topics: infrastructure, server software, open source development and much more. Separately, I would like to note the key reports that ignited the sparkling humor, the depth of the topics covered. In this article, we collected our impressions of the coolest reports, with links to presentations and examples.

PHP 7: what is it? (Sebastian Bergman)


Sebastian traveled to Berlin with adventures - technical problems with the plane, identified right before the departure (well, what not after!). Therefore, his report was postponed to a later date. But the wait was worth it!

The speaker very thoroughly approached the content of his speech. The main goal was not to leave the audience a single gap in understanding the role and place of PHP 7 in the vast world of modern programming languages. To do this, Sebastian walked in great detail on the principles of the work of many languages. Special attention was paid to the history of development and programming paradigms. The speaker showed with examples how the language changed from version to version, what new features it acquired, and how much better it got from it. In summary, PHP 7 is an imperative language that supports procedural as well as object-oriented programming. It has limited functional programming support. There are also extensions for aspect-oriented programming. PHP 7 is dynamic, implicitly, and weakly typed, but it supports explicit typing and strong type checking if desired. Thanks to this report, we were able to understand more deeply the tool we work with every day.

Presentation .
')

Setting up an Enterprise level balancer with free software. (Sebastian Feldman)


Sebastian Feldman is a leading developer in one of the IT companies in Munich. He described how he adjusts load balancers. He stakes on the fact that accessibility is a key factor in online business, and if a website or service is not available to customers, it is always bad for business. From the report, we learned how to configure the balancer to achieve high performance and high availability under load using the free software Nginx and HAProxy. The report contained many examples of configuration, as well as an overview of monitoring tools. Sebastian paid particular attention to setting up the operating system: aggregating network adapters, changing the size of the TCP buffer. The speaker shared information on why the performance of the connection is increased using the SPDY and http2 protocols. His experience in switching to SSL and verifying compliance with security requirements was also very instructive (using https://www.ssllabs.com ). Very interesting was the part about the strategy of switching to another hosting for web servers. After this report, I wanted to take a deeper look into the settings of our servers and implement the ideas and ideas shared by Sebastian Feldman.

Presentation .

Just married: NodeJs and PHP (Arne Blankerts)


When Node.js first opened to the world in 2009, many said that the end of PHP was coming. However, about six years later, both environments live and thrive, occupying their niches! But why not combine the best of both languages ​​- this can be an excellent solution for covering the needs of the next generation of web applications. This report introduced us to a system and software architecture that combines Node.js, PHP and Redis and provides a truly powerful web stack for solving modern problems. With this solution, you can create applications with a permanent websocket-connection, in which the server itself sends information to the client as needed, without creating additional load on the network - because the connection is permanent! I liked the report precisely because this topic is closely related to some current projects, and it was very informative to know the approach of this particular eminent specialist.

Presentation .

Symfony2 best practices from the trenches (Stefan Koopmanshap)


Symfony2 is a great framework and it’s quite easy to create your first application. Symfony has good documentation, but, as with any documentation, it’s hard to describe all the nuances and pitfalls of the documented code.

Many details and good techniques are best known when working on your project. During this report, Stefan sorted out the main points in working with projects on Symfony, which are worth paying attention to, shared with those present the knowledge and experience gained in the trenches of real projects.

Under normal conditions, developers would have to dodge such controversial moments as bullets in the Matrix, decide for themselves how best to act, to try, to seek a solution.

Whether it’s a question about configuration details that you have always forgotten about, or how best to abstract logic in the right places, Stafan has an opinion supported by experience, and he was glad to share it. For example, the use of dependency injection, working with project configuration, putting business logic into services, or standardization issues — the range of issues addressed was quite large.

One of our projects, which is currently under development, is written using this framework. Listening to the report, from time to time they caught themselves thinking that they themselves would either act in the same way, or remade them as Stefan recommended. The report will be interesting to novice developers, as well as to those who have already developed more than one project on symfony, in order to make sure once again that the decisions taken when developing were correct. It is also likely that after the report you will once again look at the project code and understand how it can be improved.

Presentation .

How to manage project utilities in 2016 (Arne Blankerts, Sebastian Hoyer)


Today, dependency management in PHP projects is carried out mainly with Composer.

While this is fully justified for libraries, managing utilities with Composer will install all dependencies on these tools. In addition to slowing down the installation, these dependencies are mixed with the dependencies of the application. And although many tools are available as fully autonomous phar archives, manual installation and updating can hardly be called a convenient process.

If only there was a way to automate it.

It is about phive (phar.io), which was created to solve this problem, and was discussed in the report. Arne and Sebastian told more about this utility and showed it in action. The project is still in the alpha version stage and quite a few utilities are available for installation. At the moment it is phpab, phpcpd, phpdox, phploc, phpunit, phpbu. It is also possible to download utilities by reference or from Github (indicating the user and the name of the project). It is seen. that the application has not yet reached a stable version, but it is already possible to try to use it, perhaps, first for small projects. The idea of ​​the utility is quite interesting, and who knows, maybe after a while we will all use it.

Presentation .

Docker in production (Robert Lemke)


You, most likely, already heard about Docker, perhaps, used it as development environment for start of your project on the local computer. But the continued use of Docker on combat servers is another matter.

In his report, Robert voiced the main points that should be paid attention to when using Docker in production. And you need to take into account quite a lot of things - monitoring, deployment, debugging, security, backups, data storage. That is, issues that can be very different when deployed on a single server for development, and when deployed in a cloud on a combat environment.

Robert also helped to gain a deeper understanding of how to work with Docker in practice.

Starting from basic concepts, we looked at practical scenarios for hosting, automatic deployment and monitoring of an application in production. In addition, recommendations were made on the use of various tools and services.

Docker is a rather interesting technology, and despite the fact that it is mentioned literally at every step, it is still relatively rarely used in combat environments. After listening to this report, the desire to use it in production was supported by knowledge and useful tips on choosing the necessary tools and services, without which bicycles would have to be reinvented.

Presentation .

Pimp your team (Stefan Koopmanshap)


As a technical project manager, team leader or mentor, at any time you may be confronted with the fact that your team has stopped in its development. There are many reasons for this: members of your team may not have enough time, motivation, money, and desire. In the meantime, every lead needs to have the guys in the team work efficiently, be able to quickly switch to another project and remain involved in the professional community. To do this, the team leader must keep abreast and strive not only to the high performance of the project, but also to the professional growth of each team member. How to achieve this, said Stefan Koopmanshap.

Stefan listed all the known development tools of the team and gave examples from personal experience how to make the developers themselves push themselves to give all the best. Of course, there were many obvious points in the report, but Stefan managed to structure the whole variety of tools for working with the team and create a full-fledged “instruction”.

Stefan helped look at the responsibilities of the lead from the other side and suggested a solution to a really serious problem. In addition, his report itself motivated to develop and improve the level of knowledge, made me think about how much time and effort it is worth spending on human development in the team and the project team as a whole.

Presentation .

Modern application with Angular 2 - neat, simple and understandable (Anas Raza Ferdowsi)


The modern pace of development of web technologies requires a flexible and stable framework with support for a long time. PayPal Anas Raza Firdousi (Anas Raza Firdous) is sure that Angular 2 is able to continuously evolve and be able to withstand the test of time.

Anas dedicated his report to the benefits of Angular 2 and demonstrated how to think and design applications from the point of view of Angular 2, TypeScript and reactive programming with RxJS.

Anas said that Angular 2 combines the ease of use of Angular 1, but it corrects many of the pitfalls and difficulties of the first version, spoke about the changes in Angular 2 and their causes. On a practical example, Anas demonstrated the features and some capabilities of the framework, which are enough to start development. Also, the speaker suggested how to study Angular 2 in more detail.

Presentation .

We translate your project to PHP 7 (John Cogshall)


Since the release of PHP 7, the developer community has been discussing the advantages and disadvantages of the latest version, as well as the features of migration to PHP 7. John Cogshall offered his experience of project migration, spoke about the problems he had to face and how to solve them.

John paid attention to both the features of the new version of the language, and the nuances of the migration of the project to PHP 7: what you need to know about PHP 7 to migrate, what has changed in the new version, what problems can be expected during migration and how to solve them quickly and painlessly.

Of course, each developer can independently read about the differences between the versions and suggest what and how can break. However, John did not limit himself to theory and supported the report with examples from his own experience. Due to this, the report was bright and lively.

Presentation .

Conclusion


International PHP Conference is one of the key events for a PHP developer. As stated on the conference website, its main goal is to share practical know-how in PHP and web development. Thanks to this trip, we not only received a huge amount of new useful information that is useful in our work, but we were able to personally communicate with world-class web development experts and get answers to our questions from them. A nice bonus was the reports on "okolodevoperskie" topics that helped to see the important nuances in the work.

Source: https://habr.com/ru/post/305708/


All Articles