JPoint 2019: do amanhecer ao anoitecer

Além da revisão com o resumo da conferência JPoint 2019 para desenvolvedores de Java, realizada de 5 a 6 de abril de 2019 em Moscou. Mais críticas, mais fotos, mais emoções e impressões.



Dois dias da manhã à noite (quase literalmente “do amanhecer ao anoitecer” ), 1.600 pessoas (com palestrantes e a equipe JUG.ru - todas as 1.700) em idade próxima, com interesses profissionais semelhantes gastos no Centro de Congressos do World Trade Center. Ao se deslocar pelo local e passar de uma sala para outra durante os intervalos, considerou-se que um número tão grande de pessoas estava próximo do limite em um determinado local da conferência. Devemos prestar homenagem a todos os envolvidos na preparação do evento - tudo correu quase perfeitamente. Se você entrava no salão com antecedência, havia lugares; além disso, o vídeo era transmitido no pequeno quinto salão. Todos foram alimentados com pontualidade e não se ofenderam com a falta de relatórios para todos os gostos ( “pão e circo” ).



Stands da empresa


Dos estandes patrocinadores, muita atenção foi atraída por empresas cujos produtos de software são usados ​​pela maioria dos participantes da conferência ou potencialmente podem interessar uma parte significativa deles. Naturalmente, em primeiro lugar, este é o estande da empresa JetBrains (tiro médio). Passando boa parte do dia todos os dias, usando a versão mais recente do IntelliJ IDEA , você sente o mais profundo respeito e gratidão aos funcionários da empresa. Na conferência, os relatórios foram feitos por seus funcionários Tagir Valeev e Anton Arkhipov .



Uma pequena empresa (cujo nome oficial é “Program Verification Systems”), cujo principal produto é o analisador de código estático PVS-Studio . O produto introduziu recentemente o suporte para a linguagem Java . A empresa é muito ativa em Habré . Uma proporção significativa dos artigos foi escrita pelo diretor técnico Andrei Karpov (na primeira foto, ele está no estande da empresa).



Outra empresa interessante é a BellSoft e seu Liberica JDK . Uma característica distintiva dessa distribuição é o suporte da arquitetura ARM . Na primeira foto - o diretor geral Alexander Belokrylov, que conseguiu fazer um mini-relatório no estágio Demo . Além disso, Dmitry Chuiko falou adicionalmente sobre Java em um ambiente de contêiner.



Stand jug.msk.ru


A comunidade de desenvolvedores de Java de Moscou jug.msk.ru atuou como um parceiro de informações. As reuniões da comunidade são realizadas regularmente , reunindo invariavelmente um grande número de participantes. O estande foi instalado no térreo; Andrey Kogun (líder do jug.msk.ru , participante de meio período do comitê do programa da conferência) estava quase sempre presente no estande. Nos dois dias de existência do estande, o número de assinantes da conta no Twitter aumentou significativamente.

Anton Chernousov ( podcast , organizador de conferências, apenas uma boa pessoa) e Andrey Kogun (primeira foto). Andrey e participantes da conferência que visitaram o estande (segunda foto). Oradores de reuniões anteriores jug.msk.ru : Ivan Ponomarev , Nikita Lipsky e Alexey Stukalov (terceira foto).



Etapa de demonstração


Um local popular para apresentações curtas. Uma forma muito atraente de relatórios, que permite ingressar em novos tópicos e obter informações de uma área de seu interesse quando você fica fora das principais salas de relatórios. Como já observado, a única desvantagem é barulhenta, mas esses são os recursos do site.



Abertura da conferência


Andrei Dmitriev abre a conferência, apresentando o comitê do programa. Andrei Kogun e Vladimir Sitnikov conversam em detalhes sobre o programa da conferência, concentrando-se em possíveis tipos de relatórios.



Relatórios do primeiro dia


Anton Keks em seu relatório O mundo precisa de artesãos de pilha completa promovidos a idéia da maior versatilidade possível de cada membro da equipe. No exemplo de sua empresa, Codeborne argumentou por que isso é importante: a compactação da equipe devido a muitos conhecimentos e habilidades de todos, a redução dos riscos do projeto (o caminhão notório, sob cujas rodas, além do funcionário, o produto pode morrer devido à perda de conhecimento), é apenas interessante obter mais conhecimento em diferentes áreas (é difícil discordar). O relatório inspirou não apenas o público, mas também o palestrante - Bruno Borges incluiu em sua apresentação um slide com uma citação de Anton: “O artesão pode ser 5x ainda mais eficiente sabendo o que não fazer”.



Vladislav Senin com o relatório Logs: quanto mais, melhor - mas como viver com isso? feito em um aconchegante quinto salão. Vlad é um participante ativo da comunidade Java de Moscou; esta é sua estréia como palestrante nas conferências JUG.ru. A evolução do uso de ferramentas para armazenar e pesquisar logs foi mostrada. As fontes de log são aplicativos Java e Python . Para a pesquisa, o Elasticsearch serve como base . Após o relatório, detalhes fascinantes adicionais foram ouvidos (incluindo uma história de detetive que procurava os motivos do desaparecimento do personagem no JSON ), que não foram contados devido a restrições de tempo, para que possamos esperar uma história mais detalhada de Vlad sobre esse tópico no futuro próximo.



