Larisa Safina, Universitățile din Danemarca de Sud și Innopolis - despre stereotipurile și limbile de programare funcționale nerecuperabile

Larisa Safina— lector superior la Universitatea Innopolis, în prezent doctorand la Universitatea din Yuzhnaya

Danemarca. Ea a lucrat ca tester de software la Fujitsu, lucrând în principal la proiecte de retail. Ea a lucrat și ca șef de testare la Fix pe diverse proiecte.

Studiază limbi de programare precum Haskell, Kotlin și altele.

Haskelisti, programare functionala si limbi populare

- Ce ai făcut în magistratura software-ului la Universitatea Innopolis?

- A fost un program achiziționat de la o universitate.Carnegie Mellon. Acesta a fost bine format în timp, include cursuri de analiză software, arhitectură și metode. Cea mai importantă și interesantă parte începe cu cel de-al doilea semestru - elevii sunt împărțiți în echipe și lucrează pe proiecte reale. În cele din urmă, eficacitatea noastră a fost evaluată prin modul în care ne-am confruntat cu acest proiect.

— Care a fost proiectul tău?

— Am lucrat pentru Rusnano, iar proiectul nostru a fostcontrolul de la distanță al iluminatului în unele orașe - aprinderea iluminatului conform unui program. Aveau o soluție veche, dar doreau să treacă la una nouă.

La acest proiect, toată lumea a făcut totul, a fost important acest lucrutoata lumea a incercat un anumit rol. Desigur, unii oameni au o tendință la unul, alții au alta. Dar, în proiectul nostru, am reușit cu toții să codificăm codul, să elaborăm cerințele, testarea și chiar și arhitectura. Acesta este scopul principal al unor astfel de proiecte.

- A devenit interesant în ce limbi lucrați.

— În timpul studiilor și al serviciului, a trebuitlucrează cu mai multe limbi. Momentan, de exemplu, scriu în Kotlin. Cel mai mult imi place de el. Dar am scris proiectul cu Rusnano în principal în C#. Destul de des am de-a face cu Java, fiind tester, am scris teste in Python, Java, C#. Pentru propria mea plăcere, studiez adesea limbaje de programare funcționale, de exemplu, Haskell, și limbaje formale, de exemplu, pentru demonstrarea teoremelor - Coq.

Programare funcționalăeste o paradigmă de programare în care procesulcalculele sunt interpretate ca calcularea valorilor funcțiilor în sensul matematic al acestora din urmă (spre deosebire de funcțiile ca subrutine în programarea procedurală).

Haskell- limbaj pur funcțional standardizatprogramare de uz general. Este unul dintre cele mai comune limbaje de programare cu suport pentru calcul leneș. Deoarece limbajul este funcțional, structura principală de control este o funcție.

coq- instrument software interactivDemonstrări de teoreme folosind propriul nostru limbaj de programare funcțional (Gallina) cu tipuri dependente. Vă permite să scrieți teoreme matematice și demonstrațiile lor, să le modificați convenabil și să le verificați corectitudinea. Coq este folosit pentru verificarea programului.

Limba oficială— în logica matematică și informatică —un set de cuvinte finite (șiruri, lanțuri) peste un alfabet finit. Conceptul de limbaj este cel mai des folosit în teoria automatelor, teoria computabilității și teoria algoritmilor. Teoria științifică care se ocupă de acest obiect se numește teoria limbajelor formale.

— Toate acestea sună grozav, dar aceste limbaje nu sunt folosite în prezent în proiecte reale.

- Probabil că nu sunt de acord cu tine.De exemplu, Haskell este folosit în producție. Da, nu des, dar nu pentru că este un limbaj prost, mai degrabă pentru că este destul de dificil să aduni o echipă de Haskellisti. Cu toate acestea, cunosc oameni care lucrează cu Haskell în producție. O fac doar din plăcerea mea. Nu am văzut alte limbaje funcționale în producție, dar este bine să le înțeleg pentru dezvoltarea generală. În ceea ce privește limbajele pentru demonstrarea teoremelor, în mediul academic, dacă sunteți în acest subiect anume, acestea sunt folosite destul de des.

- Dar sunt folosite special pentru matematicămodelarea și demonstrarea teoremelor – în scopuri științifice, cu alte cuvinte. Dacă te uiți la posturile vacante, Haskellist-urile practic nu sunt necesare nicăieri toată lumea vrea C+, Java, Python, Ruby, Go, sau chiar merge la front-end - JavaScript. Dar întâlnirea cu Haskellisti este o poveste cu adevărat uimitoare.

