Am 24. und 25. August 2019 fand in St. Petersburg das
TechTrain 2019 IT-Festival statt, an dem Vertreter der Java-Gemeinden
JUG.ru (St. Petersburg),
JUGNsk (Nowosibirsk) und
JUG.MSK (Moskau) teilnahmen. Wie das Festival verlief, was am gemeinsamen
JUG- Stand war - all dies wird weiter beschrieben.

Ein bekannter Ort in St. Petersburg für Konferenzen der
JUG Ru Group ist das ExpoForum Convention and Exhibition Centre. Um Veranstaltungen am Stand vorzubereiten, ist es bequemer, am Vortag vor den Konferenztagen anzureisen.

Nacht- und Morgenansicht des Expoforums vor dem Festival. Eintritt in
TechTrain kurz vor dem Start, am Morgen des ersten Tages.
Stände von Unternehmen und Gemeinden
Am ersten Tag gibt es einen bestimmten Zeitraum, in dem die Teilnehmer der Ausstellung (an den Ständen von Unternehmen und Gemeinden) das Gebiet bereits betreten können, während normale Teilnehmer dies noch nicht können. Bei dieser Gelegenheit konnte ich schnell die Tribünen für die erste Bekanntschaft umrunden.

Links vom Eingang befinden sich Firmenstände, rechts Gemeinschaftsstände.
CROC- Stand, auf dessen Territorium traditionell Treffen der Moskauer Java-Gemeinschaft stattfinden. Informationsstand der Festivalorganisatoren.

Ein unerwartetes Treffen und Gespräch mit Evgeny Trifonov
phillennium , das ausnahmslos interessante Artikel
enthält , die die Leser von Habr regelmäßig lesen können. Gemeinschaftsstand
DotNet.Ru .

Stände der Programmiersprachen-Community
C ++ ,
JavaScript und
Go .
Aktivitäten am JUG-Stand
In diesem Jahr brachte der Stand der Russian
Java User Group (
JUG ) Vertreter von drei Gemeinschaften zusammen: Gleb Smirnov und Vladimir Sitnikov (
JUG.ru ), Ivan
Uglyansky (
JUGNsk ), Andrey Kogun, Ivan Ponomarev, Vladislav Senin und Autor des Artikels (
JUG.MSK ).
Zuvor wurde ein unterhaltsames und lehrreiches Programm für die Festivalteilnehmer vorbereitet und Preise ausgewählt, um die Gewinner der Wettbewerbe zu ermutigen.
Die Organisatoren des Festivals einigten sich mit Vertretern der Stände von Unternehmen und Gemeinden auf die Teilnahme an der allgemeinen Suche. Wenn man jeden Stand besuchte, der an der Quest teilnahm, musste man sich irgendwie beweisen, um den begehrten Stempel auf dem Programm zu bekommen.

Wir haben Fragen zur Programmiersprache
Java vorbereitet. Für 3 richtige Antworten wurde ein Stempel gesetzt, für 5 - ein Notizbuch wurde zur Auswahl gegeben, für 10 - ein
Holzpuzzle . Ein Superpreis waren 4 Tickets für die bevorstehende
Joker Java-Konferenz (2 Offline-Tickets und 2 Online-Tickets). Die Bedingungen für die Erlangung eines Superpreises sind nachstehend beschrieben.
Am ersten Tag der Fragen gab es 30, wir teilten sie in 6 5er-Sets auf, was darauf hindeutete, dass von 5 mindestens 3 richtig beantwortet wurden. Sorgfältig gedruckte Broschüren mit Fragen wurden schnell entweder zerlegt oder mit Antworten gekritzelt. Als vorübergehende Lösung wurden schmale Streifen mit Fragen aus Blättern geschnitten und auf dem Tisch gemischt.
Vor dem zweiten Tag haben wir die Fragen überprüft, einen Teil weggeworfen und andere hinzugefügt. Es gab 34 Fragen. Bei der Zusammenstellung der Fragen haben wir berücksichtigt, dass es sich bei der Veranstaltung nicht um eine Java-Konferenz handelt. Wir haben versucht, so freundlich wie möglich zu sein, damit Sie das Internet nutzen und die Antworten auf Fragen ausführlich erläutern können. Die Hauptsache ist nicht, einen Stempel zu bekommen, sondern neues Wissen zu erwerben.

