Larisa Safina, Universiteiten van Zuid-Denemarken en Innopolis - over niet-vervalbare stereotypen en functionele programmeertalen

Larisa Safina— hoofddocent aan de Innopolis Universiteit, momenteel gepromoveerd aan de Universiteit van Zuid

Denemarken. Ze werkte als softwaretester bij Fujitsu, waar ze voornamelijk aan retailprojecten werkte. Ook werkte ze als testlead bij Fix aan verschillende projecten.

Bestudeert programmeertalen zoals Haskell, Kotlin en anderen.

Haskelists, functionele programmering en populaire talen

- Wat deed je precies in de magistratuur in software van de University Innopolis?

- Het was een programma gekocht van een universiteit.Carnegie Mellon. Het is goed gevormd in de loop van de tijd, het omvat cursussen over software-analyse, architectuur en methoden. Het belangrijkste en interessantste deel begint met het tweede semester - studenten zijn verdeeld in teams en ze werken aan echte projecten. Ten slotte werd onze effectiviteit beoordeeld aan de hand van de manier waarop we met dit project omgingen.

– Wat was je project?

— We werkten voor Rusnano, en ons project was dat ookafstandsbediening van verlichting in sommige steden - de verlichting volgens een schema inschakelen. Ze hadden een oude oplossing, maar wilden overstappen naar een nieuwe.

Bij dit project heeft iedereen alles gedaan, het was belangrijk datiedereen probeerde een rol. Natuurlijk hebben sommige mensen de neiging om één te zijn, anderen hebben een andere. Maar in ons project slaagden we er allemaal in om code te plassen, de vereisten uit te werken, te testen en zelfs architectuur. Dit is het hoofddoel van dergelijke projecten.

- Het werd interessant met welke talen je werkt.

— Tijdens mijn studie en werk moest ik welwerken met meerdere talen. Op dit moment schrijf ik bijvoorbeeld in Kotlin. Ik vind hem het leukst. Maar we schreven het project met Rusnano voornamelijk in C#. Vaak heb ik te maken met Java, als tester schreef ik tests in Python, Java, C#. Voor mijn eigen plezier studeer ik vaak functionele programmeertalen, bijvoorbeeld Haskell, en formele talen, bijvoorbeeld voor het bewijzen van stellingen - Coq.

Functioneel programmerenis een programmeerparadigma waarin het procesberekeningen worden geïnterpreteerd als het berekenen van de waarden van functies in de wiskundige zin van deze laatste (in tegenstelling tot functies als subroutines bij procedureel programmeren).

Haskell- gestandaardiseerde puur functionele taalprogrammeren voor algemene doeleinden. Het is een van de meest voorkomende programmeertalen met ondersteuning voor lazy computing. Omdat de taal functioneel is, is de belangrijkste besturingsstructuur een functie.

Coq- interactieve softwaretoolStellingbewijzen met behulp van onze eigen functionele programmeertaal (Gallina) met afhankelijke typen. Hiermee kunt u wiskundige stellingen en hun bewijzen opschrijven, ze gemakkelijk wijzigen en op juistheid controleren. Coq wordt gebruikt voor programmaverificatie.

Formele taal— in wiskundige logica en informatica —een reeks eindige woorden (reeksen, kettingen) over een eindig alfabet. Het concept van taal wordt het vaakst gebruikt in de automatentheorie, de berekenbaarheidstheorie en de algoritmetheorie. De wetenschappelijke theorie die zich met dit object bezighoudt, wordt de theorie van de formele talen genoemd.

— Dit klinkt allemaal geweldig, maar deze talen worden momenteel niet gebruikt in echte projecten. Haskell wordt bijvoorbeeld zelden gebruikt, hoewel ik me geen enkel project kan herinneren dat het gebruikte.

- Ik ben het waarschijnlijk niet met je eens.Haskell wordt bijvoorbeeld gebruikt in de productie. Ja, niet vaak, maar niet omdat het grof taalgebruik is, maar eerder omdat het behoorlijk lastig is om een ​​team van Haskellisten samen te stellen. Ik ken echter mensen die in de productie met Haskell werken. Ik doe het gewoon voor mijn eigen plezier. Ik heb geen andere functionele talen in productie gezien, maar het is goed om ze te begrijpen voor algemene ontwikkeling. Wat betreft talen voor het bewijzen van stellingen, in de academische wereld worden ze, als je in dit specifieke onderwerp zit, vrij vaak gebruikt.

