Иннополис 6 марта 2019

Лариса Сафина, Университеты Южной Дании и Иннополис — о неубиваемых стереотипах и функциональных языках программирования

Далее

«Хайтек» встретился с женщинами из науки и ИТ в рамках спецпроекта «Место женщины — везде». Мы обсудили с ними достижения в так называемых «мужских» сферах, гендерные стереотипы и дискриминацию в оплате труда. Женщины, занимающиеся программированием и ИТ, до сих пор остаются редким явлением. Всего 7% от общего числа разработчиков в России составляют женщины. В то же время, по данным GitHub, правки чужого кода, предлагаемые женщинами, одобряются чаще, чем те, что предлагаются мужчинами. А в топ-10 языков программирования, которые чаще других используются женщинами в работе, входят примерно те же языки, что и в целом по ИТ-отрасли. «Хайтек» поговорил со старшим преподавателем  Университета Иннополис и соискателем ученой степени университета Южной Дании Ларисой Сафиной об отношении научной среды к женщинам-ученым и айтишницам, о специальных грантах для женщин, нужны ли курсы по программированию для женщин, и почему функциональные языки программирования — не мертвый груз.


Лариса Сафина — старший преподаватель Университета Иннополис, сейчас получает PhD в университете Южной Дании. Работала тестировщиком программного обеспечения в компании Fujitsu, занимаясь преимущественно ритейл-проектами. Также работала тестлидом в компании Fix на различных проектах.

Изучает языки программирования — такие как Haskell, Kotlin и другие.


Хаскелисты, функциональное программирование и популярные языки

— Чем вы именно занимались в магистратуре по программному обеспечению Университета Иннополисе?

— Это была программа, купленная у университета Карнеги Меллон. Она была хорошо сформирована за прошедшее время, в нее входят курсы по анализу ПО, архитектуре и методам. Со второго семестра начинается самая главная и интересная часть — студентов разбивают на команды и они работают над реальными проектами. Финально, наша эффективность оценивалась по тому, как мы справились с этим проектом.

— Какой у вас был проект?

— Мы работали на Роснано, и нашим проектом было удаленное управление освещением некоторых городов — включение освещения, запланированное по графику. У них было старое решение, но они хотели перейти на новое.

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

— Стало интересно, с какими языками вы работаете.

— За время своей учебы и работы мне приходилось работать со множеством языков. В данный момент, например, я пишу на языке Kotlin. Он мне нравится больше всего. Но проект с Роснано мы писали в основном на C#. Довольно часто мне приходится сталкиваться по работе с Java, будучи тестировщиком, писала тесты на Python, Java, C#. Для своего удовольствия часто изучаю функциональные языки программирования, например, Haskell, и формальные языки, к примеру, для доказательства теорем — Coq.


Функциональное программирование — парадигма программирования, в которой процесс вычисления трактуется как вычисление значений функций в математическом понимании последних (в отличие от функций как подпрограмм в процедурном программировании).

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

Coq — интерактивное программное средство доказательства теорем, использующее собственный язык функционального программирования (Gallina) с зависимыми типами. Позволяет записывать математические теоремы и их доказательства, удобно модифицировать их, проверяет их на правильность. Coq применяется для верификации программ.

Формальный язык — в математической логике и информатике — множество конечных слов (строк, цепочек) над конечным алфавитом. Понятие языка чаще всего используется в теории автоматов, теории вычислимости и теории алгоритмов. Научная теория, которая имеет дело с этим объектом, называется теорией формальных языков.


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

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

— Но они используются именно для математического моделирования и доказательства теорем — для научных целей, иначе говоря. Если смотреть вакансии, хаскелистов вообще практически нигде не требуется, все хотят C+, Java, Python, Ruby, Go или вообще уходят во фронтенд, соответственно — JavaScript. Но хаскелистов встретить — это прямо суперская история.

— Скажем так, они помогают формализовать некоторые вещи, которые вполне можно увидеть в реальности. От языков для доказательств теорем до Haskell, в принципе, недалеко, а от Haskell до индустрии тоже рукой подать. То есть не все так плохо и бесполезно.

Вероятно, все это связано со средой, где я нахожусь. И мне это не кажется чем-то крайне необычным.