— Să spunem că ajută la formalizareunele lucruri care pot fi văzute în realitate. De la limbile care dovedesc teoreme la Haskell, în principiu, nu este departe, iar de la Haskell la industrie este, de asemenea, o aruncătură de piatră. Adică nu totul este atât de rău și inutil.

Probabil că totul are de-a face cu mediul în care mă aflu. Și asta nu mi se pare foarte neobișnuit.

Danemarca, doctorand și microservicii

— Atunci de ce astfel de limbi nu sunt populare în restul lumii? Și de ce sunt interesante pentru tine?

- Practic, pentru că nu este nevoie urgentăutilizati-le. Dacă este posibil să rezolvați o problemă într-un mod mai simplu, dacă nu este super critică și dacă nu este un fel de sistem Boeing și vă puteți descurca cu arme mai mici, atunci sunt alese alte limbi. De ce îmi plac mie? Nu stiu. Îți place ceva - flori, cărți, pisici? De ce iti plac pisicile?

- Se sigilează toți. Îmi place ceea ce obțineți în Danemarca. Cum ai ajuns după Innopolis?

- Când am studiat într-o magistracy, cu excepția principaluluicursuri am avut de a lua elektivy. Și una dintre elementele pe care le-am luat a fost legată de tema microservicii, sau mai precis cu limba de programare a microservicii - Jolie. Autorul său lucrează în prezent în Danemarca. Sarcina mea a fost să fac modificări - să perfecționez, să pun în aplicare unul dintre operatorii posibili.

incut

Când m-am angajat la Universitatea Innopolis, eram dejajob, șeful a întrebat ce vreau să fac, răspunsul meu a fost să obțin un doctorat. În acest moment, a apărut oportunitatea de a deveni candidat la o diplomă academică de la acel profesor din Danemarca, inventatorul limbii Jolie. Astfel, am organizat un doctorat comun între Universitatea Innopolis și o universitate daneză, Universitatea Danemarcei de Sud.

- Ce cauți în Danemarca?

- În Danemarca, lucrăm la un proiect, elușor asociat cu microservicii și, în principiu, cu interacțiunea elementelor din cadrul sistemelor distribuite. Liderii mei științifici au propus formalizarea - o specificație globală pentru microservici. Ei au arătat că puteți afișa o specificație pentru fiecare element.

Îl putem folosi dacă îl avemun fel de sistem de elemente care interacționează. Dacă putem deriva o specificație generală a comportamentului tuturor elementelor fără un orchestrator - fără un nod care să le controleze pe toate celelalte - atunci putem deriva o specificație pentru fiecare nod din acesta și invers. În acest fel, ne protejăm de erori, deoarece dacă am face o specificație pentru fiecare nod separat, am putea întâmpina ulterior probleme cu interacțiunea lor.

Universitatea din Sudul Danemarcei. Foto: ricochet64/Shutterstock

Imaginează-ți scenariul:vrei să trimiți bani la o bancă, care trebuie să-i transfere la alta. Și ai scris o specificație pentru o bancă că le transferă la a doua bancă, iar în a doua ai uitat să spui că ar trebui să primească ceva. Și, prin urmare, transferul dvs. nu va ajunge niciodată la destinatar. Odată ce aveți o descriere globală a acestui sistem, specificând toate rolurile și acțiunile pe care trebuie să le îndeplinească fiecare dintre participanți, puteți obține o specificație a comportamentului fiecăruia dintre participanți și astfel vă puteți proteja de o astfel de problemă.

Supraveghetorii mei au oficializat acest lucru,prin scrierea a două limbaje teoretice pentru a descrie modelul global al nodurilor și comportamentul unui anumit nod. Sarcina mea este să implementez și să testez, să arăt cât de eficient este modelul lor propus în comparație cu alții.

De ce se acordă subvenții femeilor - este o rușine

— Când am scris că vreau să vorbesc cu tine despre IT și femei, ai spus că nu va fi foarte ușor să vorbești despre asta, dar erai gata să-l dai voce. De ce ai aceasta parere?

— Cred că acesta este un subiect destul de sensibil.Și m-am întrebat dacă merită să vorbesc despre asta și să stârnesc cuibul viespelor. Pentru că, într-adevăr, e ca și cum te-ai plimba printr-un câmp minat. Indiferent ce ai spune, cineva va fi jignit, iar unii vor crede că vorbești despre un fel de erezie sălbatică.

