St. Petersburg JavaScript Conference
HolyJS began almost as an adventure. Starting a completely new conference, when preparation time is very limited - a bold decision.
Such adventurism fits well with the spirit of the JavaScript-world itself, where everything happens swiftly, and bold decisions are often necessary. But is it possible in that case to hold a high-level conference, with interesting reports and without organizational problems? What was the result of the event? Under the cut - a story about how it went.

')
The conference was made by joint forces: the organization was engaged in the JUG.ru Group, and the program was prepared by SPB Frontend. The logical division of labor: the former have a great experience in organizing other conferences, and the latter have knowledge of the JS world, which allows for an adequate level of reports.
However, in the opening keyout from
Denis Mishunov (Digital Garden AS), knowledge of the subtleties of JavaScript was not required: it was not about them, but about the subtleties of human perception. Chasing milliseconds and kilobytes, it is easy to forget that on the front end the whole race is initially needed for the sake of the user. And how good the user will be depends not only on milliseconds.

In some cases, it can go as far as “slower” would mean “better”: for example, when the user feels that something very important is happening, and instant execution will seem to him “hack-work”. And in others it will be better to “faster”, but at the same time the user will feel the fastest is not the service, in favor of which they say benchmarks.
The report ended with a reference to the Apple documentation for developers, which directly
states : "In many cases,"

Mishunova on the main stage was replaced by
Viktor Rusakovich (GP Software.travel) with a report on reactive programming, and everything immediately became much more technological. Having described the composition of RxJS as “objects, operators, and magic,” Rusakovich walked through the second paragraph in detail. The goal “to paint each operator” was not intended (there are simply too many of them), but specific examples illustrated by the “balls” from the
RxMarbles website
provided a good general idea.
Then
Dino Esposito talked about the recognition of devices and the different display of sites on them. He recalled that, on the one hand, the user agent string cannot be trusted (“somehow we tested a cheap Chinese tablet, so he pretended to be an iPad”), but on the other hand, it’s not a panacea to determine device parameters and rely on responsive web design (“The main problem is that it is equally good with a 480 pixel wide computer browser window and a smartphone with a 480 pixel screen width”).

It was curious to observe the contrast with how the same Esposito
spoke two days earlier on DotNext. In the .NET world, he is a major authority, and at the relevant conference he shone on the main stage like a rock star in front of bewitched fans. Here he was just one of the speakers of the second hall, and he didn’t bring down such a dense stream of sharpness. However, it would still not have been possible to confuse him with someone else: you can't hide such charisma.
He was replaced by
Mikhail Druzhinin (Luxoft) with a story about JavaScript portals: “It happens that you need to place several different modules on one page. And if they do not depend on each other, then in this case they are still lucky ... ”. But for now, Mikhail was sorting out how the
F2 framework could help, in the third hall,
Alexey Simonenko, with the report “How I stopped believing technologies” (and with an enviable beard), criticized running around for new frameworks and other tools.

With the rapid development of the JS world, it is not surprising that the silver bullet syndrome is especially strong in it: here, almost every day, something new promises to correct all the mistakes of the predecessors and make your project much more successful. But the article "No Silver Bullet", this year celebrating the 30th anniversary, has not become less relevant since the moment of the composition. Therefore, it is not surprising that the appearance of objections "where are you rushing like this, look at real examples, as the transition to something new did not at all relieve you of all problems."
Simonenko originally built a report, starting with the glorification of the new miracle cure Hype.js and only then admitting that it does not exist. Later, he cited the classic The Hype Cycle diagram, reminiscent of the fact that any new technology has a “peak of high expectations,” usually replaced by a painful disappointment. Therefore, while someone is constantly jumping from one technology to another, the speaker has already jumped and filled cones and advised "work with what you know."

