JPoint 2019: de l'aube au crépuscule

Ajout à la revue avec le résumé de la conférence JPoint 2019 pour les développeurs Java, tenue les 5 et 6 avril 2019 à Moscou. Plus d'avis, plus de photos, plus d'émotions et d'impressions.



Deux jours du matin au soir (presque littéralement «de l'aube au crépuscule» ) 1 600 personnes (avec des conférenciers et l'équipe JUG.ru - tous 1 700) d'âge proche ayant des intérêts professionnels similaires ont passé au Centre des congrès du World Trade Center. En se déplaçant dans le lieu et en se déplaçant d'une pièce à l'autre pendant les pauses, il a été estimé qu'un tel nombre de personnes était proche de la limite dans un lieu de conférence donné. Nous devons rendre hommage à tous ceux qui ont participé à la préparation de l'événement - tout s'est parfaitement déroulé. Si vous êtes entré dans la salle à l'avance, il y avait des endroits; en plus, la vidéo était diffusée dans la petite cinquième salle. Tout le monde a été nourri à l'heure et n'a pas été offensé par le manque de rapports pour tous les goûts ( «pain et cirque» ).



Stands d'entreprise


Parmi les stands des sponsors, une grande attention a été attirée par les entreprises dont les produits logiciels sont soit utilisés par la majorité des participants à la conférence, soit potentiellement intéressants pour une partie importante. Naturellement, c'est tout d'abord le stand de la société JetBrains (plan moyen). En passant une bonne partie de la journée tous les jours, en utilisant la dernière version d' IntelliJ IDEA , vous ressentez le plus profond respect et la plus profonde gratitude envers les employés de l'entreprise. Lors de la conférence, des rapports ont été rédigés par ses employés Tagir Valeev et Anton Arkhipov .



Une petite entreprise (son nom officiel est «Program Verification Systems»), dont le produit phare est l'analyseur de code statique PVS-Studio . Le produit a récemment introduit la prise en charge du langage Java . L'entreprise est très active sur Habré . Une part importante des articles a été rédigée par le directeur technique Andrei Karpov (sur la première photo, il est sur le stand de l'entreprise).



Une autre entreprise intéressante est BellSoft et leur Liberica JDK . Une caractéristique distinctive de cette distribution est le support de l' architecture ARM . Sur la première photo - le directeur général Alexander Belokrylov, qui a réussi à réaliser un mini-reportage sur la scène de démonstration . En outre, Dmitry Chuiko a également parlé de Java dans un environnement de conteneur.



Stand jug.msk.ru


La communauté des développeurs Java de Moscou jug.msk.ru a agi en tant que partenaire d'information. Des réunions communautaires ont lieu régulièrement , rassemblant invariablement un grand nombre de participants. Le stand était installé au rez-de-chaussée; Andrey Kogun (responsable de jug.msk.ru , participant à temps partiel au comité du programme de la conférence) était presque toujours présent sur le stand. Au cours des deux jours d'existence du stand, le nombre d'abonnés au compte Twitter a considérablement augmenté.

Anton Chernousov ( podcast , organisateur de la conférence, juste une bonne personne) et Andrey Kogun (première photo). Andrey et les participants à la conférence qui ont visité le stand (deuxième photo). Conférenciers des réunions passées jug.msk.ru : Ivan Ponomarev , Nikita Lipsky et Alexey Stukalov (troisième photo).



Étape de démonstration


Un endroit populaire pour de courtes présentations. Une forme de rapports très attrayante, qui vous permet de rejoindre de nouveaux sujets et d'obtenir des informations d'un domaine qui vous intéresse lorsque vous restez en dehors des salles de rapport principales. Comme déjà indiqué, le seul inconvénient est bruyant, mais ce sont les caractéristiques du site.



Ouverture de la conférence


Andrei Dmitriev ouvre la conférence et présente le comité de programme. Andrei Kogun et Vladimir Sitnikov parlent en détail du programme de la conférence, en se concentrant sur les types de rapports possibles.



Rapports du premier jour


Anton Keks dans son rapport Le monde a besoin d'artisans à part entière pour promouvoir l'idée de la plus grande polyvalence possible de chaque membre de l'équipe. Sur l'exemple de son entreprise, Codeborne a expliqué pourquoi cela est important: la compacité de l'équipe en raison des nombreuses connaissances et compétences de chacun, la réduction des risques du projet (le camion notoire, sous les roues duquel, outre l'employé, le produit peut mourir en raison de la perte de connaissances), il est juste intéressant d'en obtenir plus connaissances dans différents domaines (il est difficile d'être en désaccord). Le rapport a inspiré non seulement le public, mais aussi le conférencier - Bruno Borges a inclus dans sa présentation une diapositive avec une citation d'Anton: «L'artisan peut être 5 fois plus efficace en sachant quoi ne pas faire».