- De ce crezi asta?

— În principiu, văd adesea reacții diferite ale oamenilor la aceste întrebări. Asemenea subiecte sunt adesea discutate. Și văd o diversitate de opinii.

— Când ați mers la Universitatea din Kazan pentru a studia specialitatea pentru bărbați, nu mai era considerată specialitate pentru bărbați?

- Da, nu înțeleg de unde a venit opinia, că aceasta este o specialitate masculină. Am avut aproximativ 50% din fete la VIC (la Universitatea Kazan - "high-tech").

- Și când ați plecat, a existat o diferență de atitudine față de ceea ce faceți în Danemarca și în Rusia?

- Nu am experimentat niciodată să fiuoarecum slăbit pe baza genului. Dacă vrei să spui, mi-a spus cineva aici în Danemarca că sunt un bărbat specialist, atunci nu. Dar diferența este că aici chiar își doresc să fie mai multe femei atât în ​​IT, cât și în mediul academic. Și nu doar vor, iau unele măsuri și uneori, din punctul meu de vedere, fac chiar mai mult decât este necesar și merită.

- Și ce măsuri sunt luate?

- Ei bine, din ceea ce este, de exemplu, acestea suntprogramare numai pentru femei. Un coleg a spus că aceasta este o erezie și acest lucru creează doar segregarea între programatorii de sex masculin și de sex feminin. Am fost de acord cu această abordare, dar organizatorul cursului a fost oarecum surprins. Și după o vreme am întrebat cum au mers aceste cursuri. Și sa dovedit că o mulțime de fete au venit acolo, pentru multe fete a fost o diferență - să meargă doar într-o companie de sex feminin sau într-o companie mixtă. Mulți au vrut să meargă pur și simplu la feminin, diferența fiind vizibil palpabilă - nu a fost un accident. Și mi-am dat seama că, dacă n-am văzut această problemă, fiind în turnul meu de fildeș, nu am observat că fetele ar putea fi jenate sau, din anumite motive, nu vor să se angajeze cu tinerii, asta nu înseamnă că nu există nici o problemă.

incut

Și în ceea ce privește alte lucruri care sunt diferite înÎn Europa și Rusia, în ceea ce privește atragerea cu sârguință a femeilor, există o cotă. Locurile, de exemplu granturile, pot fi rezervate special femeilor. Și asta, din punctul meu de vedere, creează o tendință nu foarte bună, pentru că de multe ori femeile care ajung în aceste locuri nu știu întotdeauna dacă le-au primit pentru că ei înșiși sunt cool, au făcut ceva foarte tare sau le-au primit, pentru că cineva a decis că nu sunt suficiente femei în această zonă. Aceasta este cealaltă față a monedei. Există un efect pozitiv - ați primit un grant și un efect negativ - motivul pentru care l-ați primit.

— Ți-ar plăcea să primești o bursă într-o zi pentru că ești femeie?

„În general, cred că este destul de ofensator.” (râde)

— Este păcat să primești o bursă pentru că ești femeie și nu pentru că ești un specialist cool?

- Da, pentru că asta sugerează că nu munca mea a fost evaluată, ci genul meu.

— Crezi că munca ta a fost vreodată evaluată, în Rusia sau în Danemarca, tocmai pentru că ești femeie sau s-a schimbat evaluarea muncii tale de către oamenii din jurul tău pentru că ești femeie?

- Știi, cumva, cum îmi amintesc, nu trebuia să mă descurc cu asta. Poate că sunt naiv și nu știu că se întâmplă asta, dar nimeni nu mi-a spus: "E bine pentru o fată."

Discriminarea pozitivă, decretul pentru bărbați și stereotipurile care nu ucid

— Cum au reacționat părinții tăi la alegerea ta de carieră – pozitiv? Sau au avut o viziune diferită asupra a ceea ce ar trebui să faci?

— De fapt, când eram la școală, dupăDupă absolvire, am vrut să studiez limbi străine, dar părinții mei mi-au sugerat să aleg matematica și programarea, pentru că ei înșiși vedeau limbajele ca pe un instrument care poate fi învățat mai târziu, iar matematica și programarea ca ceva mai fundamental. Este amuzant cât de mulți oameni de știință tratează matematica ca pe un instrument.

