Larisa Safina, Universities of Southern Denmark and Innopolis - on unkillable stereotypes and functional programming languages

Larisa Safina - Senior Lecturer at Innopolis University, now receiving a PhD at the University of South

Of Denmark. She worked as a software tester at Fujitsu, focusing mainly on retail projects. She also worked as a testlide for Fix on various projects.

Studies programming languages ​​such as Haskell, Kotlin and others.

Haskelist, functional programming and popular languages

- What exactly did you do in the magistracy in software at the University of Innopolis?

- It was a program purchased from a universityCarnegie Mellon. It has been well formed over time, it includes courses on software analysis, architecture and methods. The most important and interesting part begins with the second semester - students are divided into teams and they work on real projects. Finally, our effectiveness was assessed by how we coped with this project.

- What was your project?

- We worked for Rosnano, and our project wasRemote control of lighting of some cities - the inclusion of lighting, scheduled on schedule. They had an old solution, but they wanted to switch to a new one.

On this project, everyone did everything, it was important thateveryone tried some role. Of course, some people have a tendency to one, others have another. But in our project, we all managed to pee code, work with requirements, testing, and even architecture. This is the main goal of such projects.

- It became interesting what languages ​​you work with.

- During my studies and work I had towork with many languages. At the moment, for example, I am writing in the Kotlin language. I like him the most. But we wrote a project with Rosnano mainly in C #. Quite often I have to deal with working with Java, being a tester, writing tests in Python, Java, C #. For my own pleasure, I often study functional programming languages, for example, Haskell, and formal languages, for example, to prove theorems — Coq.

Functional programming - programming paradigm in which the processComputations are interpreted as calculating the values ​​of functions in the mathematical understanding of the latter (as opposed to functions as subroutines in procedural programming).

Haskell - standardized pure functional languagegeneral purpose programming. It is one of the most common programming languages ​​with support for deferred computing. Since the language is functional, the main control structure is a function.

Coq - interactive softwareproofs of theorems using its own functional programming language (Gallina) with dependent types. Allows you to write mathematical theorems and their proofs, it is convenient to modify them, checks them for correctness. Coq is used to verify programs.

Formal language - in mathematical logic and computer science -a set of finite words (strings, chains) over a finite alphabet. The concept of language is most often used in automata theory, computability theory, and theory of algorithms. The scientific theory that deals with this object is called the theory of formal languages.

“It all sounds great, but now these languages ​​are not used on real projects, the same Haskell rarely, although I cannot recall any projects on it.”

- I probably disagree with you. For example, Haskell is used in production. Yes, not often, but not because it is a bad language, rather, because it is rather difficult to assemble a team of Haskelists. However, I know people who work with Haskell in production. I'm just for my own pleasure. I did not see other functional languages ​​in production, but it is not bad to understand them for general development. As for the languages ​​for proving theorems, then at the academy, if you are in this particular subject, they are used quite often.

- But they are used precisely for mathematicalSimulations and proofs of theorems - for scientific purposes, in other words. If you look at vacancies, haskelists are practically never needed anywhere; everyone wants C +, Java, Python, Ruby, Go, or generally goes to the frontend, respectively - JavaScript. But to meet Haskelists is a really super story.

- Let's just say, they help to formalizesome things that can be seen in reality. From languages ​​for proofs of theorems to Haskell, in principle, not far, and from Haskell to industry, too, within reach. That is not all so bad and useless.

Probably all this is related to the environment where I am. And this does not seem to me something extremely unusual.

Denmark, PhD and microservices

- Why then in the rest of the environment such languages ​​are not popular? And why are they interesting for you?

- Basically, because there is no urgent needuse them. If you can solve the problem in a simpler way, if it is not supercritical, and if it is not some kind of Boeing system, and you can use smaller weapons, then other languages ​​are chosen. Why do I like them? I do not know. Do you like something - flowers, books, cats? Why do you like cats?

- Seals all like. I like what you get in Denmark PhD. How did you get after Innopolis?

- When I studied in a magistracy, except the maincourses we had to take elektivy. And one of the electives that I took was related to the topic of microservices, or more precisely with the microservice programming language - Jolie. Its author is currently working in Denmark. My task was to make changes to it - refinement, to implement one of the possible operators.

Sidebar

When I got into Innopolis University already atwork, the boss asked what I want to do, my answer was to get a PhD. At this time, the opportunity to become a candidate for a degree was created by a professor from Denmark - the inventor of the language Jolie. Thus, we organized a joint PhD between the University Innopolis and the Danish University, the University of Southern Denmark.

- What exactly are you researching in Denmark?

- In Denmark, we are working on one project, heslightly associated with microservices and, in principle, with the interaction of elements within distributed systems. My scientific leaders proposed formalization — a global specification for microservices. They showed that you can display a specification for each item.

We can use it if we havesome kind of system of interacting elements. If we can derive a general specification of the behavior of all elements without an orchestrator — without some node that controls all the others — then we can derive from it a specification for each node, and vice versa. Thus, we protect ourselves from errors, because if we did the specification for each node separately, then in the future we could face problems of their interaction.