Vladislav Senin avec le rapport Logs: plus c'est mieux - mais comment vivre avec? fait dans une cinquième salle confortable. Vlad est un participant actif dans la communauté Java de Moscou, c'est ses débuts en tant que conférencier aux conférences JUG.ru. L'évolution de l'utilisation des outils de stockage et de recherche de journaux a été montrée. Les sources de journaux sont des applications Java et Python . Pour la recherche, Elasticsearch sert de base . Après le rapport, d'autres détails fascinants ont été entendus (y compris une histoire de détective recherchant la cause de la perte d'un personnage dans JSON ), qui n'ont pas été révélés en raison de contraintes de temps, nous pouvons donc nous attendre à une histoire plus détaillée de Vlad sur ce sujet dans un proche avenir.



La fée Proxy et la magie du printemps de Victor Rentea ont parlé de la magie du modèle de conception Proxy couramment utilisé dans le framework Spring . Dans l'annonce du rapport, il y avait une promesse d'introduire six façons d'intercepter les appels de méthode, deux façons d'utiliser le modèle Decorator avec Spring, et bien plus encore lors d'une session de codage en direct. Une performance très vivante, l'inspirant après lui pour expérimenter Spring et se plonger dans le code des exemples montrés (ils sont ici sur GitHub ). Si vous aimez Spring , les modèles de conception et le codage en direct - c'est certainement votre rapport, vous devriez regarder.



Rapport absolument pratique des applications Bulletproof Java Enterprise pour la durée de vie de la production de Sebastian Daschner sur l'importance de la stabilité et de la résilience pour les applications d'entreprise, et comment y parvenir. Pendant le rapport, j'ai trouvé et ouvert le projet Microprofile Fault Tolerance sur GitHub , le conférencier a activement démontré l'utilisation d'annotations à partir desquelles (je me souviens le plus de @CircuitBreaker ). Le seul inconvénient de la présentation du rapport est les titres difficiles à lire (la première photo en donne une idée, vous pouvez cliquer sur l'image pour l'agrandir).



Rapport Spring Boot américain, et nous nous renforçons: la légèreté insupportable de la compilation AOT des applications Spring de Nikita Lipsky était une sorte de réponse à la question sur le support Spring Boot dans GraalVM , qui a été posée par Oleg Shelaev la veille lors de la réunionGraalVM il y a toujours des problèmes de support comme Spring Boot , et le système d'exploitation Windows, qui a déclaré Oleg). Dans le produit Excelsior JET , qui représente Nikita, avec le soutien de divers systèmes d'exploitation, tout va bien. En outre, la prise en charge de la compilation AOT de Spring Boot a été officiellement annoncée récemment, ce qui a été signalé. Un intérêt supplémentaire pour la compilation AOT statique des applications Java est désormais lié au fait que les applications (microservices) sont particulièrement importantes pour un démarrage rapide. Le plus souvent, les applications sont construites sur la base de Spring Boot . Un rapport intéressant, habilement équilibré au bord d'une présentation hardcore et compréhensible.