Der zweite Versuch bestand darin, Tickets für 1/5 des A4-Blattes vorzuschneiden. Zusätzlich gab es 4 Kopien von Blättern mit einer einfach nummerierten Liste von Fragen, diese Option erwies sich als die bequemste. Es war erlaubt, Fragen aus der allgemeinen Liste auszuwählen.
Beim Drucken von vorbereiteten Dateien im
PDF- Format fühlte ich mich wie Teilnehmer der Suche - der Computer im Hotel war eine abgespeckte Version des Betriebssystems ohne die Möglichkeit, Datenträger zu durchsuchen. Es gab Verknüpfungen zu den portablen Versionen von
Word ,
Excel und
PowerPoint im Menü, aber es gab keine Möglichkeit, ein Programm zum Öffnen von
PDF auszuführen. Eine weitere Komplikation bestand darin, dass die Benutzeroberfläche und die Tastatur von Gästen der Hotel-Muttersprachler dieser Sprache auf Chinesisch umgestellt wurden. Die Entdeckung von
PDF in
Word wurde leider nicht gespeichert - das Layout war stark verzerrt. Beim erneuten Ankleben eines Flash-Laufwerks war es möglich, einen Moment mit der Möglichkeit zu erfassen, ein Kontextmenü zum Auswählen eines Ordners mit einer Datei zu öffnen.
Die endgültige Liste der Fragen- Welche Anweisung existiert im Java-Bytecode nicht: a) Lookupswitch b) goto c) throw d) return?
- C2, G1, C4, CMS - was ist überflüssig?
- Panama, Valhalla, Amber, Loom - was verbindet diese Worte?
- Für welche Lizenz ist OpenJDK lizenziert?
- Was ist ein C2-Compiler?
- Was ist ein Krug?
- Was ist GraalVM?
- Was ist 0xCAFEBABE?
- Was ist sun.misc.Unsafe?
- Was ist JPoint, Joker, JBreak?
- Wie viele russische Java-Champions gibt es derzeit (und listen Sie sie auf)?
- Listen Sie die drei beliebtesten Java-Entwicklungsumgebungen (IDEs) in absteigender Reihenfolge ihrer Beliebtheit auf.
- Es gibt eine Tradition, wenn die Namen von JVM-Programmiersprachen, Frameworks und Bibliotheken verwendet werden, um beispielsweise die Namen von Inseln zu verwenden. Welche?
- Die JRE- und JDK-Distributionen (zum Ausführen und Entwickeln von Java-Anwendungen) basieren auf OpenJDK-Code. Nennen Sie mindestens eine andere vorhandene Distribution als Oracle JDK.
- Welche JVM-Programmiersprachen kennen Sie (ausgeführt in Java Virtual)?
Maschine, kompiliert in Java-Bytecode oder JIT-kompiliert zur Laufzeit). - Nennen Sie mindestens einen freien (Open Source) und einen kommerziellen Anwendungsserver (AS) für Java.
- Wie alt ist die Java-Sprache? (Lesen Sie ab Release Version 1.0)
- Was sind JIT und AOT?
- Entschlüsseln und erklären, was JEP ist?
- Entschlüsseln und erklären, was JMX ist?
- Entschlüsseln und erklären, was JNDI ist?
- Entschlüsseln und erklären, was JSP ist?
- Entschlüsseln und erklären, was JSR ist?
- Entschlüsseln und erklären, was JPA ist?
- Entschlüsseln und erklären, was TCK ist?
- Verfügt Java über eine manuelle Speicherverwaltung?
- Was ist -Xmx? Was ist -Xss?
- OOM, NPE, IOOBE - was sind diese Abkürzungen?
- Werden Java-Programme interpretiert, JIT-kompiliert oder AOT-kompiliert?
- Gibt es in Java einen goto-Operator oder einen gleichwertigen Operator?
- Was ist Epsilon GC? Wie unterscheidet es sich von anderen GCs?
- Was ist ein schwaches Glied in Java? Welche Arten von schwachen Gliedern gibt es?
- Was ist der Unterschied zwischen einer ClassNotFoundException und einem NoClassDefFoundError?
- Finde 2 Fehler: Klasse Hello {void main () {System.out.println ("Hallo Welt"); }}
Während des Standes gelang es ihnen, mit mindestens Dutzenden von Festivalteilnehmern zu kommunizieren, wobei das Gespräch sehr oft zuerst begann. Der Besuch des Standes führte nicht immer zu Antworten auf den Erhalt von Preisen, viele beantworteten Fragen einfach so und stellten interessante Fragen. Zum Beispiel wurden mir persönlich folgende Fragen gestellt:
- "Kenne ich die Antworten auf alle gestellten Fragen?" (bejahte dies und sagte, dass er an ihrer Ausarbeitung teilgenommen habe)
- "Gibt es eine Zukunft für Java ?" (Ich meine, lohnt es sich, Java zu lernen, da die Kotlin- Sprache immer beliebter wird ? Sie kamen zu dem Schluss, dass auch in diesem Fall gute Java- Kenntnisse erforderlich sind.)
- "Was ist das erste Buch, das beim Lernen von Java gelesen wird?" (empfahl die 4. Ausgabe von Thinking in Java von Bruce Eckel: entweder sofort die englische Version oder zuerst Russisch und dann Englisch mit den restlichen Kapiteln, die nicht in die russische Übersetzung übersetzt wurden)
Errate das Lautsprecherspiel
Speziell für das
TechTrain- Festival wurde die Webanwendung Guess the Speaker geschrieben. Der Code befindet sich im
GitHub-Repository : Das Backend ist in
Java (mit
Spring Boot ) geschrieben, das Frontend in
TypeScript / JavaScript (mit
Angular ). Das Spiel ist weiterhin auf dem Server
jugspeakers.online verfügbar (falls die Site nicht verfügbar ist, können Sie das bereits erstellte Distributionskit von
GitHub herunterladen, um es selbst auszuführen oder zu kompilieren, siehe
Beschreibung ). Die Anwendung wurde auf einem Laptop gestartet und auf Plasma ausgestrahlt. Außerdem wurden die Teilnehmer der Quest und die Besucher des Standes eingeladen, sie selbst auf ihren Smartphones und Laptops zu spielen.
Das Programm enthält Fotos von Rednern aller Konferenzen der
JUG Ru Group für alle Jahre sowie aller Sitzungen von
JUG.ru ,
JUGNsk und
JUG.MSK . Der Spieler wird aufgefordert, einen oder mehrere Sätze auszuwählen, von denen jeder eine Konferenz ist. Nach der Auswahl wird unten die Anzahl der Lautsprecher in den ausgewählten Sets angezeigt. Beim Kombinieren verschiedener Sätze von Duplikaten (dieselben Personen können Sprecher verschiedener Arten von Konferenzen sein) werden ausgeschlossen. Wenn Sie alle Geräte auswählen, beträgt die Gesamtzahl der Lautsprecher 954.

