From Babel to GraphQL: HolyJS 2019 Moscow Talks

If you are a JS developer, then the browser is your home, but can you describe step by step all the actions of the browser to render your beautiful page? And you probably already heard about WebAssembly, but do you know what is “inside” of this technology?



The reports will help to delve into these and many other JS topics. HolyJS 2019 Moscow was held in November, and now its videos are open to everyone, and we traditionally publish a selection on Habré - in general, there is something to take a weekend on self-isolation.

"JavaScript Core, many compilers make this engine perform" - Michael Saboff


Michael spoke about the internal device of the fastest engine for JS - JavaScriptCore.




"Client rendering, server rendering, pre rendering. The full spectrum of JS website and application performance delivery ”- Guillermo Rauch


Guillermo is a co-founder of ZEIT (she is Vercel), the company that creates Next.js, which, in turn, is one of the main solutions for SSR on React. The report covers the topic server-side rendering well.




“Figma to React: design delivery to code” - Zar Zakharov, Alexander Kamenyar


But what if the designer and developer work together to automate the delivery of styles?
Figma is a new design tool. Figma, unlike Sketch, works on the web, the native environment of component design systems. She has an API. Alexander and Zar showed how to make friends design systems from two worlds.




“React rendering strategies: Get the most out of performance, keep bots happy” - Miguel Angel Duran Garcia


Think rendering in React is limited to client side and server side? Think again - you can use different rendering strategies, each of which has its own advantages and disadvantages. Details in the report.




“I will take all the data from you and you won’t even know about it. I am a browser extension ”- Nikita Mostovoy


Nikita showed what nuances you can expect when using these extensions, and demonstrated truly elegant attack vectors.




"Transpile anything to everything!" - Anna Herlihy


The problem with creating any ORM is that it needs to be done for every language and technology. Anna talked about how to make an interface suitable for most languages ​​and platforms.




"WebAssembly without cuts" - Andrey Roenko


If you are interested in knowing what WebAssembly is under the hood, see Andrey's report.




"@ Babel / how-to" - NicolĂČ Ribaudo


Nicolo is one of the main developers at Babel. From his report, you will learn how to make your own Babel plugin to support new features of the language or solve your problems.




“I18n the principles for an accessible web” - Romulo Cintra


The problem of internationalization is relevant for many developers and therefore has many solutions. You have a chance to learn about what options are now, and in what form they are going to solve this problem using the new API in JavaScript itself.

A month ago we already published the translation of the report of Romulo on Habré .




“GraphQL fragments on the client: History of occurrence, usage errors” - Pavel Chertorogov


More and more people are starting to use GraphQL. Pavel talked about the best practices that have accumulated in the industry, and why and how to use GraphQL fragments.




“Contract programming as a means, not an end” - Artyom Harutyunyan


Many people want TypeScript to have, in addition to static typing, runtime type checking. But the TypeScript team is not going to add this
functionality yet . What to do? Artyom proposed options for runtime types and voiced their shortcomings.




"From code to pixels in a Blink" - Prashant Palikhe


Can you describe the steps of the browser to display the contents of the page? If not, Prashant clearly showed what is happening and how it can be optimized.




“JavaScript in the service of theoretical computer science” - Vitaly Bragilevsky


A fundamental report from a person who revolves in the academic environment and is aware of all the latest trends in the theory of programming languages ​​and theoretical informatics. Vitaly spoke about how calculations are constructed in any language, told about the Turing machine, lambda calculus, etc.




“How do we pay for the transition from div to WebGL and what do we get (profit!), On the examples of PixiJS” - Ivan Popelyshev


After this report, you will be able to understand the problems when switching from a multifunctional DOM to WebGL to open the correct pages of documentation or code when you see strange artifacts that should not be.
The report draws parallels between solutions on DOM / CSS / SVG, canvas 2d and WebGL. The focus, of course, is on the latter.




“Career Efficiency and Career Path in IT” - Dmitry Voloshin


To lay a stone or burn a star. What is your path to IT? Dmitry Voloshin showed the most effective ways of development in the profession.




“(Not | well) rewarding Either monad in practice and theory” - Dmitry Makhnev, Artyom Kobzar


Sometimes concepts from functional programming can be applied today, right from your favorite TypeScriptJjavaScript. On how to conveniently handle errors and exceptions, a report from Dmitry and Artyom.




“From specification to implementation” - Yulia Startsev


Reports about the SpiderMonkey engine can be heard very rarely, and you have a great opportunity to listen to the person who works in the team of this engine and is the co-chair of TC39. In the report, Julia spoke about the path of Nullish Coalescing to SpiderMonkey.




“CSS definition syntax” - Roman Dvornov


Especially radical JS developers sometimes claim that "CSS is no longer needed, everything will be in JS." However, CSS was, is, and is likely to be. The novel spoke about the fundamental foundations needed by everyone.




“Developing a compiler for TypeScript on TypeScript based on LLVM” - Dmitry Patsura


Compilers are an extremely interesting and mysterious topic for many JavaScript developers. Dmitry spoke about his experience writing a StaticScript compiler for TypeScript in an intermediate LLVM view.



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

All Articles