Les reportages conjoints de Kirill Tolkachev et Evgeny Borisov sont traditionnellement très populaires auprès des auditeurs, réactifs ou non réactifs, c'est que la question n'a pas fait exception - dans la première photo, vous pouvez voir la salle entière. L'idée du rapport était de montrer la mise en œuvre habituelle d'une tâche (l'interaction des trois systèmes dans ce cas), afin qu'elle puisse ensuite être refaite dans un style réactif. Inspirés en regardant le rapport d'Oleg Dokuki sur le protocole RSocket le même jour, les intervenants ont même réussi à affiner les exemples . Tout s'est avéré assez réussi et passionnant.



Séances Bof


Le format BOF a déjà été testé plusieurs fois lors de plusieurs conférences récentes et est devenu populaire. L'écoute des rapports est déjà difficile, mais il y a toujours la force et le désir de communication informelle - la conclusion naturelle du premier jour. Ci-dessous, une photo de la session BOF de Microservices, cloud et où tout cela se passe , qui se déroule dans la zone de discussion.



Rapports du deuxième jour


Particularité , le «temps fort» des conférences techniques JUG.ru est la présence au programme d'un rapport non technique. Cette fois, le rapport était le jeu de Dieu. La science a-t-elle traversé la frontière avec Alexander Panchin ? De tels rapports élargissent vos horizons et vous permettent de vous connecter pour la journée (cette fois, le rapport était le deuxième jour d'ouverture). Enfin, ils sont mutuellement intéressants à la fois pour le locuteur (public non standard) et les auditeurs (sujet inhabituel). Naturellement, le rapport était une science populaire, mais très intéressant. Changer le code génétique et corriger les défauts génétiques, les succès et les approches modernes dans la lutte contre le VIH et le cancer. Dénombrement des personnalités des scientifiques impliqués dans des problèmes similaires et de leurs réalisations.



Rapport léger (dans le bon sens du terme - facile à lire et à comprendre) Inférence de type variable locale: ami ou ennemi? a été présenté par Simon Ritter . Le sujet du rapport est l' inférence des types de variables locales lors de l'utilisation de var (une fonctionnalité introduite dans Java 10 ). Après un examen plus approfondi, il s'est avéré que, dans un tel simple, à première vue, la question, il existe de nombreuses nuances auxquelles vous devez prêter attention. Il est estimé que le conférencier a une grande expérience de conférence (dans les antécédents, il y a du travail dans Sun Microsystems , Oracle , Azul et le titre de J ava Rockstar , Java Champion ). L'histoire était très facile à écouter et était bien illustrée par des diapositives. Un exemple de rapports avec une orientation pratique claire.



La supercompilation des performances , l'évaluation partielle, les projections Futamura et la façon dont GraalVM sauvera le monde interprété par Oleg Shelaev était une continuation du thème GraalVM , dont il a commencé l'histoire le 4 avril lors de la réunion jug.msk.ru. Il était très utile d'écouter d'abord une histoire d'introduction détaillée de trois heures immédiatement avant la conférence, puis de passer le premier jour à une présentation de Nikita Lipsky (sur la prise en charge de Spring Boot avec AOT ), puis de revenir à GraalVM à nouveau . La conversation a porté sur les fondements théoriques du compilateur Graal et des projections GraalVM - Futamura . Le deuxième sujet était une démonstration de l'utilisation de Truffle , un framework pour créer des langages de programmation basés sur GraalVM . Oleg a également recommandé d'écouter une conférence de Thomas Wuerthinger la veille de la conférence.



Un concept intéressant de changements atomiques lors de la refactorisation de code a été introduit par Tagir Valeev dans son rapport Atomic Refactoring dans IntelliJ IDEA: nous plions l'IDE pour nous-mêmes . L'idée des changements atomiques à chaque petite étape de la modification des lignes de code a été montrée dans l'environnement de développement IntelliJ IDEA - Tagir représente JetBrains , participant personnellement à son développement. De plus, la grande majorité de ceux qui sont assis dans la salle (dont moi) utilisent IntelliJ IDEA tous les jours, donc l'histoire racontée et montrée est tombée sur un terrain fertile. Franchement, je n'ai jamais pensé à savoir si ma plus petite étape de changement était atomique, mais maintenant je vais essayer d'y prêter attention, peut-être en révisant le rapport vidéo.