Die erste Ansicht des Bildschirms zeigt die Situation, in der nur eine erste Konferenz ausgewählt ist. Die zweite Art von Bildschirm sind die vorgeschlagenen 6 Sätze für das Spiel, um Preise zu gewinnen (3 Java-Konferenzen und 3 Arten von Java-Mitaps). Somit war die maximal mögliche Anzahl von Punkten 285. Vielleicht zwei Arten von Spielen - erraten Sie den Vor- und Nachnamen auf dem Foto (siehe den dritten Screenshot) ...

... und umgekehrt - erraten Sie das Foto nach Vor- und Nachnamen (siehe vierten Screenshot). Am Ende des Spiels werden die Ergebnisse angezeigt: Die Anzahl der richtig, falsch beantworteten und verpassten (wenn das Spiel unterbrochen wurde) Fragen. Außerdem haben Sie die Möglichkeit zu sehen, bei welchen Problemen Fehler gemacht wurden (siehe den fünften Screenshot). Das Spiel kann jederzeit durch Auswahl des Links „Abbrechen“ unterbrochen werden (siehe den sechsten Screenshot).
Vergabe der Gewinner
Die Ergebnisse des Wettbewerbs wurden am zweiten Tag um 16:00 Uhr bekannt gegeben. Die sechs Personen, die von 285 möglichen Punkten die meisten Punkte erzielten, hatten die Möglichkeit, ihre eigenen Preise zu wählen.

Andrei Kogun und Aleksey Stukalov (Konferenzsprecher auf den Fotos im Spiel) in der Nähe des Plasmas auf dem Stand. Ein Board mit aktuellen Ergebnissen. Andrew beginnt eine Bestandsaufnahme und gibt die Gewinner bekannt.

Gewinner und Zweiter mit ausgewählten Preisen.

Zweiter mit einem Regenschirm mit dem
Joker Conference-Logo.

Fünfter und sechster Platz. Ivan Uglyansky, Andrei Kogun und Gleb Smirnov - müde, aber zwei Festtage würdig.
Interessante Leute am Stand
Alexey Stukalov (
Haulmont ), Anton Arkhipov und Yuri Artamonov (
JetBrains ), Alexander Belokrylov (
BellSoft ), Nikita Salnikov-
Tarnovsky (
Plumbr ), Evgeny Trifonov, Oleg Chirukhin und Alexei Fedorov (
JUG Ru Group ), Oleg Dokuka (
Netifi ) - alle Diese würdigen und interessanten Leute, die in direktem Zusammenhang mit
Java stehen , sahen sich den Stand an und konnten mit ihnen sprechen.
Berichte
Ich habe am ersten Tag zwei Berichte gesehen (Grigory Bakunov "KI gegen KI", Roman Gordeev "Auf dem Weg zu einem verteilten System") ...