University of Southern Denmark. Photo: ricochet64 / Shutterstock

Imagine the scenario: You want to send money to one bank, which must transfer them to another. And you wrote the specification for one bank, that it transfers them to the second bank, and in the second you forgot to say that it should receive something. And therefore your transfer will never reach the recipient. When you have a global description of this system, all the roles and actions that each of the participants should take, you can deduce a specification of the behavior of each of the participants, and thus protect yourself from this problem.

My science leaders formalized this,writing two theoretical languages ​​to describe the global model of nodes and the behavior of a particular node. My task is to implement and test, to show how effective their model is compared to others.

Why grants for women - it's a shame

- When I wrote that I want to talk with you about IT and women, you said that it would not be very easy to talk about it, but you are ready to voice it. Why do you have such an opinion?

- I think this is quite a hot topic. And I thought whether it was worth talking about it and stirring the hornet's nest. Because, really, it's like going through a minefield. Whatever you say, someone will be hurt, and some will think that you are carrying some kind of wild heresy.

- Why do you think so?

- In principle, I often see different reactions of people to these questions. Such topics are often discussed. And I see a variety of opinions.

- When you went to the Kazan University for a male specialty, it was no longer considered a male specialty?

- Yes, I do not understand where the opinion came from, that this is a male specialty. We had about 50% of girls at the VIC (at Kazan University - “High-tech”).

- And when you left, was there a difference in attitude towards what you are doing in Denmark and in Russia?

- I've never come across so mesomehow humiliated by sex. If you mean, if anyone here, in Denmark, told me that I am engaged in a male specialty, no. But the difference is that they really want to have more women in IT and the academy. And they do not just want, they take some measures, and sometimes, from my point of view, they do even more than necessary and cost.

- And what measures are taken?

- Well, from what is, for example, these areprogramming for women only. One colleague said that this is heresy and this just creates segregation between male and female programmers. I agreed with this approach, but the course organizer was somewhat surprised. And after a while I asked how these courses went. And it turned out that a lot of girls came there, for many girls there was a difference - to go only in a female company or in a mixed one. Many wanted to go purely in the female, the difference was visually noticeable - it was not an accident. And I realized that if I didn’t see this problem, being in my ivory tower, I didn’t notice that girls might be embarrassed or for some reason not want to work with young people, this does not mean that there is no problem.

Sidebar

And as for other things that differ inEurope and Russia, in terms of attracting women diligently, then there is such a thing as a quota. Places, such as grants, can be reserved for women. And this, from my point of view, creates a not very good trend, because often women who get these places do not always know, they got them, because they were cool themselves, did something very cool, or they got them because someone decided that there are not enough women in this direction. This is the other side of the coin. There is a positive effect - you received a grant, and a negative one - the reason you received it.

- You yourself would not want to ever get a grant, because you are a woman?

- In general, I think it's pretty annoying. (Laughs)

- It's a shame to get a grant, because the woman, and not because you are a cool specialist?

- Yes, because it says that it was not my work that was evaluated, but my gender.

- Do you think your work has ever been evaluated, either in Russia or in Denmark, exactly because you are a woman, or your assessment of your work by other people has changed because you are a woman?

- You know, I somehow, as I recall, did not have to deal with this. Maybe I'm naive and just do not know that this was happening, but nobody told me: "This is good for a girl."

Positive discrimination, decree for men and non-killing stereotypes

- How did your parents react to your career choices - positively? Or did they have some other view on what you were supposed to do?

- Generally, when I was in school, afterGraduations wanted to study languages, and my parents suggested choosing mathematics and programming, because they themselves regarded languages ​​as a tool that can be studied later, and mathematics and programming - as something more fundamental. It's funny that many scientists refer to mathematics as an instrument.

And frankly, I was always surprised whyThere is such an unhealthy aura of complexity in technical specialties. I think this is not fair and just scares the girls. For example, I have never heard that girls who want to practice linguistics say: “Oh, there’s historical grammar, it’s so difficult!”. Or girls who wanted to go to the architect, said: "Oh, there, too, will have to do a lot of sopromat". I can now confuse, rather, the girls-engineers, well, or as anatomy for physicians. But for some reason, technical sciences have this.

- I am from St. Petersburg, and quite often heard: who I studied for, who I worked for or what I was interested in is not for a woman. And my friends said the same thing if they were suddenly interested in mathematics, programming or science.

- It seems to me that, on the contrary, in our regionmore patriarchal than yours, so I'm certainly surprised. It seems to me that this is somehow related to a specific environment. Perhaps in my youth ... no, I can't say that I was somehow lucky, at the university I was treated as befits. But, for example, driving. I have never received so many gender-based offenses as driving. Given that this is absolutely unfounded. Therefore, I know that there are unkillable stereotypes, and many women face them. Why I did not face them in terms of work? Probably because it was surrounded by people from different environments for whom this would be normal.