Un autre exemple de rapport, dont les informations après écoute peuvent être mises en pratique, est le ralentissement Java: édition CodeCache de Vladimir Sitnikov . Il s'agissait de CodeCache - la zone dans laquelle la JVM stocke le bytecode compilé en code natif (code natif exécutable de la plate-forme cible). Le cas décrit dans le rapport s'est produit lors de l'utilisation de WebLogic Server , mais le type spécifique de serveur d'applications n'a pas vraiment d'importance. Une séquence intéressante d'étapes qui doivent être effectuées avec des erreurs de ce type, et la connaissance des valeurs par défaut pour la taille CodeCache dans différentes versions de Java (ou du moins le fait qu'elles sont différentes, et vous devrez peut-être spécifier manuellement une taille plus grande).



Dans une certaine mesure, Comment démêler une boule de fil: analyse et débogage des applications dans IntelliJ IDEA , un rapport d' Anton Arkhipov , a fait écho à la première partie de son discours de trois heures en novembre de l'année dernière. Les informations obtenues lors du discours susmentionné et dans ce rapport spécifique se sont avérées utiles. Des techniques de recherche de code ont été montrées en utilisant l'exemple Spring Initializr . Beaucoup de gens connaissent la recherche structurelle dans IntelliJ IDEA , mais l'utilisent. Peut-être qu'une démonstration de cette fonctionnalité par Anton encouragera quelqu'un à l'utiliser tous les jours.



Bruno Borges clôturant la conférence, Donner un sens à l'informatique sans serveur, a commencé la conférence avec des rapports selon lesquels, malgré son travail chez Microsoft , il n'a jamais utilisé le système d'exploitation Windows (la présentation était du MacBook ), ayant une riche expérience de développement Java et ayant déjà travaillé dans Société Oracle . Il est maintenant un défenseur des développeurs chez Microsoft et fait la promotion de l'utilisation du cloud. Les principales caractéristiques de l'utilisation «sans serveur» ont été examinées en détail: gestion événementielle , flexibilité de la micro-facturation , pas besoin d'installer quoi que ce soit et de prendre en charge ( pas de configuration ou de maintenance du serveur ) et auto-évolutif infrastructure. Un lien de connexion particulier au début de la conférence était, comme déjà indiqué, l'utilisation de citations de la présentation d'Anton Keks.



Clôture


Remarques de clôture par Andrei Dmitriev demandant une réponse à la lettre avec commentaires. Photographies traditionnelles des membres du comité de programme, de l'équipe JUG.ru et des conférenciers.



Résumé


La conférence a augmenté de façon inattendue le nombre de participants. Ayant déménagé il y a quelque temps de l'hôtel Radisson Slavyanskaya au centre des congrès du World Trade Center, je me sens maintenant contraint sur le site actuel. Probablement, tout en maintenant une tendance croissante, vous pouvez attendre dans un proche avenir pour remplacer le site par un site encore plus spacieux.

Les pensées exprimées par Baruch Sadogursky dans une interview avec Egor Bugaenko au Joker 2018 sur le manque de sexe équitable dans les TI ont été entendues - il y avait sensiblement plus de filles à la conférence que lors des précédentes.

Des superpositions organisationnelles et techniques mineures étaient plus susceptibles d'être associées à un grand nombre de participants, et même celles-ci ont été rapidement corrigées. Des rapports vidéo pour les participants à la conférence sont déjà disponibles sur YouTube , ainsi que des fichiers de présentation sur le site Web de la conférence .

Du 25 au 26 octobre 2019, une conférence pour les développeurs Java de Joker 2019 se tiendra à Saint-Pétersbourg , les demandes de rapports sont ouvertes et les billets peuvent déjà être achetés (au prix le plus bas jusqu'au 1er mai).

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


All Articles