A fada Proxy, de Victor Rentea, e a magia do Spring falaram sobre a magia do padrão de design do Proxy comumente usado no Spring Framework . No anúncio do relatório, havia uma promessa de introduzir seis maneiras de interceptar chamadas de método, duas maneiras de usar o modelo Decorator com o Spring e muito mais durante uma sessão de codificação ao vivo. Uma performance muito animada, inspirando-o a experimentar o Spring e a se aprofundar no código dos exemplos mostrados (eles estão aqui no GitHub ). Se você gosta do Spring , padrões de design e codificação ao vivo - este é definitivamente o seu relatório, você deve assistir.



Relatório absolutamente prático dos aplicativos Bulletproof Java Enterprise sobre a vida útil de produção de Sebastian Daschner sobre a importância da estabilidade e resiliência dos aplicativos corporativos e como alcançá-lo. Durante o relatório, encontrei e abri o projeto Tolerância a falhas por microprofiles no GitHub , o palestrante demonstrou ativamente o uso de anotações das quais (lembro- me mais do @CircuitBreaker ). A única desvantagem da apresentação do relatório é o difícil de ler os cabeçalhos (a primeira foto dá uma idéia disso, você pode clicar na figura para ampliá-la).



Relatório do Spring Boot, e estamos cada vez mais fortes: a leveza insuportável da compilação AOT dos aplicativos Spring do Nikita Lipsky foi uma espécie de resposta à pergunta sobre o suporte ao Spring Boot no GraalVM , que foi solicitada por Oleg Shelaev no dia anterior na reunião (no GraalVM ainda existem problemas com suporte como Spring Boot e o sistema operacional Windows, que Oleg disse). No produto Excelsior JET , que representa a Nikita, com o suporte de vários sistemas operacionais, está tudo bem. Além disso, o suporte para a compilação AOT do Spring Boot foi anunciado oficialmente recentemente, o que foi relatado. Um interesse adicional na compilação estática de AOT de aplicativos Java agora está relacionado ao fato de que aplicativos (microsserviços) são especialmente importantes para um início rápido. Na maioria das vezes, os aplicativos são criados com base no Spring Boot . Um relatório interessante, habilmente equilibrando à beira de uma apresentação hardcore e compreensível.



Os relatórios conjuntos de Kirill Tolkachev e Evgeny Borisov são tradicionalmente muito populares entre os ouvintes, reativos ou não reativos, e essa é a pergunta não foi exceção - na primeira foto, você pode ver a sala inteira. A idéia do relatório era mostrar a implementação usual de uma tarefa (a interação dos três sistemas neste caso), para que mais tarde pudesse ser refeita de maneira reativa. Inspirados por assistir ao relatório de Oleg Dokuki sobre o protocolo RSocket no mesmo dia, os palestrantes conseguiram refinar os exemplos . Tudo acabou com muito sucesso e entusiasmo.



Sessões Bof


O formato BOF já foi testado várias vezes em várias conferências recentes e se tornou popular. Ouvir relatórios já é difícil, mas ainda há a força e o desejo de comunicação informal - a conclusão natural do primeiro dia. Abaixo está uma foto da sessão do BOF de microsserviços, nuvem e para onde tudo isso está acontecendo , na zona de discussão.



Relatórios do segundo dia


Uma característica distintiva, o "destaque" das conferências técnicas do JUG.ru é a presença no programa de um relatório não técnico. Desta vez, o relatório foi o jogo de Deus. A ciência cruzou a fronteira de Alexander Panchin ? Esses relatórios ampliam seus horizontes e permitem que você sintonize o dia (desta vez, o relatório foi o segundo dia de abertura). Finalmente, eles são mutuamente interessantes para quem fala (público não padrão) e para os ouvintes (área de assunto incomum). Naturalmente, o relatório era ciência popular, mas muito interessante. Mudar o código genético e corrigir defeitos genéticos, sucessos e abordagens modernas na luta contra o HIV e o câncer. Enumeração das personalidades de cientistas envolvidos em problemas semelhantes e sua conquista.



Relatório leve (no bom sentido da palavra - fácil de ler e entender) - relatório Inferência de tipo de variável local: Amigo ou inimigo? foi introduzido por Simon Ritter . O tópico do relatório é a inferência de tipos de variáveis ​​locais ao usar var (um recurso introduzido no Java 10 ). Após uma análise mais aprofundada, verificou-se que, de uma maneira tão simples, à primeira vista, a questão das muitas nuances às quais você precisa prestar atenção. Considera-se que o palestrante tem uma ótima experiência de conferência (no histórico há trabalho na Sun Microsystems , Oracle , Azul e o título de J Rock Rock , Java Champion ). A história foi muito fácil de ouvir e foi bem ilustrada com slides. Um exemplo de relatórios com um foco prático claro.