- Maar ze worden specifiek gebruikt voor wiskundehet modelleren en bewijzen van stellingen - met andere woorden voor wetenschappelijke doeleinden. Als je naar vacatures kijkt, zijn Haskellists vrijwel nergens nodig; iedereen wil respectievelijk C+, Java, Python, Ruby, Go of gaat zelfs naar de frontend - JavaScript. Maar de ontmoeting met de Haskellists is werkelijk een verbazingwekkend verhaal.

– Laten we zeggen dat ze helpen bij het formaliserensommige dingen die in werkelijkheid te zien zijn. Van stellingbewijzende talen tot Haskell is het in principe niet ver, en van Haskell tot de industrie is het ook op een steenworp afstand. Dat wil zeggen, niet alles is zo slecht en nutteloos.

Dit heeft waarschijnlijk allemaal te maken met de omgeving waarin ik mij bevind. En dit lijkt mij niet zo ongebruikelijk.

Denemarken, PhD en microservices

– Waarom zijn zulke talen dan niet populair in de rest van de wereld? En waarom zijn ze interessant voor jou?

- Kortom, omdat er geen dringende noodzaak isgebruik ze. Als het mogelijk is een probleem eenvoudiger op te lossen, als het niet superkritisch is, en als het niet een soort Boeing-systeem is, en je met kleinere wapens rond kunt komen, dan wordt er voor andere talen gekozen. Waarom vind ik ze leuk? Weet het niet. Houd je van iets: bloemen, boeken, katten? Waarom hou je van katten?

- Zegels houden van allemaal. Ik vind het leuk wat je krijgt in Denemarken. Hoe ben je na Innopolis gekomen?

- Toen ik in een magistraat studeerde, behalve de hoofdrolspelerbanen die we moesten maken met de elektrische fiets. En een van de keuzemogelijkheden die ik heb gekozen, had betrekking op het thema microservices, of preciezer gezegd, met de programmeertaal microservice - Jolie. De auteur is momenteel werkzaam in Denemarken. Mijn taak was om het aan te passen - om te verfijnen, om een ​​van de mogelijke operatoren te implementeren.

incut

Toen ik een baan kreeg bij de Innopolis Universiteit, was ik dat albaan, de baas vroeg wat ik wilde doen, mijn antwoord was om te promoveren. Op dat moment deed zich de mogelijkheid voor om kandidaat te worden voor een academische graad van die professor uit Denemarken - de uitvinder van de Jolie-taal. Daarom organiseerden we een gezamenlijk doctoraat tussen de Innopolis Universiteit en een Deense universiteit, de Universiteit van Zuid-Denemarken.

- Wat ben je precies aan het doen in Denemarken?

- In Denemarken werken we aan één project, hijenigszins geassocieerd met microservices en, in principe, met de interactie van elementen binnen gedistribueerde systemen. Mijn wetenschappelijke leiders stelden formalisering voor - een algemene specificatie voor microservices. Ze hebben aangetoond dat u een specificatie voor elk item kunt weergeven.

We kunnen het gebruiken als we het hebbeneen soort systeem van op elkaar inwerkende elementen. Als we zonder een orkestrator een algemene specificatie kunnen afleiden van het gedrag van alle elementen - zonder een knooppunt dat alle andere bestuurt - dan kunnen we daaruit voor elk knooppunt een specificatie afleiden, en omgekeerd. Op deze manier beschermen we onszelf tegen fouten, want als we voor elk knooppunt afzonderlijk een specificatie zouden maken, zouden we later problemen kunnen tegenkomen met hun interactie.

Universiteit van Zuid-Denemarken. Foto: ricochet64/Shutterstock

Stel je het scenario voor:u wilt geld naar de ene bank sturen, die het naar een andere bank moet overmaken. En je hebt voor de ene bank een specificatie geschreven dat deze ze naar de tweede bank overmaakt, en bij de tweede vergat je te zeggen dat deze iets zou moeten ontvangen. En dus komt uw overboeking nooit bij de ontvanger terecht. Als je eenmaal een globale beschrijving van dit systeem hebt, waarin je alle rollen en acties specificeert die elk van de deelnemers moet vervullen, kun je een specificatie afleiden van het gedrag van elk van de deelnemers, en jezelf zo tegen een dergelijk probleem beschermen.

Mijn supervisors hebben dit geformaliseerd,door twee theoretische talen te schrijven om het globale model van knooppunten en het gedrag van een specifiek knooppunt te beschrijven. Mijn taak is om te implementeren en te testen, om te laten zien hoe effectief hun voorgestelde model is vergeleken met anderen.