- What are the opinions of your Danish colleagues? It turns out that if they are engaged in an initiative - for example, courses for women, they see this problem.

- Yes, of course. We sometimes discuss such topics as with courses. Or, for example, I find it not entirely honest that a woman often loses a certain amount of time while on vacation for a child. Roughly speaking, she loses a year of experience. In Denmark, there is a decision that a man can get the same half a year decree, which a woman can get if he wants. If he does not take them, then a woman cannot take them. And they just burn out.

- There are only one year of maternity leave, of whicha man must spend half a year, and a woman spend half a year? And if a man does not want to spend them, then, accordingly, a woman sits on maternity leave for six months, and then she goes to work, I understand correctly?

- As far as I remember, yes. The point is that a man is not forced to go on leave for a child, but this time cannot be used by a woman. That is, it prevents such situations that only a woman will be on maternity leave. Here either you spend these same half a year, or not. I think this is a very good idea.

Sidebar

“And those people who had ideas to create women's courses,” you discussed positive discrimination with them. Do I understand correctly that these are men?

- My colleague, the organizer of these courses forwomen, did not teach there, because to create a comfortable environment in these courses there should not have been male teachers. In general, yes, these are men, of course.

- If in Russia people who are concerned about discrimination against women are women, then not only women, but even men, are particularly concerned about your example at a university in Denmark.

- Well, not sooner, but including. And it seems to me that this is quite normal.

- For Russia, this is absolutely abnormal, because we have developed some strange attitude in this regard.

- You know, the problem of gender is thatwe are aware of some particular cases, and we do not have a general picture. I have a feeling that in Russia in this respect, things are not so brilliant. Although a colleague - the organizer of courses for women believes that in Russia and in the countries of the former USSR this is much better. Because the majority of female programmers with whom he is familiar come from the former Soviet Union. Because we consider it normal, in his opinion, to study as a programmer, but here they need to make efforts to attract girls.

- Maybe the problem is that female programmers from the CIS countries flee from the CIS countries?

- Well, nevertheless, they are. And not only women run away. As for the extremity of this young man, as I forgot to finish. I said that I consider it unfair that a woman loses a year of experience and then should do the work at the same level, because she needs to continue to compete in the profession. At the same time, I chose a PhD for myself, and not a family. To which my colleague replied: "You, at least, have a choice." That is, you can choose a job if you want, but you can choose a family if you want. But often this choice is not. It is assumed that the main goal of a woman is to start a family, have children, feed them and so on.

- You do not have the feeling that such courses are “pens for women”?

- Even now, to be honest, I think a little like that. More precisely, if it works for someone, it is excellent and good. But I myself would not be very comfortable. I do not think this is a super cool idea, anyway some kind of isolation.

- I understand correctly: due to the fact that initially you were in the scientific community, it is precisely among the scientists that you don’t notice relationship problems? Because the very intellectual-cultural environment itself presupposes that the main thing is not who the person is, but what he did.

- Perhaps this environment is supposed to keep the languagefor teeth and not say bad things to other people. Perhaps she is really intelligent. It is hard to say. But yes, when I say that I am in my own in an ivory tower, I mean that I am somewhat divorced from everyday reality.

"Spit on everyone and go conquer"

- In the future you want to continue to study and engage in research?

“It's like Plan A.” That is, it is not a fact that I will always be able to get a position that interests me in the academy, but, as a plan “B”, this is to return to the industry.

- Do you notice a difference in the quality of education between Innopolis University and the University of Denmark? It's not about which one is outdated, but in the difference in approaches to education.

- In Denmark, I'm not so familiar with the systemteaching. The course that I taught in Denmark was quite unusual for Russian universities, it seems to me, but to say that it should be everywhere, or, on the contrary, that it should not be anywhere, I cannot.

Sidebar

If you talk briefly about this course, hecalled the “Project of the first year of study” in which mentors give interesting tasks. Students in groups can choose which of them they want to work on. Mentor helps to find the right direction in solving the problem. The goal of the course is to teach first-year students to study, solve problems, work together in a team and make a good presentation. At Innopolis University, there is something similar to the second year, but I did not teach it. At KSU, there was a more classical school, but it was possible to choose cheerful youth elects.

- What can you say to girls who are in a different situation who are told that mathematics and programming is not a woman’s business, but they want to go to science?

- when we talk about girls who wantgo to programming and technical specialties, then we are most likely talking about teenagers. This is a very young man who can be influenced. This, of course, is not very cool that girls have to listen to such nonsense with stereotypes. If a person has abilities, then I would advise not to listen to others, but to go to mathematics and programming.

But sometimes there is a situation whenmay not really be yours, and this applies not only to technical sciences. For example, a person wants to enroll in an art school, but does not draw very much. It will be difficult for him to study, although perhaps he will catch up. But sometimes it's more honest to say that this is not yours, and maybe it's better not to suffer and do something else. One way or another, it is worthwhile to adequately evaluate these phrases, they often abuse the “halo of mystery” of technical sciences. So spit on everyone and go conquer.