„Wenn Apathie zu Python führt, dann führt konstruktive Suche zu Rust or Go“ / Sudo Null IT News

„Die chthonische Logik von Haskell, die schwerfällige Kraft der Pluspunkte und die schmutzige Flexibilität von Skriptsprachen treiben eine Person zu einer existenziellen Suche. Wenn Apathie zu Python führt, dann führt konstruktive Suche schließlich zu Rost or Go“, sagt Igor Netai, Spezialist in der Abteilung für fortgeschrittene Forschung bei Kryptonit.

Unser nächster Gesprächspartner ist ein Mathematiker und Analytiker, der sich mit neuronalen Netzen beschäftigt. Er beherrscht mehrere Programmiersprachen, spielt verschiedene Musikinstrumente und zeichnet neuartige geschwungene Kurven an die Wände. Treffen Sie Igor Netai, einen leidenschaftlichen Forscher und Mann-Orchester!

In welchen Sprachen hast du Programmieren gelernt?

„Ab einem gewissen Moment verstand ich das Programmieren nicht mehr und löste Probleme auf Mehmat mehr oder weniger wahllos, ohne darüber nachzudenken, was passierte, einfach auf Intuition. Dann dachte ich, dass es an der Zeit wäre, mit diesem Missverständnis aufzuräumen und ging zur Yandex School of Data Analysis (SHAD). Das half, gab mehr Verständnis, die Basis der Kultur und die Basis, von der aus man sich effektiv selbst entwickeln kann. Ich begann bereits als Programmierer an Bildungsprojekten teilzunehmen und studierte gleichzeitig an der Mekhmat der Staatlichen Universität Moskau, an der NMU, am ShAD und besuchte Kurse am Mathematischen Institut. Steklow. Dann hatte ich Programmieren für die Bedürfnisse der Ausbildung in allem (Python, Perl, Ruby), das nach und nach in die Haskell-Analytik überging.

Welche Sprache hat Sie am meisten beeinflusst?

– Eindeutig Haskell. Nach C++ und Skriptsprachen verändert es das Bewusstsein, wenn man tief genug darin eindringt, danach und in anderen Sprachen fängt man an, Code anders zu schreiben. Nach und nach führt diese Veränderung der Wahrnehmung und Denkweise jedoch logischerweise zur Entwicklung von Rust. Die chthonische Logik von Haskell, die schwere Macht von “Plus” und die schmutzige Flexibilität von Skriptsprachen treiben eine Person zu einer existenziellen Suche. Wenn Apathie zu Python führt, dann führt konstruktive Suche schließlich zu Rust oder Go.

– Jede Sprache hat ihren eigenen Anwendungsbereich?

– Ich spreche nicht von Anwendungsbereichen, in denen das eine oder andere akzeptiert wird und die Wahl durch bestehende Lösungen aufgezwungen werden kann, sondern von einem Vergleich mit Chancengleichheit. Als Mathematiker schätze ich Haskell. Es drückt ausnahmslos Strenge und Reinheit aus. Für einen Mathematiker-Entwickler löst Rust jedoch ein praktischeres Problem – es garantiert das Fehlen vieler Fehler, führt irgendwo nicht erweiterte Funktionen ein, aber umgekehrt – es schränkt sie so ein, dass die Sicherheit vor diesen Einschränkungen automatisch folgt, dies ist eine logische und schöne Lösung, während die Einschränkungen nicht so radikal sind wie in Haskell.

— Igor, wie bist du zu Kryptonite gekommen?

– Ich bin fast am Anfang in unser Unternehmen eingestiegen, als sich das Team gerade fertig machte. Genau zu diesem Zeitpunkt entschied ich mich, in der IT zu forschen, also war es eine sehr glückliche Kombination von Umständen.

— Was machen Sie in unserem Unternehmen?

— Jetzt arbeite ich an allgemeinen Aufgaben im Zusammenhang mit künstlichen neuronalen Netzen. Ich untersuche die Gründe für ihre Konvergenz oder Divergenz, ich untersuche Angriffe auf neuronale Netze, Verbindungen zwischen Architekturen und Trainingsdaten. Das Hauptziel ist es, etwas Neues, Nützliches zu finden und die Ergebnisse als wissenschaftliche Artikel zu veröffentlichen.

– Was hat Ihnen geholfen, eine so ungewöhnliche Position zu bekommen?

— Ich denke, diese Erfahrung in der Grundlagenforschung und ein ernsthafter wissenschaftlicher Hintergrund haben mir geholfen, einen Job zu bekommen. Ich habe meinen Abschluss an der Fakultät für Mechanik und Mathematik der Staatlichen Universität Moskau und der Unabhängigen Universität Moskau (NMU) gemacht, einen Ph.D. n. Außerdem hatte ich damals schon großes Interesse am Anwendungsgebiet und Erfahrung in der Programmierung in verschiedenen Sprachen.

– Was ist dein Hobby? Was hilft bei der Arbeit oder umgekehrt – von der Arbeit abgelenkt zu werden?