Дания, PhD и микросервисы

— Почему тогда в остальной среде такие языки не являются популярными? И почему они для вас интересны?

— В принципе, потому что нет острой необходимости их использовать. Если можно решить проблему более простым способом, если она не суперкритичная, и если это не какая-то система «Боинга», и можно обойтись меньшим оружием — то выбираются другие языки. Почему они мне нравятся? Не знаю. А вам нравится что-то — цветы, книги, котики? Почему вам нравятся котики?

— Котики всем нравятся. Вот мне нравится, что вы в Дании PhD получаете. Как вы вообще после Иннополиса туда попали?

— Когда я училась в магистратуре, кроме основных курсов мы должны были брать элективы. И один из элективов, который я взяла, был связан с темой микросервисов, а точнее с языком программирования для микросервисов — Jolie. Его автор сейчас работает в Дании. Моей задачей было внести в него изменения — доработки, заимплементировать один из возможных операторов.

Врезка

Когда я устроилась в Университет Иннополис уже на работу, начальник спросил, чем хочу заниматься, моим ответом было получение PhD. В это время появилась возможность стать соискателем ученой степени как раз у того профессора из Дании — изобретателя языка Jolie. Таким образом мы и организовали совместный PhD между Университетом Иннополис и датским университетом, университетом Южной Дании.

— А что именно вы исследуете в Дании?

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

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

Университет Южной Дании. Фото: ricochet64/Shutterstock

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

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

Почему гранты для женщин — это обидно

— Когда я написала, что хочу поговорить с вами об ИТ и женщинах, вы сказали, что не очень просто будет об этом говорить, но готовы озвучить. Почему у вас такое мнение?

— Думаю, это достаточно острая тема. И я думала, стоит ли об этом говорить и ворошить осиное гнездо. Потому что, действительно, это все равно, что идти по минному полю. Что бы ты ни сказал, кто-то будет задет, а некоторые посчитают, что ты несешь какую-то дикую ересь.

— Почему вы так думаете?

— Я в принципе часто вижу различную реакцию людей на эти вопросы. Такие темы часто обсуждаются. И я вижу многообразие мнений.

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

— Да, я не понимаю, откуда взялось мнение, что это мужская специальность. У нас на ВМК (в Казанском университете — «Хайтек») девушек было где-то 50%.

— А когда вы уехали, было ли отличие в отношении к тому, что вы делаете, в Дании и в России?

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

— А какие именно меры принимаются?

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

Врезка

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

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

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

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

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

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

— Вы знаете, мне как-то, насколько я помню, не приходилось с этим сталкиваться. Может быть, я наивна и просто не знаю о том, что это происходило, но мне никто не говорил: «Это хорошо для девочки».

Позитивная дискриминация, декрет для мужчин и неубиваемые стереотипы

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

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

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

— Я из Петербурга, и довольно часто слышала: то, на кого я училась, кем работала или чем интересовалась — это не для женщины. И моим знакомым говорили то же самое, если они вдруг интересовались математикой, программированием или наукой.

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

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

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

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

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

Врезка

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

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

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

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

— Для России это абсолютно ненормально, потому что у нас сложилось какое-то странное отношение в этом плане.

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

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

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

— У вас нет ощущения, что такие курсы — «загончики для женщин»?

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

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

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

«Плюйте на всех и идите покорять»

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

— Это как план «А». То есть не факт, что я всегда смогу получить интересующую меня позицию в академии , а как план «Б» — это вернуться в индустрию.

— Вы замечаете разницу в качестве образования между Университетом Иннополис и Университетом Дании? Речь не о том, какой из них устаревший, а в разнице подходов к образованию.

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

Врезка

Если кратко рассказать об этом курсе, он называется «Проект первого года обучения», на котором менторы дают интересные задачи. Студенты в группах могут сами выбирать, над какой из них они хотят работать. Ментор помогает найти нужное направление в решении задачи. Цель курса — научить студентов первого года учиться, решать проблемы, работать вместе в команде и делать хорошую презентацию. В Университете Иннополис есть что-то похожее на втором курсе, но я его не вела. В КГУ же была более классическая школа, но можно было выбирать веселые молодежные элективы.

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

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

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


Иллюстрация: Тая Стрижакова