Și ca să fiu sinceră, mereu m-am întrebat de ceExistă un fel de aură nesănătoasă de complexitate în specialitățile tehnice. Cred că este necinstit și doar sperie fetele. De exemplu, nu am auzit niciodată fetelor care vor să studieze lingvistica spunându-se: „Oh, există gramatică istorică, este atât de dificil!” Sau fetelor care doreau să devină arhitecte li s-a spus: „O, acolo va trebui să faci și multă muncă de rezistență a materialelor.” Acum pot să încurc, mai degrabă, fetele inginere, sau ca anatomia pentru doctori. Dar din anumite motive, tocmai științele tehnice sunt cele care au acest lucru.

- Sunt de la Sankt Petersburg și de multe ori am auzit: pentru care am studiat, pentru care am lucrat sau pentru ce mă interesează nu este pentru o femeie. Și prietenii mei au spus același lucru dacă erau brusc interesați de matematică, programare sau știință.

— Mi se pare că, dimpotrivă, în regiunea noastrămai patriarhal decât al tău, așa că bineînțeles că sunt surprins. Cred că are ceva de-a face cu mediul specific. Poate că în tinerețe... nu, nu pot spune că am fost oarecum norocos la universitate, am fost tratat așa cum trebuie. Dar, de exemplu, la volan. Nu am primit niciodată atâtea insulte bazate pe gen ca în timp ce conduceam. În ciuda faptului că acest lucru nu are absolut nicio bază. Prin urmare, știu că există stereotipuri care nu se pot ucide și multe femei se confruntă cu ele. De ce nu i-am întâlnit în materie de muncă? Probabil pentru că eram înconjurat de oameni nu din mediul înconjurător pentru care acest lucru ar fi normal.

— Care sunt părerile colegilor dumneavoastră danezi? Se pare că dacă sunt implicate în inițiative - de exemplu, cursuri pentru femei, atunci văd această problemă.

- Da cu siguranta.Uneori discutăm astfel de subiecte, cum ar fi cursurile. Sau, de exemplu, cred că nu este în întregime corect ca o femeie să piardă adesea o anumită perioadă de timp în timpul concediului pentru a avea grijă de un copil. În linii mari, ea pierde un an de experiență. În Danemarca există o soluție că un bărbat poate primi aceleași șase luni de concediu de maternitate pe care le poate obține o femeie dacă dorește. Dacă nu le ia, atunci femeia nu le poate lua. Și pur și simplu se ard.

— Există doar un an de concediu de maternitate, din careEste responsabilitatea bărbatului să petreacă șase luni, iar a femeii șase luni? Și dacă un bărbat nu vrea să le cheltuiască, atunci, în consecință, femeia stă în concediu de maternitate timp de șase luni, apoi se întoarce la muncă, am înțeles eu bine?

- În ceea ce îmi amintesc, da. Ideea este că un bărbat nu este obligat să plece în concediu pentru un copil, dar de data aceasta nu poate fi folosit de o femeie. Adică, previne astfel de situații că doar o femeie va fi în concediu de maternitate. Aici petreceți aceiași jumătate de an sau nu. Cred că aceasta este o idee foarte bună.

incut

— Și acei oameni care au avut ideea să creeze cursuri pentru femei, ați discutat despre discriminare pozitivă cu ei. Am înțeles bine că aceștia sunt bărbați?

— Colegul meu, organizatorul acestor cursuri ptfemeile, nu predau acolo, pentru că pentru a crea un mediu confortabil în aceste cursuri nu ar fi trebuit să existe profesori bărbați. În general, da, aceștia sunt bărbați, desigur.

— Dacă în Rusia persoanele care sunt preocupate de discriminarea femeilor sunt femei, atunci, în exemplul dvs. de la universitatea din Danemarca, nu numai femeile, ci chiar și bărbații sunt preocupați.

- Ei bine, nu mai devreme, dar și. Și cred că este destul de normal.

- Pentru Rusia, acest lucru este absolut anormal, pentru că am dezvoltat o atitudine ciudată în această privință.

— Știi, problema cu tema genului este aceeaCunoaștem câteva cazuri speciale și nu avem o imagine generală. Am sentimentul că în Rusia totul nu este atât de strălucit în acest sens. Deși un coleg care organizează cursuri pentru femei crede că în Rusia și în țările fostei URSS acest lucru este mult mai bine. Pentru că majoritatea femeilor programatoare pe care le cunoaște provin din fosta Uniune Sovietică. Pentru că aici se consideră normal, după părerea lui, să meargă la studii pentru a deveni programator, dar aici trebuie să facă eforturi pentru a atrage fete.

