De Babel ao GraphQL: HolyJS 2019 Moscow Talks

Se você é um desenvolvedor de JS, o navegador é sua casa, mas você pode descrever passo a passo todas as ações do navegador para renderizar sua linda página? E você provavelmente já ouviu falar sobre o WebAssembly, mas você sabe o que está “dentro” dessa tecnologia?



Os relatórios ajudarão a aprofundar esses e muitos outros tópicos da JS. O HolyJS 2019 Moscow foi realizado em novembro e agora seus vídeos estão abertos a todos, e tradicionalmente publicamos uma seleção em Habré - em geral, há algo para tirar um fim de semana em auto-isolamento.

"JavaScript Core, muitos compiladores fazem esse mecanismo funcionar" - Michael Saboff


Michael falou sobre o dispositivo interno do mecanismo mais rápido para JS - JavaScriptCore.




"Renderização de cliente, renderização de servidor, pré renderização. Toda a gama de entrega de desempenho de aplicativos e sites JS ”- Guillermo Rauch


Guillermo é cofundadora da ZEIT (ela é Vercel), a empresa que cria o Next.js, que, por sua vez, é uma das principais soluções para SSR no React. O relatório aborda bem o tópico renderização do lado do servidor.




“Figma to React: entrega do projeto ao código” - Zar Zakharov, Alexander Kamenyar


Mas e se o designer e o desenvolvedor trabalharem juntos para automatizar a entrega de estilos?
Figma é uma nova ferramenta de design. Figma, ao contrário do Sketch, funciona na Web, o ambiente nativo dos sistemas de design de componentes. Ela tem uma API. Alexander e Zar mostraram como fazer amigos projetarem sistemas de dois mundos.




“Reagir estratégias de renderização: tire o máximo proveito do desempenho, mantenha os robôs felizes” - Miguel Angel Duran Garcia


Acha que a renderização no React é limitada ao lado do cliente e do servidor? Pense novamente - você pode usar diferentes estratégias de renderização, cada uma com suas próprias vantagens e desvantagens. Detalhes no relatório.




"Levarei todos os dados de você e você nem saberá. Eu sou uma extensão de navegador ”- Nikita Mostovoy


Nikita mostrou quais nuances você pode esperar ao usar essas extensões e demonstrou vetores de ataque verdadeiramente elegantes.




"Transpile qualquer coisa para tudo!" - Anna Herlihy


O problema com a criação de qualquer ORM é que ele precisa ser feito para todos os idiomas e tecnologias. Anna falou sobre como criar uma interface adequada para a maioria dos idiomas e plataformas.




"WebAssembly sem cortes" - Andrey Roenko


Se você estiver interessado em saber o que é o WebAssembly, consulte o relatório de Andrey.




"@ Babel / how-to" - Nicolò Ribaudo


Nicolo é um dos principais desenvolvedores da Babel. A partir do relatório, você aprenderá como criar seu próprio plug-in Babel para suportar novos recursos do idioma ou resolver seus problemas.




“Conheça os princípios de uma web acessível” - Romulo Cintra


O problema da internacionalização é relevante para muitos desenvolvedores e, portanto, tem muitas soluções. Você tem a chance de aprender sobre quais são as opções agora e de que forma elas resolverão esse problema usando a nova API no próprio JavaScript.

Há um mês, já publicamos a tradução do relatório de Romulo sobre Habré .




“Fragmentos do GraphQL no cliente: histórico de ocorrência, erros de uso” - Pavel Chertorogov


Mais e mais pessoas estão começando a usar o GraphQL. Pavel falou sobre as melhores práticas que se acumularam no setor, e por que e como usar fragmentos do GraphQL.




“Programação de contratos como um meio, não um fim” - Artyom Harutyunyan


Muitas pessoas desejam que o TypeScript tenha, além da digitação estática, verificação de tipo de tempo de execução. Mas a equipe do TypeScript ainda não adicionará essa
funcionalidade. O que fazer? Artyom propôs opções para tipos de tempo de execução e expressou suas deficiências.




"Do código aos pixels em um piscar de olhos" - Prashant Palikhe


Você pode descrever as etapas do navegador para exibir o conteúdo da página? Caso contrário, Prashant mostrou claramente o que está acontecendo e como ele pode ser otimizado.




“JavaScript a serviço da ciência da computação teórica” - Vitaly Bragilevsky


Um relatório fundamental de uma pessoa que gira no ambiente acadêmico e está atualizado com as últimas tendências da teoria das linguagens de programação e da ciência da computação teórica. Vitaly falou sobre como os cálculos são construídos em qualquer idioma, sobre a máquina de Turing, o cálculo lambda etc.




“Como pagamos pela transição de div para WebGL e o que obtemos (lucro!), Nos exemplos do PixiJS” - Ivan Popelyshev


Após este relatório, você poderá entender os problemas ao mudar de um DOM multifuncional para WebGL para abrir as páginas corretas de documentação ou código quando vir artefatos estranhos que não deveriam existir.
O relatório traça paralelos entre soluções em DOM / CSS / SVG, canvas 2d e WebGL. O foco, é claro, está no último.




“Eficiência na carreira e plano de carreira em TI” - Dmitry Voloshin


Colocar uma pedra ou queimar uma estrela. Qual é o seu caminho para a TI? Dmitry Voloshin mostrou as formas mais eficazes de desenvolvimento na profissão.




“(Não | bem) recompensando Mônada na prática e na teoria” - Dmitry Makhnev, Artyom Kobzar


Às vezes, conceitos de programação funcional podem ser aplicados hoje, diretamente no seu TypeScriptJjavaScript favorito. Sobre como lidar convenientemente com erros e exceções, um relatório de Dmitry e Artyom.




“Da especificação à implementação” - Yulia Startsev


Os relatórios sobre o mecanismo SpiderMonkey podem ser ouvidos muito raramente, e você tem uma grande oportunidade de ouvir a pessoa que trabalha na equipe desse mecanismo e é co-presidente do TC39. No relatório, Julia falou sobre o caminho de Nullish Coalescing para o SpiderMonkey.




“Sintaxe de definição CSS” - Roman Dvornov


Os desenvolvedores de JS especialmente radicais às vezes afirmam que "o CSS não é mais necessário, tudo estará em JS". No entanto, o CSS era, é e é provável que seja. O romance falou sobre os fundamentos fundamentais necessários a todos.




“Desenvolvendo um compilador para TypeScript no TypeScript baseado em LLVM” - Dmitry Patsura


Compiladores são um tópico extremamente interessante e misterioso para muitos desenvolvedores de JavaScript. Dmitry falou sobre sua experiência na criação de um compilador StaticScript para TypeScript em uma exibição intermediária do LLVM.



, . HolyJS 2020 Piter — , . , — . .

All Articles