Waarom subsidies voor vrouwen - het is een schande

— Toen ik schreef dat ik met je wilde praten over IT en vrouwen, zei je dat het niet zo gemakkelijk zou zijn om erover te praten, maar je was bereid om het te uiten. Waarom heb je deze mening?

– Ik denk dat dit een nogal gevoelig onderwerp is.En ik vroeg me af of het de moeite waard was om hierover te praten en het wespennest in beweging te brengen. Want het is echt alsof je door een mijnenveld loopt. Wat je ook zegt, iemand zal beledigd zijn, en sommigen zullen denken dat je het over een soort wilde ketterij hebt.

- Waarom denk je dat?

— In principe zie ik vaak verschillende reacties van mensen op deze vragen. Dergelijke onderwerpen worden vaak besproken. En ik zie een diversiteit aan meningen.

– Toen je naar de Kazan Universiteit ging om de mannenspecialiteit te studeren, werd dat niet langer als een mannenspecialiteit beschouwd?

- Ja, ik begrijp niet waar de mening vandaan kwam, dat dit een mannelijke specialiteit is. We hadden ongeveer 50% van de meisjes aan de VIC (aan de Kazan University - "High-tech").

- En toen u wegging, was er een verschil in houding ten opzichte van wat u in Denemarken en Rusland doet?

- Dat heb ik nog nooit meegemaaktop de een of andere manier gekleineerd op basis van geslacht. Als je bedoelt: heeft iemand hier in Denemarken mij verteld dat ik een mannelijke specialist ben, nee. Maar het verschil is dat ze hier echt willen dat er meer vrouwen zijn in zowel de IT als de academische wereld. En dat willen ze niet zomaar, ze nemen enkele maatregelen, en soms doen ze, vanuit mijn standpunt, zelfs meer dan nodig en de moeite waard is.

- En welke maatregelen worden er genomen?

- Nou, van wat is, bijvoorbeeld, deze zijnprogrammeren alleen voor vrouwen. Een collega zei dat dit een ketterij is en dit creëert gewoon segregatie tussen mannelijke en vrouwelijke programmeurs. Ik was het met deze aanpak eens, maar de organisator van de cursus was enigszins verrast. En na een tijdje vroeg ik hoe deze cursussen gingen. En het bleek dat er veel meisjes kwamen, voor veel meisjes was er een verschil - alleen in een vrouwelijk bedrijf of in een gemengd bedrijf. Velen wilden puur in het vrouwtje gaan, het verschil was visueel voelbaar - het was geen ongeluk. En ik besefte dat als ik dit probleem niet zag, omdat ik in mijn ivoren toren was, ik niet opmerkte dat meisjes zich misschien zouden schamen of om een ​​of andere reden geen contact met jongeren willen maken, maar dit betekent niet dat er geen probleem is.

incut

En wat betreft andere dingen die anders zijnIn Europa en Rusland bestaat er, als het gaat om het ijverig aantrekken van vrouwen, zoiets als een quotum. Plaatsen, bijvoorbeeld beurzen, kunnen specifiek voor vrouwen worden gereserveerd. En dit creëert, vanuit mijn oogpunt, een niet erg goede trend, omdat vrouwen die deze plekken krijgen vaak niet altijd weten of ze ze hebben gekregen omdat ze zelf cool zijn, iets heel cools hebben gedaan, of omdat ze ze hebben gekregen, omdat iemand besloot dat er niet genoeg vrouwen in dit gebied waren. Dit is de andere kant van de medaille. Er is een positief effect (je hebt een subsidie ​​gekregen) en een negatief effect (de reden waarom je die hebt gekregen).

— Zou jij ooit een beurs willen ontvangen omdat je een vrouw bent?

— Вообще, я считаю, что это довольно обидно. (Смеется)

— Обидно получать грант, потому что женщина, а не потому что вы клевый специалист?

— Да, потому что это говорит о том, что была оценена не моя работа, а моя половая принадлежность.

— А как вы думаете, вашу работу когда-либо, в России или в Дании, оценивали ровно из-за того, что вы женщина, или менялась оценка вашей работы окружающими людьми из-за того, что вы женщина?

- Weet je, op een of andere manier had ik dit, zoals ik me herinner, hier niet mee te maken. Misschien ben ik naïef en weet ik gewoon niet dat dit gebeurde, maar niemand zei me: "Dit is goed voor een meisje."

