
More confirmation of how impetuous the world of JavaScript is: only six months ago, when
HolyJS conference
was held in Moscow, Angular 2 was topical, and now Angular 4 managed to reach St. Petersburg. We will assume that there was a third one, but we blinked and missed it !
Since everything is changing so quickly, what was at the conference itself compared to the previous one? How did the famous
Douglas Crocford ? What were the other notable reports? All this - under the cut.
The first significant difference is organizational. The conference became a two-day one, not trying to push as many reports as possible into the grid, but instead giving half-hour breaks: you could ask the speakers in the discussion zones and participate in activities at the sponsors' stands, and discuss things with each other.
')
By the way, about the sponsors' stands - this time everything went great. There were not just a lot of stands; something was constantly happening around them. It seems that
VKontakte attracted the most attention, having organized a contest according to the rules of
“Code in the Dark” . Opponents made up the page on a given layout "blindly", they could not see the result of their own actions - but all the spectators could see the result and the code. More information about what is happening was written on the official
page of the contest (and it is not surprising that this page is VK-Public).

And what about the reports themselves, for which everyone gathered? Two days not to retell entirely, but we will note some moments.
Douglas Crockford spoke twice - with the opening keyout and the report “Goto There and Back Again”. Initially it was assumed that the keynoat will be “The Post JavaScript Apocalypse” (already
known from foreign conferences), but in the end it turned out to be even more interesting: the audience saw quite fresh material “Numbers”.

What was in it? Douglas started talking about numbers from afar, from the number of fingers and the Egyptian number system, and got to JavaScript very quickly (with the words "that only one type of numbers in JS saves us from a number of errors - but, unfortunately , this is the wrong type ").
All this may seem unnecessarily abstract - do we often need to think in our work about how numbers were treated thousands of years ago? But without taking this step back and not seeing the big picture, it is hardly possible to understand how to move forward. And Douglas switched to the future, where they could start to apply to numbers differently - for example, using the
DEC64 format, proposed by Crockford himself for the “next generation programming languages”. As he admitted, this is no longer added to JavaScript, but “we cannot leave JavaScript to our children, that would be terrible.”
Martin Splitt has become a regular hero of HolyJS. In December, the audience at the Moscow conference really liked his
talk about WebVR, and now he spoke with the theme “Rendering performance from the ground up”. It was a sharp contrast: instead of looking into a fascinating future with new interesting devices, this time it started from the “bottom” - because in the present many users are not as powerful devices as they would like, and think about the price of displaying any items still have to.
But something about Split remained unchanged: first, the blotches of Russian-speaking words (by this time he had learned not even very good words), and secondly, a very positive reaction from the audience (of course, a special revival caused a bad word). By the way, he himself, meanwhile, offers his help to Russian javascripts wishing to speak in English:
Imad Elyafi talked about the experience of migrating a huge service to React, which he received on Pinterest. Moreover, Imad's interesting experience is not limited to this: he previously worked on Facebook, where React appeared. Since he can compare how it is to work with React “inside” and “outside” Facebook, I immediately wanted to ask him about it. And since in the online broadcast of HolyJS between reports we did interviews with speakers, we asked there.
The answer turned out to be this: on the one hand, on Facebook, proximity to the creators of React is really felt (since the office is a “big hangar”, different developers often overlap with each other, and it’s easy to communicate with the team of interest). On the other hand, a third-party company can often afford more bold decisions when using React than Facebook itself. No wonder - in the end, Zuckerberg himself had already moved away from his early motto “Move fast and break things” to the much more cautious “Move fast with stable infra”.

Interviews were done with
Alexey Ivanov (Evil Martians), at a conference on the internal structure of the webpack bundle. And as a person who actively climbed inside the webpack, we asked, among other things, “Did the sensation of“ why is this all there, because of the mind should be like this ”, and, if so, that I would like to change in First of all? ”Aleksey replied that the sensation, of course, arose, and most of all caused him by the CSS loader: they say he is doing too much now, and even the creators of the webpack admit it.

In general, the words “setting up a webpack” are associated by many with unpleasant and inevitable procedures. But
Aleksey Zolotykh , who compared ECMAScript, TypeScript and Dart in the report, noted there that at least one way to avoid this pain exists: “The build tools for ECMAScript / TypeScript are many different, the only problem is that it is difficult to configure them all. And Dart is simple: he has a Pub, and he is out of the box. ” In the case of package managers, the situation turned out to be similar - a single “out-of-the-box” version of Dart versus a number of available options in ECMAScript and TypeScript, where even npm ceased to be a definite standard with the advent of Yarn.

In addition to the three languages listed, front-end vendors recently had another option.
Zalim Bashorov (JetBrains) told on HolyJS about the use of Kotlin in the frontend, and on his report they could experience déjà vu those who are familiar with the Java world. A couple of years ago, at the Java and Android conferences one could hear “introductory” reports about Kotlin: “there is such a young Java-compatible language that you might like more than Java, and here are its main features like nullability”. Time passed, the language gained momentum in the Java-ecosystem, a lot of developers using it appeared, and conversations moved from “it exists” to the analysis of narrower and more specific issues - such as the implementation of Corutin.
And with the recent release of the Kotlin 1.1 version, where a compilation in JavaScript appeared, the story went to a new level: now the javascriptors listened to HolyJS about the main features of a promising young language that they can use. Will JetBrains in the new territory succeed in performing just as successfully? Does it turn out that HolyJS 2019 will already be able to parse specific details for viewers who actively use the language in production? It is impossible to guarantee, but so far we can confidently say the following: quite a lot of spectators have gathered to hear about Kotlin on HolyJS, so there is an interest in the language.

JavaScript-world is often criticized for the fact that the developers in it are fixated on other people's solutions, chasing new-fangled frameworks and looking for an NPM package for every sneeze. When it provoked the left-pad-cataclysm, a
translation of the text appeared on Habré with the heading “We have forgotten how to program?”, And there are many who feel “It seems we began to forget how to write on JavaScript itself”. All of these at the conference could be pleased with the report of
Jacob Mattson “Forgotten funky functions”: he spoke precisely about the possibilities of the language, which turned out to be undeservedly forgotten.

Finally, she closed the conference with her keynote
Lia Vera , who cheerfully started “I am from the island of Lesbos, which technically makes me a geographical lesbian”. While someone divides everyone into “tech developers” and “humanities designers,” Leah loves both the code and the design — so much so that an hour before the performance she corrected the color hex codes in her presentation so that the color reproduction on the projector would .
And the performance itself was appropriate: she suggested looking directly at the code from the point of view of UX / UI. “We used to think that UX is something for designers. But if we open up the definitions of the words “usability”, “UX” and “UI”, they are generally not about design, they are much broader. ” How to code API to get a good user experience? Leah called a lot of components - reaching at the end that you need to be able to be not only professional, but also unprofessional: “We are used to portraying ourselves more and more hardcore, but from the point of view of usability, this actually hurts. When you know too much, you stop understanding usability issues. This is called the
"curse of knowledge. " Leah got out of timing, delaying the closing of the conference - but judging by the applause, many viewers would listen to it more and more.
See you in Moscow in December! Let's see how many versions of Angular will have time to go before it.