... und zwei Berichte im zweiten (Sergey Abdulmanov "Warum Sie nicht in kleine Unternehmen gehen sollten", Richard Stallman "Freie Software und Ihre Freiheit").

Ich werde auf jeden Fall mindestens drei weitere Berichte in der Aufnahme anschauen: John Romero "Quake Postmortem", Evgeny Borisov "Spring Patterns", Kirill Tolkachev und Maxim Gorelikov "Getting sh! T" im Devops-Stil: Entwerfen Sie so, dass Ihre Kollegen Sie nicht wollen zu kneifen. "
Nichttechnische Aktivitäten
Neben Berichten und technischen Tests gab es viele nichttechnische Ereignisse. Eine davon war die Gelegenheit,
DOOM mit
John Romero , einem der Macher des Spiels, zu spielen. Am ersten Tag in derselben Halle gab er Autogramme. Leider habe ich nicht gedacht, eine sehr lange Reihe von Menschen zu fotografieren, die ein Autogramm wollten.

Sie beeilten sich zum Mittagessen, um so schnell wie möglich zum Stand zurückzukehren, und hielten unwillkürlich an, um das Spiel zu verfolgen. Zu dieser Zeit saß rechts rechts ein neuer Rivale John.

Es war sehr interessant, die Konfrontation zu sehen - der Bildschirm links zeigte das von einem Spieler sichtbare, auf dem Bildschirm rechts das zweite. Das Foto
ganz rechts zeigt
Cacodemon von
DOOM vom Stand der Computerspiele.
Spielautomaten und Computerspiele

Die Zeit, die frei war, um am Stand zu stehen und Berichte zu besuchen, blieb nur die letzte halbe Stunde, bevor das Festival endet. In dieser Zeit gelang es mir, alle Spielautomaten zu spielen, einschließlich der Erfüllung meines Kindheitstraums - zum ersten Mal in Sniper zu schießen (es stellte sich heraus, dass das Spielen einfach genug ist).

Zusätzlich zu den Maschinen gab es Schubladen (linkes Bild), gemäß den Inschriften, auf denen man erraten musste, was sich darin befand. Wenn man eine Antwort annimmt, kann man die Hände zum Anfassen in den runden Vorhang legen und durch Drücken der Hintergrundbeleuchtungstaste von oben durch die Fenster schauen. In transparenten Würfeln (zweiter Schuss) befanden sich verschiedene duftende seltene Gegenstände, deren Geruch man spüren konnte, wenn man die Nase näher an die Löcher brachte. In Holzwürfeln (Foto rechts) gab es etwas, das durch das Geräusch erraten werden musste, indem er den Kopfhörer an sein Ohr drückte.

In der Ecke der Computerspiele befand sich hier das Monster von
DOOM , das oben mit einem Foto von John Romero zitiert wurde.
JUG koordiniert die Teilnahme am Festival
JUG.ru :
JUGNsk :
- Meetup - Ankündigungen von Meetings und Registrierung für sie, Abonnement einer Benachrichtigung per E-Mail über Meetings
- YouTube - Videoberichte
- Speaker Deck - Präsentationen
- VK - Ankündigungen von Besprechungen, Fotoberichte, Links zu Materialien vergangener Besprechungen
- Twitter : Konto (Ankündigungen von Besprechungen, Fotoberichten, Videos) und Hashtag (Tweets mit Kommentaren zu Besprechungen)
- Telegramm - Ankündigungen von Besprechungen, Fotoberichte, Links zu Materialien aus früheren Besprechungen, Kommunikation
JUG.MSK :
- TimePad - Ankündigungen von Besprechungen und Registrierung für diese, Abonnement einer Benachrichtigung per E-Mail über Besprechungen
- YouTube - Videoberichte
- Speaker Deck - Präsentationen
- VK - Ankündigungen von Besprechungen, Fotoberichte, Links zu Materialien vergangener Besprechungen
- Twitter : Konto (Ankündigungen von Besprechungen, Fotoberichten, Videos) und Hashtag (Tweets mit Kommentaren zu Besprechungen)
- Habr - Bewertungen von Besprechungen, Sie können alle Bewertungen nach Tag finden