— Poate că problema este că femeile programatoare din țările CSI fug din țările CSI?

- Ei bine, cu toate acestea, ele există.Și nu doar femeile fug. Cât despre extremitatea acestui tânăr, am uitat să menționez asta. Am spus că mi se pare nedrept ca o femeie să piardă un an de experiență și apoi să fie nevoită să facă același nivel de muncă pentru că trebuie să continue să concureze în profesie. În același timp, mi-am ales un doctorat pentru mine, nu o familie. La care colegul meu a răspuns: „Măcar ai de ales.” Adică poți alege un loc de muncă dacă vrei, sau poți alege o familie dacă vrei. Dar adesea această alegere nu este disponibilă. Se presupune că scopul principal al unei femei este să întemeieze o familie, să nască copii, să o hrănească etc.

- Aveți sentimentul că astfel de cursuri sunt "pixuri pentru femei"?

„Ca să fiu sincer, încă mă gândesc puțin.”Mai precis, dacă funcționează pentru cineva, atunci este grozav și bine. Dar eu însumi nu m-aș simți foarte confortabil. Nu cred că aceasta este o idee super cool, este încă un fel de izolare.

- Am inteles bine:Pentru că ați fost inițial într-un mediu științific, nu observați probleme de atitudine în rândul oamenilor de știință? Pentru că mediul intelectual și cultural însuși presupune că principalul lucru nu este cine este persoana, ci ceea ce a făcut.

— Poate că acest mediu vă cere să țineți limbaține gura și nu spune lucruri urâte altora. Poate că ea chiar este inteligentă. Greu de spus. Dar da, când spun că sunt în turnul meu de fildeș, ceea ce vreau să spun este că sunt oarecum deconectat de realitatea cotidiană.

"Spit pe toată lumea și du-te cucerire"

— Vrei să continui să studiezi și să faci cercetări în viitor?

"Este ca Planul A." Asta este, nu este un fapt că voi fi întotdeauna în măsură să obțin o poziție care mă interesează în academie, dar ca un plan "B" este de a reveni la industrie.

- Observați o diferență în calitatea educației dintre Universitatea Innopolis și Universitatea din Danemarca? Nu este vorba despre una care este depășită, ci despre diferența dintre abordările educației.

- În Danemarca, nu sunt atât de familiarizat cu sistemulpredare. Cursul pe care l-am învățat în Danemarca era destul de neobișnuit pentru universitățile rusești, așa cum mi se pare, ci să spun că ar trebui să fie peste tot sau, dimpotrivă, să nu fie nicăieri, nu pot.

incut

Dacă vorbești scurt despre acest curs, elnumit "Proiectul primului an de studiu", în care mentorii dau sarcini interesante. Elevii din grupuri pot alege care dintre ei doresc să lucreze. Mentorul ajută la găsirea direcției corecte în rezolvarea problemei. Scopul cursului este de a învăța elevii din primul an să studieze, să rezolve problemele, să lucreze împreună într-o echipă și să facă o bună prezentare. La Universitatea Innopolis, există ceva similar celui de-al doilea an, dar nu l-am învățat. La KSU a existat o școală mai clasică, însă a fost posibilă alegerea alegerilor vesele de tineret.

— Ce le poți spune fetelor care se află într-o situație diferită, cărora li se spune că matematica și programarea nu sunt treaba femeilor, ci vor să intre în știință?

— Când vorbim despre fetele care vorintră în programare și specialități tehnice, atunci cel mai probabil vorbim de adolescenți. Aceasta este încă o persoană foarte tânără care poate fi influențată. Desigur, nu este foarte sănătos că fetele trebuie să asculte astfel de prostii cu stereotipuri. Dacă o persoană are capacitatea, atunci aș sfătui să nu-i asculte pe alții, ci să treacă la matematică și programare.

Dar uneori există o situație în cares-ar putea să nu fie al tău, iar acest lucru se aplică nu numai științelor tehnice. De exemplu, o persoană vrea să meargă la școala de artă, dar nu desenează foarte bine. Îi va fi greu să studieze, deși poate că va ajunge din urmă. Dar uneori este mai sincer să spui că nu e treaba ta și poate că e mai bine să nu suferi și să faci altceva. Într-un fel sau altul, merită să evaluăm în mod adecvat aceste fraze, ele abuzează adesea de „aura de mister” a științelor tehnice. Prin urmare, scuipă pe toată lumea și du-te cuceri.