Supercompilação de desempenho , avaliação parcial, projeções do Futamura e como o GraalVM salvará o mundo apresentado por Oleg Shelaev foi uma continuação do tema do GraalVM , cuja história começou em 4 de abril na reunião jug.msk.ru. Foi muito útil ouvir primeiro uma história introdutória detalhada de três horas imediatamente antes da conferência, depois no primeiro dia ir para um relatório de Nikita Lipsky (sobre o suporte ao Spring Boot com AOT ) e depois retornar ao GraalVM novamente . A conversa foi sobre os fundamentos teóricos do compilador Graal e das projeções GraalVM - Futamura . O segundo tópico foi uma demonstração do uso do Truffle , uma estrutura para criar linguagens de programação baseadas no GraalVM . Oleg também recomendou ouvir uma palestra de Thomas Wuerthinger no dia anterior da conferência.



Um conceito interessante de mudanças atômicas ao executar a refatoração de código foi introduzido por Tagir Valeev em seu relatório Atomic Refactoring in IntelliJ IDEA: dobramos o IDE para nós mesmos . A idéia de mudanças atômicas a cada pequeno passo de modificação das linhas de código foi mostrada no ambiente de desenvolvimento do IntelliJ IDEA - Tagir representa o JetBrains , participando pessoalmente de seu desenvolvimento. Além disso, a grande maioria dos que estão sentados no corredor (inclusive eu) usa o IntelliJ IDEA todos os dias; portanto, a história contada e mostrada caiu em terreno fértil. Sinceramente, nunca pensei se meu menor passo de mudança era atômico, mas agora vou tentar prestar atenção, talvez revisando a reportagem em vídeo.



Outro exemplo de relatório, as informações após a escuta que podem ser colocadas em prática, é o Java fica mais lento: edição do CodeCache por Vladimir Sitnikov . Era sobre o CodeCache - a área na qual a JVM armazena o bytecode compilado no código nativo (código executável nativo da plataforma de destino). O caso discutido no relatório ocorreu ao usar o WebLogic Server , mas o tipo específico de servidor de aplicativos realmente não importa. Uma sequência interessante de etapas que devem ser executadas com erros desse tipo e conhecimento dos valores padrão do tamanho do CodeCache em diferentes versões do Java (ou pelo menos o fato de serem diferentes, e você pode precisar especificar manualmente um tamanho maior).



Até certo ponto, Como desvendar uma discussão: análise e depuração de aplicativos no IntelliJ IDEA , um relatório de Anton Arkhipov , ecoou a primeira parte de seu discurso de três horas em novembro do ano passado. As informações obtidas no discurso acima e neste relatório específico foram úteis. As técnicas de pesquisa de código foram mostradas usando o exemplo do Spring Initializr . Muitas pessoas conhecem a pesquisa estrutural no IntelliJ IDEA , mas a utilizam. Talvez uma demonstração desse recurso por Anton incentive alguém a usá-lo todos os dias.



Bruno Borges, concluindo a conferência, dando sentido à computação sem servidor, começou com relatos de que, apesar de seu trabalho na Microsoft , ele nunca usou o sistema operacional Windows (a apresentação era do MacBook ), tendo uma rica experiência em desenvolvimento Java e tendo trabalhado anteriormente em Empresa Oracle . Ele agora é advogado de desenvolvedores da Microsoft e promove o uso da nuvem. Os principais recursos do uso “sem servidor” foram examinados em detalhes: manipulação orientada a eventos , flexibilidade de micro-faturamento , não é necessário instalar algo e suporte ( sem configuração ou manutenção do servidor ) e auto-dimensionamento infraestrutura. Um fio de conexão peculiar no início da conferência foi, como já observado, o uso de citações da apresentação de Anton Keks.



Encerramento


Comentários finais de Andrei Dmitriev solicitando uma resposta à carta com feedback. Fotografias tradicionais dos membros do comitê do programa, da equipe do JUG.ru e dos palestrantes.



Sumário


A conferência aumentou inesperadamente o número de participantes. Tendo me mudado há algum tempo do Radisson Slavyanskaya Hotel para o Centro de Congressos do World Trade Center, agora me sinto constrangido no local atual. Provavelmente, mantendo uma tendência crescente de interesse, você pode esperar no futuro próximo para substituir o site por um ainda mais espaçoso.

Os pensamentos expressos por Baruch Sadogursky em uma entrevista com Egor Bugaenko no Joker 2018 sobre a falta de um sexo justo em TI foram ouvidos - havia visivelmente mais meninas na conferência do que nas anteriores.

Sobreposições organizacionais e técnicas menores foram mais provavelmente associadas a um grande número de participantes, e mesmo isso foi prontamente corrigido. Relatórios de vídeo para os participantes da conferência já estão disponíveis no YouTube , bem como arquivos de apresentação no site da conferência .

De 25 a 26 de outubro de 2019, uma conferência para desenvolvedores de Java do Joker 2019 será realizada em São Petersburgo , os pedidos de relatórios estão abertos e os ingressos já podem ser comprados (pelo menor preço até 1º de maio).

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


All Articles