Positieve discriminatie, decreet voor mannen en niet-dodende stereotypen

— А ваши родители как отнеслись к вашим выбору карьеры — положительно? Или у них был какой-то взгляд иной на то, чем вы должны были заниматься?

— Вообще, когда я училась в школе, после окончания хотела заниматься языками, а мои родители предложили выбрать все же математику и программирование, потому что они сами относились к языкам как к инструменту, который можно изучить позднее, а к математике и программированию — как к чему-то более фундаментальному. Забавно, что многие ученые относятся к математике как к инструменту.

И, честно говоря, меня всегда удивляло, почему есть такой какой-то нездоровый ореол сложности именно у технических специальностей. Я считаю, что это нечестно и как раз отпугивает девчонок. Например, я никогда не слышала, чтобы девочкам, которые хотят заниматься лингвистикой, говорили: «А, там же историческая грамматика, это так сложно!». Или девушкам, которые хотели пойти на архитектора, говорили: «Ой, там же тоже придется много заниматься сопроматом». Я сейчас могу напутать, скорее, девушкам-инженерам, ну или как анатомия для медиков. Но почему-то именно у технических наук есть такое.

- Ik kom uit Sint-Petersburg en hoorde heel vaak: voor wie ik studeerde, voor wie ik werkte of waar ik in geïnteresseerd was, het is niet voor een vrouw. En mijn vrienden zeiden hetzelfde als ze plotseling geïnteresseerd waren in wiskunde, programmeren of wetenschap.

— Мне кажется, что, наоборот, в нашем регионе более патриархально, чем у вас, поэтому я, конечно, удивлена. Мне кажется, это как-то связано с конкретной средой. Возможно, в юности… нет, я не могу сказать, что мне как-то повезло, в университете ко мне относились как подобает. Но, например, вождение. Я никогда не получала столько оскорблений на гендерной почве, как за рулем. При том, что это абсолютно не имеет под собой основания. Поэтому я знаю, что есть неубиваемые стереотипы, и многие женщины с ними сталкиваются. Почему я не столкнулась с ними в плане работы? Наверное, потому что была окружена людьми не из той среды, для которых это было бы нормальным.

— Какие мнения у ваших датских коллег? Получается, что если они занимаются инициативой — к примеру, курсами для женщин, то они эту проблему видят.

— Да, несомненно. Мы иногда такие темы обсуждаем, как с курсами. Или, например, я считаю не совсем честным, что женщина часто теряет некоторое количество времени, находясь в отпуске за ребенком. Грубо говоря, она теряет год опыта. В Дании существует такое решение, что мужчина может получить те же самые полгода декрета, которые может получить и женщина, если он хочет. Если он их не возьмет, то женщина их взять не может. И они просто сгорают.

— Есть всего год декретного отпуска, из которых полгода обязан провести мужчина, а полгода — женщина? А если мужчина не хочет их провести, то, соответственно, женщина сидит полгода в декрете, а потом она выходит на работу, я правильно поняла?

- Voor zover ik me herinner, ja. Het punt is dat een man niet gedwongen wordt om met verlof te gaan voor een kind, maar deze keer kan deze niet door een vrouw worden gebruikt. Dat wil zeggen, het voorkomt situaties waarin alleen een vrouw met zwangerschapsverlof is. Hier breng je dezelfde helft van een jaar door, of niet. Ik denk dat dit een heel goed idee is.

incut

— А те люди, у которых были идеи создать женские курсы, — вы с ними обсуждали позитивную дискриминацию. Я правильно понимаю, что это мужчины?

— Мой коллега, организатор этих курсов для женщин, не преподавал там, потому что для создания комфортной среды на этих курсах не должно было быть мужчин-преподавателей. В общем, да, это мужчины, конечно.

— Если в России люди, которые озабочены дискриминацией женщин, это женщины, то конкретно на вашем примере в университете в Дании озабочены не только женщины, а даже мужчины.

— Ну, не скорее, а в том числе. И мне кажется, что это довольно нормально.

- Voor Rusland is dit absoluut abnormaal, omdat we in dit opzicht een vreemde houding hebben ontwikkeld.

— Вы знаете, проблема гендерной темы в том, что нам известны какие-то частные случаи, и у нас нет общей картины. У меня есть ощущение, что в России в этом плане все не так блестяще. Хотя коллега — организатор курсов для женщин считает, что в России и в странах бывшего СССР с этим значительно лучше. Потому что большинство женщин-программистов, с которыми он знаком, — выходцы из бывшего Советского Союза. Потому что у нас считается нормальным, по его мнению, пойти учиться на программиста, а здесь им необходимо делать усилия, чтобы привлечь девчонок.