At lunchtime, like
on the eve of Mobius , you could hear the discussion of tasks from EPAM. Their set was partially different, but the problem of an infected chessboard fell into the list again - and again attracted attention. In addition to the tasks, the EPAM stand was remembered by many opportunities to play with the development designer Qubidoo, forcing the ball to roll along the groove. The designer’s website
says “from 3 years to 140 IQ”, and this ironic definition seems to be true: on HolyJS, adult men enthusiastically fiddled with a toy that could arouse interest in a three-year-old.
After lunch,
Vasilika Klimova (Artec Group) talked about WebGL. For an ordinary front-end without experience working with 3D graphics, the topic may seem distant and frightening, but Vasilika explained that there is nothing to fear: using the
Three.js library turns out to be much simpler than you might expect. From general words and spectacular demo videos, she went directly to how shaders write, and the examples turned out to be quite accessible to viewers without WebGL-experience: yes, in order to turn the color model into black and white, the average color of three colors should be derived from RGB arithmetic, logical.

In addition to the content of the report noted by many, he was also impressed in a very different way. So far, at IT conferences, it is not often possible to see how a charming girl explains to men “you are in vain, I figured it out, it's okay,” and such a picture could tear a template to someone from the audience. But judging by the appearance of events like
Ladies Code , where Vasilika participated among others, women's interest in IT is growing, and in the future this may become a much more familiar picture.

Then, in the same room,
Kirill Sukhomlin (EPAM Systems) talked about where the new JS features come from, and this clearly showed the difference between the JS world and others. At the DotNext and Mobius conferences, there was no question of where the new features in .NET or Swift come from - it’s immediately clear who has a head. And in the case of JavaScript, the role of Ecma International is thought much less.
But in the process of its development the same incidents occur as in other worlds. As Kirill explained, the fourth version of ECMAScript was the most ambitious, but in the end it turned out to be abandoned, and the fifth, on the contrary, could be called “blowing the water”. It made you remember that Dino Esposito on DotNext talked about what was happening with (ASP). NET Core: Microsoft made a revolution, but without bringing it to release, was scared of the results and gave the brakes.
In the meantime, Esposito himself found an interesting activity at the conference. On HolyJS, besides him, there was only one English-speaking speaker, so Dino could not listen to the reports all day long. But he found a suitable interlocutor, embarking on a chat with him and taking pictures of him: it was “Fyodor Robot” who easily switched to English. It is difficult to say which of this pair looked more colorful and wittier.

He closed the conference with keyout from
Vyacheslav Egorov (Google), who worked on the V8 engine. An interesting symmetry with the opening keyout was obtained: both were about performance, but the first was about psychology and perception, and the second, on the contrary, about technological hardcore and engine internals.
And even in the top 10 reports on the reviews of the audience, these two performances were on adjacent positions, second only to disbelief in technology:
1. Alexey Simonenko - How I stopped believing technologies
2. Vyacheslav Egorov - JavaScript performance through a telescope
3. Denis Mishunov - In Pursuit of Productivity: User Psychology
4. Victor Grishchenko - Swarm: we synchronize a swarm of devices
5. Nikolay Ryzhikov - JavaScrip within PostgreSQL
6. Alexey Okhrimenko - Parsers are Sparta
7. Vasilika Klimova - Practical Application of WebGL
8. Roman Dvornov - CSSO: we optimize CSS
9. Igor Zotov - Iskra JS: JavaScrip in a microcontroller
10. Mikhail Novikov - Convenient API with GraphQL
The report of Egorov echoed the fact that Alexey Shipilyov arranges for Java conferences: a deep knowledge of the “guts” was combined with a lively presentation, and the harsh numbers of benchmarks with vivid illustrations. Moreover, even in the choice of illustrations, these two speakers have intersections:

At this speech, when the conference was already at the finish line, suddenly there was a problem with the technique, and for some time the hall was left without slides. As Yegorov noted, right before the report, Aleksey
23derevo Fedorov told him: “Once for the whole event, not a single technical upgrade has occurred, it means that something will happen on yours, get ready”. It was funny to see how accurate these words turned out to be: the phrase from the anecdote “the wall collapsed right on schedule” received a completely literal embodiment.
But then the technique came to life, and it came to the final “Thank you” slide. And the rest of the conference was surprisingly seamless for the first time, and audience reviews showed that if HolyJS was organized and it was an adventure, then it was clearly a success.
