Larisa Safina— maître de conférences à l'Université d'Innopolis, actuellement titulaire d'un doctorat à l'Université du Sud
Étudie des langages de programmation tels que Haskell, Kotlin et autres.
Haskelists, programmation fonctionnelle et langages populaires
- Qu'avez-vous fait exactement dans la magistrature en logiciels de l'université Innopolis?
- C’était un programme acheté d’une université.Carnegie Mellon. Il a été bien formé au fil du temps et comprend des cours sur l’analyse, l’architecture et les méthodes de logiciels. La partie la plus importante et la plus intéressante commence avec le deuxième semestre - les étudiants sont divisés en équipes et travaillent sur de vrais projets. Enfin, notre efficacité a été évaluée en fonction de la manière dont nous avons géré ce projet.
— Quel était ton projet ?
— Nous avons travaillé pour Rusnano et notre projet étaitcontrôle à distance de l'éclairage dans certaines villes - allumage de l'éclairage selon un horaire. Ils avaient une ancienne solution, mais souhaitaient passer à une nouvelle.
Sur ce projet, tout le monde a tout fait, il était important quetout le monde a essayé un rôle. Bien sûr, certaines personnes ont tendance à en avoir un, d'autres en ont un autre. Mais dans notre projet, nous avons tous réussi à faire pipi au code, à travailler avec les exigences, les tests et même l’architecture. C’est l’objectif principal de tels projets.
- Les langues avec lesquelles vous travaillez sont devenues intéressantes.
— Durant mes études et mon travail, j'ai dûtravailler avec plusieurs langues. En ce moment, par exemple, j'écris en Kotlin. Je l'aime le plus. Mais nous avons écrit le projet avec Rusnano principalement en C#. Assez souvent, je dois m'occuper de Java, étant testeur, j'ai écrit des tests en Python, Java, C#. Pour mon propre plaisir, j'étudie souvent des langages de programmation fonctionnels, par exemple Haskell, et des langages formels, par exemple pour prouver des théorèmes - Coq.
Programmation fonctionnelleest un paradigme de programmation dans lequel le processusles calculs sont interprétés comme le calcul des valeurs de fonctions au sens mathématique de ces dernières (par opposition aux fonctions comme sous-programmes en programmation procédurale).
Haskell- langage fonctionnel pur standardiséprogrammation à usage général. C'est l'un des langages de programmation les plus courants prenant en charge l'informatique paresseuse. Puisque le langage est fonctionnel, la structure de contrôle principale est une fonction.
Coq- outil logiciel interactifPreuves de théorèmes utilisant notre propre langage de programmation fonctionnel (Gallina) avec des types dépendants. Vous permet d'écrire des théorèmes mathématiques et leurs preuves, de les modifier facilement et de vérifier leur exactitude. Coq est utilisé pour la vérification du programme.
Langage formel— en logique mathématique et en informatique —un ensemble de mots finis (chaînes, chaînes) sur un alphabet fini. Le concept de langage est le plus souvent utilisé dans la théorie des automates, la théorie de la calculabilité et la théorie des algorithmes. La théorie scientifique qui traite de cet objet est appelée théorie des langages formels.
— Tout cela semble bien, mais ces langages ne sont actuellement pas utilisés dans de vrais projets ; Haskell, par exemple, est rarement utilisé, même si je ne me souviens pas d'un seul projet l'utilisant.
- Je ne suis probablement pas d'accord avec toi.Par exemple, Haskell est utilisé en production. Oui, pas souvent, mais pas parce que c'est un mauvais langage, mais plutôt parce qu'il est assez difficile de constituer une équipe de Haskellists. Cependant, je connais des gens qui travaillent avec Haskell en production. Je le fais juste pour mon propre plaisir. Je n'ai pas vu d'autres langages fonctionnels en production, mais c'est bien de les comprendre pour le développement général. Quant aux langages de preuve de théorèmes, dans le monde universitaire, si vous êtes dans ce sujet particulier, ils sont assez souvent utilisés.
- Mais ils sont utilisés spécifiquement à des fins mathématiquesmodéliser et prouver des théorèmes - à des fins scientifiques, en d'autres termes. Si vous regardez les postes vacants, les Haskellists ne sont pratiquement nécessaires nulle part : tout le monde veut C+, Java, Python, Ruby, Go, ou même va au front-end, respectivement - JavaScript. Mais rencontrer les Haskellists est une histoire vraiment incroyable.
— Disons qu'ils contribuent à formalisercertaines choses que l'on peut voir dans la réalité. Des langages de preuve de théorèmes à Haskell, en principe, ce n'est pas loin, et de Haskell à l'industrie c'est aussi à un jet de pierre. Autrement dit, tout n'est pas si mauvais et inutile.
Tout cela est probablement lié à l’environnement dans lequel je me trouve. Et cela ne me semble pas très inhabituel.
Danemark, doctorat et microservices
— Pourquoi alors ces langues ne sont-elles pas populaires dans le reste du monde ? Et pourquoi vous intéressent-ils ?
- En gros, parce qu'il n'y a pas d'urgenceUtilise les. S'il est possible de résoudre un problème de manière plus simple, s'il n'est pas extrêmement critique, s'il ne s'agit pas d'une sorte de système Boeing et que vous pouvez vous débrouiller avec des armes plus petites, alors d'autres langues sont choisies. Pourquoi est-ce que je les aime ? Je ne sais pas. Aimez-vous quelque chose : les fleurs, les livres, les chats ? Pourquoi aimes-tu les chats ?
- Les phoques aiment tous. J'aime ce que vous obtenez au Danemark PhD. Comment avez-vous eu après Innopolis?
- Quand j'ai étudié dans une magistrature, sauf la principalecours nous avons dû prendre elektivy. Et l'un des cours que j'ai choisis portait sur le thème des microservices, ou plus précisément avec le langage de programmation microservice - Jolie. Son auteur travaille actuellement au Danemark. Ma tâche consistait à apporter des modifications - à affiner, à mettre en œuvre l'un des opérateurs possibles.
Barre latérale
Quand j'ai trouvé un emploi à l'Université d'Innopolis, j'étais déjàtravail, le patron m'a demandé ce que je voulais faire, ma réponse a été d'obtenir un doctorat. À cette époque, l'opportunité s'est présentée de devenir candidat à un diplôme universitaire auprès de ce professeur danois, l'inventeur de la langue Jolie. Ainsi, nous avons organisé un doctorat conjoint entre l’Université Innopolis et une université danoise, l’Université du Danemark du Sud.
- Que recherches-tu exactement au Danemark?
- Au Danemark, nous travaillons sur un projet, at-illégèrement associé aux microservices et, en principe, à l’interaction des éléments au sein de systèmes distribués Mes responsables scientifiques ont proposé la formalisation - une spécification globale pour les microservices. Ils ont montré que vous pouvez afficher une spécification pour chaque élément.
Nous pouvons l'utiliser si nous l'avonsune sorte de système d'éléments en interaction. Si nous pouvons dériver une spécification générale du comportement de tous les éléments sans orchestrateur - sans un nœud contrôlant tous les autres - alors nous pouvons en déduire une spécification pour chaque nœud, et vice versa. De cette façon, nous nous protégeons des erreurs, car si nous faisions une spécification pour chaque nœud séparément, nous pourrions plus tard rencontrer des problèmes avec leur interaction.
Université du Danemark du Sud. Photo : ricochet64/Shutterstock
Imaginez le scénario :vous souhaitez envoyer de l'argent à une banque, qui doit le transférer vers une autre. Et vous avez écrit une spécification pour une banque selon laquelle elle les transfère à la deuxième banque, et dans la seconde, vous avez oublié de dire qu'elle devrait recevoir quelque chose. Et donc votre virement n’atteindra jamais le destinataire. Une fois que vous avez une description globale de ce système, précisant tous les rôles et actions que chacun des participants doit assumer, vous pouvez en déduire une spécification du comportement de chacun des participants, et ainsi vous protéger d'un tel problème.
Mes supérieurs ont formalisé cela,en écrivant deux langages théoriques pour décrire le modèle global des nœuds et le comportement d'un nœud spécifique. Ma tâche est de mettre en œuvre et de tester, pour montrer l'efficacité du modèle proposé par rapport aux autres.
Pourquoi les subventions pour les femmes sont une honte
— Quand j'ai écrit que je voulais te parler d'informatique et des femmes, tu as dit que ce ne serait pas très facile d'en parler, mais tu étais prêt à l'exprimer. Pourquoi as-tu cet avis ?
— Je pense que c'est un sujet plutôt sensible.Et je me demandais si ça valait la peine d’en parler et d’agiter le nid de frelons. Parce qu'en réalité, c'est comme traverser un champ de mines. Peu importe ce que vous dites, quelqu'un sera offensé et certains penseront que vous parlez d'une sorte d'hérésie sauvage.
— Pourquoi pensez-vous cela ?
— En général, je vois souvent des réactions différentes de la part des gens à ces questions.De tels sujets sont souvent abordés, et je vois une diversité d’opinions.
— Quand vous êtes allé à l’université de Kazan pour étudier une spécialité masculine, n’était-ce plus considéré comme une spécialité masculine ?
- Oui, je ne comprends pas d'où vient l'opinion, que c'est une spécialité masculine. Nous avions environ 50% de filles au CIV (à l'Université de Kazan - «High-tech»).
- Et quand vous êtes parti, y avait-il une différence d'attitude vis-à-vis de ce que vous faites au Danemark et en Russie?
« Je n’ai jamais été rabaissée de quelque manière que ce soit à cause de mon sexe.Si vous voulez dire, est-ce que quelqu’un m’a dit ici au Danemark que je suis une profession d’homme, alors non.Mais la différence, c’est qu’ils veulent vraiment avoir plus de femmes à la fois dans l’informatique et dans le milieu universitaire.Et ils ne se contentent pas de le vouloir, ils prennent des mesures, et parfois, de mon point de vue, ils le fontencore plus qu’il ne serait nécessaire et utile.
- Et quelles mesures sont prises?
- Eh bien, de ce qui est, par exemple, ce sontprogrammation réservée aux femmes. Un collègue a dit qu'il s'agissait d'une hérésie et que cela ne faisait que créer une ségrégation entre les programmeurs masculins et féminins. J'ai accepté cette approche, mais l'organisateur du cours a été un peu surpris. Et après un moment, j'ai demandé comment se passaient ces cours. Et il s’est avéré que beaucoup de filles sont venues là-bas. Pour beaucoup de filles, il y avait une différence - aller uniquement dans une entreprise féminine ou mixte. Beaucoup voulaient aller uniquement chez la femme, la différence était visiblement palpable - ce n'était pas un accident. Et j’ai réalisé que si je ne voyais pas ce problème, étant dans ma tour d’ivoire, je ne remarquais pas que les filles pourraient être embarrassées ou, pour une raison quelconque, ne pas vouloir s’engager avec les jeunes, cela ne signifiait pas qu’il n’y avait pas de problème.
Barre latérale
Et quant aux autres choses qui sont différentes dansEn Europe et en Russie, pour attirer avec diligence les femmes, il existe un quota. Des places, par exemple des bourses, peuvent être réservées spécifiquement aux femmes. Et cela, de mon point de vue, crée une tendance pas très bonne, car souvent les femmes qui obtiennent ces places ne savent pas toujours si elles les ont obtenues parce qu'elles sont elles-mêmes cool, ont fait quelque chose de très cool, ou si elles les ont obtenues, parce que quelqu'un a décidé qu'il n'y avait pas assez de femmes dans ce domaine. C’est le revers de la médaille. Il y a un effet positif - vous avez reçu une subvention, et un effet négatif - la raison pour laquelle vous l'avez reçue.
— Aimeriez-vous recevoir une bourse un jour parce que vous êtes une femme ?
"En général, je pense que c'est assez offensant." (Rires)
— Est-ce dommage de recevoir une bourse parce que vous êtes une femme, et non parce que vous êtes une spécialiste cool ?
- Oui, car cela laisse penser que ce n'est pas mon travail qui a été évalué, mais mon sexe.
— Pensez-vous que votre travail a déjà été évalué, en Russie ou au Danemark, précisément parce que vous êtes une femme, ou l'appréciation de votre travail par votre entourage a-t-elle changé parce que vous êtes une femme ?
- Vous savez, d'une manière ou d'une autre, si je me souviens bien, je n'ai pas eu à gérer cela. Peut-être que je suis naïf et que je ne sais pas si cela se passait, mais personne ne m'a dit: "C'est bon pour une fille."
Discrimination positive, décret pour hommes et stéréotypes non-meurtriers
— Comment vos parents ont-ils réagi positivement à votre choix de carrière ? Ou avaient-ils une vision différente de ce que vous devriez faire ?
— En fait, quand j'étais à l'école, aprèsAprès avoir obtenu mon diplôme, je voulais étudier les langues, mais mes parents m'ont suggéré de choisir les mathématiques et la programmation, car eux-mêmes considéraient les langues comme un outil qui peut être appris plus tard, et les mathématiques et la programmation comme quelque chose de plus fondamental. C'est drôle de voir combien de scientifiques considèrent les mathématiques comme un outil.
Et pour être honnête, je me suis toujours demandé pourquoiIl existe une sorte d’aura malsaine de complexité dans les spécialités techniques. Je pense que c'est malhonnête et que ça fait peur aux filles. Par exemple, je n’ai jamais entendu dire à des filles qui voulaient étudier la linguistique : « Oh, il y a la grammaire historique, c’est tellement difficile ! Ou encore, on disait aux filles qui voulaient devenir architecte : « Oh, il faudra aussi y faire beaucoup de travaux de résistance des matériaux. » Maintenant, je peux plutôt confondre les filles ingénieurs, ou aimer l'anatomie pour les médecins. Mais pour une raison quelconque, ce sont précisément les sciences techniques qui possèdent cela.
- Je viens de Saint-Pétersbourg et j'ai souvent entendu pour qui j'ai étudié, pour qui j'ai travaillé ou ce qui m'intéressait, ce n'est pas pour une femme. Et mes amis ont dit la même chose s’ils s’étaient soudainement intéressés aux mathématiques, à la programmation ou aux sciences.
— Il me semble qu'au contraire, dans notre régionplus patriarcal que le vôtre, alors bien sûr, je suis surpris. Je pense que cela a quelque chose à voir avec l'environnement spécifique. Peut-être que dans ma jeunesse... non, je ne peux pas dire que j'ai eu de la chance à l'université, j'ai été traité comme il se doit. Mais par exemple conduire. Je n’ai jamais reçu autant d’insultes sexistes qu’en conduisant. Malgré le fait que cela n’a absolument aucun fondement. Par conséquent, je sais qu’il existe des stéréotypes invincibles et que de nombreuses femmes y sont confrontées. Pourquoi ne les ai-je pas rencontrés en termes de travail ? Probablement parce que j'étais entouré de personnes extérieures au milieu pour qui cela serait normal.
— Quelles sont les opinions de vos collègues danois ? Il s'avère que s'ils participent à des initiatives - par exemple, des cours pour les femmes, alors ils voient ce problème.
- Oui, définitivement.Nous discutons parfois de tels sujets, comme lors de cours. Ou, par exemple, je pense qu’il n’est pas tout à fait juste qu’une femme perde souvent un certain temps lorsqu’elle est en congé pour s’occuper d’un enfant. En gros, elle perd un an d'expérience. Au Danemark, il existe une solution selon laquelle un homme peut bénéficier des mêmes six mois de congé de maternité qu'une femme peut obtenir s'il le souhaite. S’il ne les prend pas, la femme ne peut pas les prendre. Et ils s'épuisent.
— Il n'y a qu'un an de congé de maternité, dontEst-ce la responsabilité de l'homme de passer six mois et celle de la femme de six mois ? Et si un homme ne veut pas les dépenser, alors, en conséquence, la femme prend un congé de maternité pendant six mois, puis elle retourne au travail, ai-je bien compris ?
- Pour autant que je m'en souvienne, oui. Le fait est qu'un homme n'est pas obligé de partir en congé pour un enfant, mais cette fois-ci ne peut pas être utilisé par une femme. Autrement dit, cela évite que seule une femme soit en congé de maternité. Ici, soit vous passez ces mêmes mois ou demi, ou pas. Je pense que c'est une très bonne idée.
Barre latérale
— Et ces personnes qui ont eu l’idée de créer des cours pour femmes, vous avez discuté avec elles de discrimination positive. Ai-je bien compris que ce sont des hommes ?
— Mon collègue, l'organisateur de ces cours pourLes femmes n'y enseignaient pas, car pour créer un environnement confortable dans ces cours, il n'aurait pas dû y avoir d'enseignants de sexe masculin. En général, oui, ce sont des hommes, bien sûr.
— Si en Russie les personnes qui s'inquiètent de la discrimination à l'égard des femmes sont des femmes, alors dans votre exemple à l'université au Danemark, non seulement les femmes, mais aussi les hommes sont concernés.
- Enfin, pas plus tôt, mais aussi. Et je pense que c'est assez normal.
- Pour la Russie, cela est absolument anormal, car nous avons développé une attitude étrange à cet égard.
— Vous savez, le problème avec le sujet du genre, c'est queNous connaissons quelques cas particuliers et nous n'avons pas de tableau général. J'ai le sentiment qu'en Russie, tout n'est pas si brillant à cet égard. Même si une collègue qui organise des cours pour femmes estime qu'en Russie et dans les pays de l'ex-URSS, c'est bien mieux. Parce que la plupart des programmeuses qu’il connaît viennent de l’ex-Union soviétique. Parce qu'ici, il est considéré comme normal, à son avis, d'aller étudier pour devenir programmeur, mais ici, il faut faire des efforts pour attirer les filles.
— Peut-être que le problème est que les programmeuses des pays de la CEI fuient les pays de la CEI ?
- Eh bien, néanmoins, ils existent.Et il n’y a pas que les femmes qui s’enfuient. Quant à l'extrémité de ce jeune homme, j'ai oublié de le mentionner. J'ai dit que je pensais qu'il était injuste qu'une femme perde une année d'expérience et doive ensuite faire le même niveau de travail parce qu'elle devait continuer à être compétitive dans la profession. En même temps, j'ai choisi un doctorat pour moi, pas pour ma famille. Ce à quoi mon collègue a répondu : « Au moins, vous avez le choix. » Autrement dit, vous pouvez choisir un travail si vous le souhaitez, ou vous pouvez choisir une famille si vous le souhaitez. Mais souvent, ce choix n'est pas disponible. On suppose que l’objectif principal d’une femme est de fonder une famille, de donner naissance à des enfants, de la nourrir, etc.
- Vous n’avez pas l’impression que de tels cours sont des «stylos pour femmes»?
"Pour être honnête, je le pense encore un peu."Plus précisément, si cela fonctionne pour quelqu’un, alors c’est génial et bien. Mais moi-même, je ne me sentirais pas très à l’aise. Je ne pense pas que ce soit une idée super cool, c’est quand même une sorte d’isolement.
- J'ai bien compris :Parce que vous étiez initialement dans un milieu scientifique, ne remarquez-vous pas des problèmes d’attitude chez les scientifiques ? Parce que l'environnement intellectuel et culturel lui-même suppose que l'essentiel n'est pas qui est la personne, mais ce qu'elle a fait.
— Peut-être que cet environnement vous oblige à tenir votre languetais-toi et ne dis pas de choses désagréables aux autres. Peut-être qu'elle est vraiment intelligente. C'est difficile à dire. Mais oui, quand je dis que je suis dans ma tour d'ivoire, je veux dire que je suis un peu détaché de la réalité quotidienne.
"Crache sur tout le monde et va conquérir"
— Souhaitez-vous continuer à étudier et à faire de la recherche à l'avenir ?
"C'est comme Plan A." En d’autres termes, ce n’est pas un fait que je pourrai toujours obtenir un poste qui m’intéresse dans l’académie, mais en tant que plan «B», c’est revenir à l’industrie.
- Avez-vous remarqué une différence dans la qualité de l'enseignement entre l'Université Innopolis et l'Université du Danemark? Il ne s'agit pas de savoir qui est dépassé, mais de la différence d'approche en matière d'éducation.
- Au Danemark, je ne connais pas trop le systèmel'enseignement. Le cours que j’ai enseigné au Danemark était assez inhabituel pour les universités russes, me semble-t-il, mais dire que cela devrait être partout ou au contraire que cela ne devrait pas être nulle part, je ne le peux pas.
Barre latérale
Si vous parlez brièvement de ce cours, ilappelé «Projet de première année d’études» dans lequel les mentors confient des tâches intéressantes. Les étudiants en groupes peuvent choisir les projets sur lesquels ils souhaitent travailler. Le mentor aide à trouver la bonne direction pour résoudre le problème. L'objectif du cours est d'apprendre aux étudiants de première année à étudier, résoudre des problèmes, travailler en équipe et faire une bonne présentation. À l'Université Innopolis, il y a quelque chose de similaire à la deuxième année, mais je ne l'ai pas enseigné. À la KSU, il existait une école plus classique, mais il était possible de choisir des jeunes élus gais.
— Que pouvez-vous dire aux filles qui sont dans une situation différente, à qui on dit que les mathématiques et la programmation ne sont pas une affaire de femmes, mais qu'elles veulent se lancer dans les sciences ?
— Quand on parle de filles qui veulentsi nous nous dirigeons vers la programmation et les spécialités techniques, nous parlons alors très probablement d'adolescents. C'est encore une personne très jeune qui peut être influencée. Il n’est bien sûr pas très sain que les filles soient obligées d’écouter de telles absurdités empreintes de stéréotypes. Si une personne en a la capacité, je lui conseillerais de ne pas écouter les autres, mais de se lancer dans les mathématiques et la programmation.
Но иногда бывает такая ситуация, когда это действительно может быть не твое, и это касается не только технических наук. К примеру, хочет поступить человек в художественное училище, но рисует не очень. Учиться ему будет тяжело, хотя, может быть, он и наверстает. Но иногда честнее сказать, что это не твое, и, может, лучше не мучиться и заняться чем-то другим. Так или иначе, стоит адекватно оценивать эти фразы, зачастую они злоупотребляют «ореолом таинственности» технических наук. Поэтому плюйте на всех и идите покорять.