— Может быть, проблема в том, что женщины-программисты из стран СНГ сбегают из стран СНГ?

— Ну, тем не менее, они есть. И сбегают не только женщины. А что касается экстремальности этого молодого человека, о чем я забыла договорить. Я сказала, что считаю несправедливым то, что женщина теряет год опыта и потом должна выполнять работу на том же уровне, потому что ей нужно продолжать соревноваться в профессии. При этом я для себя выбрала PhD, а не семью. На что мой коллега ответил: «У тебя, по крайней мере, есть выбор». То есть ты можешь выбрать работу, если хочешь, а можешь выбрать семью, если хочешь. Но зачастую этого выбора нет. Предполагается, что главная цель женщины — завести семью, родить детей, выкормить и прочее.

- U hebt niet het gevoel dat dergelijke cursussen "pennen voor vrouwen" zijn?

— Я и сейчас, если честно, немного так думаю. Точнее, если это для кого-то работает, то это отлично и хорошо. Но мне самой бы было не очень комфортно. Не считаю это суперклассной идеей, все равно какая-то изоляция.

— Я правильно понимаю: из-за того, что изначально вы были в научной среде, то именно в среде ученых не замечаете проблем отношения? Потому что сама интеллигентно-культурная среда предполагает — главное не то, кто человек, а то, что он сделал.

— Возможно, эта среда предполагает держать язык за зубами и не говорить гадости другим людям.Возможно, она и правда интеллигентна. Сложно сказать. Но да, когда говорю, что нахожусь в своей в башне из слоновой кости, имею в виду именно то, что я несколько оторвана от ежедневной действительности.

"Spuug op iedereen en ga veroveren"

— В дальнейшем вы хотите продолжать учиться и заниматься исследованиями?

"Het is zoals Plan A." Dat wil zeggen, het is geen feit dat ik altijd een positie kan krijgen die me interesseert in de academie, maar als een plan "B" is het om terug te keren naar de industrie.

- Merk je een verschil in de kwaliteit van het onderwijs tussen de University Innopolis en de Universiteit van Denemarken? Het gaat er niet om welke is verouderd, maar in het verschil in benaderingen van het onderwijs.

- In Denemarken ben ik niet zo bekend met het systeemonderwijs. De cursus die ik in Denemarken gaf, was voor de Russische universiteiten nogal ongebruikelijk, maar om te zeggen dat het overal zou moeten zijn, of integendeel, dat het nergens zou moeten zijn, ik kan het niet.

incut

Als je kort over deze cursus praat, hijhet 'Project van het eerste studiejaar' genoemd, waarin mentoren interessante taken geven. Leerlingen in groepen kunnen kiezen aan welke van hen zij willen werken. Mentor helpt om de juiste richting te vinden bij het oplossen van het probleem. Het doel van de cursus is om studenten van het eerste jaar te leren studeren, problemen op te lossen, samen te werken in een team en een goede presentatie te maken. Op Innopolis University is er iets vergelijkbaars als het tweede jaar, maar ik heb het niet geleerd. Bij KSU was er een meer klassieke school, maar het was mogelijk om vrolijke jongerenkeuzen te kiezen.

— Что вы можете сказать девушкам, которые находятся в иной ситуации, которым говорят, что математика и программирование — не женское дело, а они хотят пойти в науку?

— Когда мы говорим о девушках, которые хотят пойти в программирование и технические специальности, то мы, скорее всего, говорим о подростках. Это еще весьма юный человек, на которого можно оказать влияние. Это, конечно, не очень здорово, что девушкам приходится слушать такую ерунду со стереотипами. Если у человека есть способности, то я бы посоветовала не слушать других, а идти в математику и программирование.

Но иногда бывает такая ситуация, когда это действительно может быть не твое, и это касается не только технических наук. К примеру, хочет поступить человек в художественное училище, но рисует не очень. Учиться ему будет тяжело, хотя, может быть, он и наверстает. Но иногда честнее сказать, что это не твое, и, может, лучше не мучиться и заняться чем-то другим. Так или иначе, стоит адекватно оценивать эти фразы, зачастую они злоупотребляют «ореолом таинственности» технических наук. Поэтому плюйте на всех и идите покорять.