— In unserem ersten Büro spielte ich Geige. Auf einem regelmäßigen, akustischen. Später brachte ich die elektrische Violine ins Büro, und danach kamen das elektrische Cello, die elektrische Gitarre und die Oboe. Irgendwie wurden wir von einer Gruppe von Entwicklern interviewt. Sie fragten, ob es für sie normal sei, Arbeitsthemen lebhaft, emotional und laut zu diskutieren. Ihnen wurde gesagt, dass ein lauter Ausdruck von Gedanken niemanden stört. Hier spielt in der Regel ein Mitarbeiter direkt im Büro Geige und alle sind zufrieden. Die benachbarte Abteilung hat mir gegenüber sogar Bemerkungen gemacht … dass ich zu wenig spielen! Manchmal wurde gefragt, wer laut klassische Musik spiele. Wir haben geantwortet, dass niemand es einschaltet, ich spiele kein MP3, sondern PDF mit Notizen.

Wie geeignet sind die Arbeitsbedingungen für Sie?

„Die Atmosphäre ist perfekt für mich. Sie brauchen eine Balance zwischen selbstständigem Arbeiten, Diskussionen mit Kollegen und Ablenkungen. Komplette Fernbedienung – nicht meine. Zu Beginn der Covid-Pandemie wurde mir das klar. Höchstzeit im Büro ist wohl auch nichts für mich. Dennoch sind auch Ablenkungen in gewisser Menge erforderlich. Jeder hat seinen eigenen Tagesablauf, aber der Rhythmus unserer Abteilung passt mir persönlich am besten.

„Man sagt, Sie hätten H-Kurven an die Wand gemalt?“

– Ja. Zuerst baute ich so etwas wie einen Geohash für Räume mit drei oder mehr Dimensionen mit der Fähigkeit, Periodizität in einigen Koordinaten zu erzeugen. Das Ergebnis war ein Design, das mir gefiel, und ich wollte es mir für die Zukunft aufheben, ich habe es sogar mit einem Marker direkt an die Wand gemalt, so dass es vor meinen Augen war.

– Kurz gesagt, was sind diese Kurven und wie werden sie in der IT verwendet?

– Räumliche Sweep-Kurven sind nützlich, um Datenbankindizes zu erstellen, und große Datenbanken sind allgegenwärtig im täglichen Leben. Das sind soziale Netzwerke mit Instant Messenger, Medieninhalte im Internet und vieles mehr. Damit wir in irgendeiner Anwendung alles auf einem Smartphone sehen können, muss sich irgendwo schnell eine gewaltige Datenbank (DB) drehen. Und für jede Datenbank sind Indizes das wichtigste Werkzeug. Es ist die Konstruktion von Indizes, die H-Kurven stark beschleunigen, während andere nützliche Eigenschaften beibehalten werden. Die Logik ihrer Anwendung ist, dass die Modulo-Addition von Zweierpotenzen eine schnelle Operation ist und Kompositionen von Raumdrehungen (wie bei der Konstruktion der Hilbert-Kurve) nicht so schnell sind. Genaueres ist möglich lesen in einem Artikel, der in unserem Wissenschaftsblog veröffentlicht wurde. Hier finden Sie einen Link zum Preprint in arXiv und zur Zeitschriftenversion des wissenschaftlichen Artikels.

— Wie sind Sie auf eine neue Art von H-Kurven gekommen? War es eine Einsicht oder ein sorgfältiges Studium der Optionen?

„Seltsamerweise auch nicht. Wie üblich kam das Design, das ursprünglich für ein etwas anderes gemacht wurde, praktisch zur Geltung. Im Allgemeinen ist dies eine ziemlich häufige und eher typische Situation, dass erfundene Designs nicht nur dort oder nicht ganz wie erwartet funktionieren. In der Forschung ist die Situation typisch, dass „alles nicht so einfach und selbstverständlich war“, weil sich die Forschung nur mit dem Nicht-Offensichtlichen beschäftigt. Bei der Lösung eines Problems können gute Konstruktionen auftauchen, die oft für etwas Allgemeineres oder ganz anderes nützlicher sind. Aber man muss in der Lage sein, ein nützliches Design zu sehen und dann zu verstehen, was damit zu tun ist, unabhängig davon, wofür es ursprünglich erstellt wurde. Genauso wie die Lösung möglicherweise nicht die beste für das Problem ist, ist das Problem möglicherweise nicht die beste für die gefundene Lösung.Und für die gefundene Lösung müssen Sie immer prüfen, ob das Problem geändert werden muss. Das ist bei H-Kurven passiert.

— Was würden Sie denen empfehlen, die auch weiterführende Forschung betreiben wollen, aber nicht wissen, wo sie anfangen sollen?

– Wählen Sie verschiedene Aufgaben (spezifisch und ohne „Fermatismus“, dh ohne zu versuchen, die „Wunderwaffe“ und „Formel von allem“ zu finden) nach Ihrem Geschmack und prüfen Sie sie sorgfältig, wählen Sie sie auf unterschiedliche Weise aus, ohne sich auf Werkzeuge zu konzentrieren. Es muss keine Zeit für das Unverständliche und Komplexe verschwendet werden, im Gegenteil, es muss Zeit gespart werden für das, was klar ist und keiner Reflexion bedarf, es muss automatisiert werden, aber wiederum ohne Fanatismus und ohne Fokus auf den Prozess für das Prozess. In jeder unverständlichen Situation verstehen und nicht eilen, aber in einer verständlichen Situation nicht verweilen.

PS Wenn Sie Igors Kollege werden möchten, gibt es eine Stelle bei Kryptonite Fachforscher in der Abteilung für Fortgeschrittene Ermittler.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *