Hoe it is om te harkjen nei koade mei 1000 wurden per minút

It ferhaal fan in lytse trageedzje en grutte oerwinningen fan in heul goede ûntwikkelder dy't help nedich hat

Hoe it is om te harkjen nei koade mei 1000 wurden per minút

Oan 'e Far Eastern Federal University is d'r in sintrum foar projektaktiviteiten - dêr fine masters en bachelors engineeringprojekten dy't al klanten, jild en perspektiven hawwe. Dêr wurde ek lêzingen en yntinsive kursussen hâlden. Erfarne spesjalisten prate oer moderne en tapaste dingen.

Ien fan 'e yntinsive kursussen wie wijd oan it gebrûk fan it Docker-kontenerisaasjesysteem foar ferspraat komputer en orkestraasje. It waard bywenne troch masters en ôfstudearre studinten fan tapaste wiskunde, engineering, software tarieding en oare technyske gebieten.

De learaar wie in keardel mei in donkere bril, in modieuze kapsel, in sjaal, gesellich en te selsbewuste - benammen foar in 21-jierrige twaddejiersstudint. Syn namme is Evgeny Nekrasov, hy kaam krekt twa jier lyn yn FEFU.

Wunderkind

"Ja, se wiene âlder en hienen mear status, mar ik kin net sizze dat se mear betûft wiene. Dêrnjonken joech ik soms lêzingen foar myn klasgenoaten foar ús juf. Op in stuit realisearren wy dat hy my neat mear jaan koe oer Object Oriented Programming, dus fan tiid ta tiid haw ik foar him les jûn oer OOP, moderne ûntwikkeling, GitHub, en it brûken fan ferzjekontrôlesystemen.

Hoe it is om te harkjen nei koade mei 1000 wurden per minút

Evgeniy kin skriuwe yn Scala, Clojure, Java, JavaScript, Python, Haskell, TypeScript, PHP, Rust, C++, C en Assembler. "Ik ken JavaScript better, de rest is in nivo of twa leger. Mar tagelyk kin ik programmearje in controller yn Rust of C ++ yn in oere. Ik studearre dizze talen net mei opsetsin. Ik studearre se foar de taken dy't my tawiisd waarden. Ik kin meidwaan oan elk projekt troch de dokumintaasje en hantliedingen te bestudearjen. Ik ken de syntaksis fan 'e talen, en hokker te brûken makket net echt út. It is itselde mei kaders en biblioteken - lês gewoan de dokumintaasje en ik begryp hoe't it wurket. Alles wurdt bepaald troch it fakgebiet en de taak.”

Evgeniy hat sûnt 2013 yntinsyf programmearring studearre. In learaar kompjûterwittenskip op 'e middelbere skoalle dy't folslein blyn wie, krige him ynteressearre yn kompjûterwittenskip. It paad begon mei it web - HTML, JavaScript, PHP.

"Ik bin gewoan nijsgjirrich. Ik sliep net folle - ik bin hieltyd mei wat dwaande, wat lêze, wat studearje."

Yn 2015, Evgeniy oanfrege foar de konkurrinsje "Umnik" te stypjen technyske projekten fan jonge wittenskippers oer achttjin jier âld. Mar hy wie gjin achttjin, dus hy slagge net om de konkurrinsje te winnen - mar Evgeniy waard opmurken troch de pleatslike ûntwikkeldersmienskip. Hy moete Sergei Milekhin, dy't op dat stuit konferinsjes organisearre yn Vladivostok as ûnderdiel fan it Google Developer Fest. "Hy noege my dêr út, ik kaam, harke, ik fûn it leuk. It folgjende jier kaam ik wer, learde minsken hieltyd mear kennen, kommunisearre."

Andrey Sitnik fan 'e VLDC-mienskip begon Evgeniy te helpen mei syn webprojekten. "Ik moast in multi-threaded web socket-applikaasje bouwe. Ik tocht foar in hiel lange tiid oer hoe't te dwaan dit yn PHP, en draaide nei Andrey. Hy fertelde my: "Nim node.js, npm-pakketten dy't op it ynternet binne, en brek jo holle net. En yn 't algemien is it ferpleatsen fan iepen boarne cool. Dat ik ferbettere myn Ingelsk, begon dokumintaasje te lêzen en projekten op GitHub te pleatsen.

Yn 2018 joech Evgeniy al presintaasjes by Google Dev Fest, en praat oer ûntwikkelingen op it mêd fan tagonklike ynterfaces, protheses foar boppeste lidmaat, de ûntwikkeling fan neurale ynterfaces en kontaktleaze tagongskontrôlesystemen. No is Evgeniy yn syn twadde jier fan in bachelorstitel yn Software Engineering, mar hy hat it al mei súkses foltôge en einiget syn lêste wurk.

"Ik waard ferteld om de gegevensstruktuer yn in hash-tabel te ymplementearjen. Dit is in standert ding dat wurdt jûn oan elkenien op 'e universiteit. Ik einige mei 12 tûzen rigels koade en in boskje krukken," seit Evgeniy mei in laitsjen, "ik boude in hash-tabel en syn wizige struktuer yn JavaScript om gegevens rapper te lêzen. En de learaar seit: "Ik moat dat jo skriuwe wat makliker foar my is, sadat ik it evaluearje kin." It wie tige ferfelend."

De persoanlike projekten fan Evgeniy sjogge folle nijsgjirriger. De earste dêrfan is de ûntwikkeling fan webnoarmen foar minsken mei fysike handikapten. Hy wol in boarne meitsje dy't assistintetechnology út 'e doaze leveret, sadat minsken mei fisuele beheining it maklik brûke kinne sûnder de soargen te missen wat ynformaasje. Evgeniy wit dit probleem goed, om't hy sels syn eagen ferlear.

Ferwûning

"Ik wie eartiids in gewoane tiener, mei al myn ledematen op it plak. Yn 2012 blies ik mysels op. Ik gie út foar in kuier mei in freon, pakte in silinder op 'e strjitte, en it eksplodearre yn myn hannen. Myn rjochterhân waard ôfskuord, myn lofterhân wie kreupel, myn fisy wie skansearre, en myn gehoar wie beheind. Seis moanne lei ik gewoan op operaasjetafels.

De lofterhân waard gearstald yn dielen, platen en strickende needles waarden ynstalleare. Nei fiif moanne koe ik foar har wurkje.

Nei de blessuere koe ik hielendal neat sjen. Mar dokters slagge om te herstellen ljocht waarnimming. Der wie neat fan myn each oer, útsein de skulp. Alles fan binnen waard ferfongen - de vitreous lichems, de linzen. Alles mooglik."

Yn 2013 gie Zhenya om te studearjen oan in korreksjeskoalle foar bern mei fisuele beheining. Dy learaar ynformatika, dy't folslein blyn wie, learde him wer in kompjûter te brûken. Foar dit doel wurde spesjale programma's brûkt - skermlêzers. Se krije tagong ta bestjoeringssysteem-API's om tagong te krijen ta de ynterface en feroarje de manier wêrop se wurde kontroleare.

Zhenya neamt himsels in fûle Linux-brûker hy brûkt Debian. Mei it toetseboerd navigearret hy troch de ynterface-eleminten, en in spraaksynthesizer stimt wat der bart.

"No sille jo gewoan romte hearre," fertelt er my foardat hy it programma oansette.

It klinkt as in koade of alien chatter, mar yn werklikheid is it gewoane Russysk of Ingelsk, it is gewoan dat de synthesizer sprekt op in ongelooflijke snelheid foar it net trained ear.

"It wie net dreech om dit te learen. Earst wurke ik oan Windows en brûkte ik de skermlêzer Jaws. Ik brûkte it en tocht: "Hear, hoe kinne jo mei sa'n stadige snelheid wurkje." Ik zoomde yn en realisearre dat de earen yn in buis krold wiene. Ik joech it werom en begon it stadichoan elke wike mei 5-10 prosint te ferheegjen. Ik versnelde de synthesizer nei hûndert wurden, dan noch mear, en wer en wer. No sprekt er tûzen wurden yn 'e minút."

Zhenya skriuwt yn in gewoane tekstbewurker - Gedit of Nano. Kopieart boarnen fan Github, lanseart de skermlêzer en harket nei de koade. Om te soargjen dat it maklik kin wurde lêzen en begrepen troch oare ûntwikkelders, brûkt it linters en konfiguraasjes troch. Mar Zhenya kin ûntwikkelingsomjouwings net brûke, om't se net tagonklik binne foar blinen troch har ymplemintaasje.

"Se wurde makke op sa'n manier dat har finster wurdt bepaald troch it systeem, en alles yn it finster wurdt net sjoen troch de skermlêzer, om't it gjin tagong hat. Ik haw no direkt kontakt opnommen mei JetBrains om te besykjen wat patches te meitsjen foar har omjouwings. Se stjoerde my de PyCharm-boarnen. De IDE is ymplementearre op Intellij Idea, dus alle wizigingen kinne sawol dêr as dêr tapast wurde.

In oare barriêre is it gebrek oan neilibjen fan mienskiplike webnoarmen. Wy sjogge bygelyks in grutte kop op in side. In protte ûntwikkelders implementearje dit mei in span-tag om it lettertype oan te spannen nei de winske grutte, en it sjocht der úteinlik goed út. Mar om't de tekst gjin titel is foar it systeem, erkent de skermlêzer it net as in menu-elemint en lit gjin ynteraksje ta.

Zhenya brûkt maklik de mobile ferzje fan VKontakte, mar mijt Facebook: "VK is handich foar my, om't it in aparte list mei navigaasjemenu's hat. It hat eleminten en kopteksten dy't foar my de semantyske ferdieling fan 'e side binne. Bygelyks, de kop fan it earste nivo dêr't myn bynamme wurdt oanjûn - ik wit dat dit de titel fan de side is. Ik wit dat de koptekst "berjochten" de side dielt, en hjirûnder is d'r in list mei dialogen.

Facebook befoarderet tagonklikens, mar yn werklikheid is alles sa slim dat it ûnmooglik is om wat te begripen. Ik doch it iepen - en it programma begjint te befriezen, de side is ferskriklik stadich, alles springt foar my om. D'r binne alle knoppen oeral, en ik bin as, "hoe kin ik sels mei dit wurkje?!" Ik sil it allinich brûke as ik myn klant ôfmeitsje of in tredde partij ferbine.

Undersyk

Zhenya wennet yn Vladivostok yn in gewoane universiteit dorm. D'r is in badkeamer yn 'e keamer, twa kasten, twa bêden, twa tafels, twa planken, in kuolkast. Gjin spesjale gadgets, mar neffens him binne se net nedich. "Visuele beheining betsjuttet net dat ik net kin rinne of gjin manier sil fine. Mar ik koe en soe lokkich mysels útrist mei in tûk hûs as ik hie de verbruiksartikelen. Ik haw gewoan net it jild om komponinten te keapjen. Foar in studint om fiiftûzen te besteegjen oan fergoedingen gewoan om har om har hinne te pikken is heul net rendabel. ”

Zhenya wennet mei in famke, se helpt op in protte manieren om it hûs: "smorbroadjes ferspriede, tee opjaan, wask dwaan. Dêrom hie ik mear tiid om te ûntspannen en de dingen te dwaan wêr't ik fan hâld. ”

Bygelyks, Zhenya hat in muzikale groep dêr't hy spilet de elektryske gitaar. Hy learde ek nei de blessuere. Yn 2016 brocht er trije moanne troch yn in revalidaasjesintrum, dêr't er in learaar frege om him te helpen mei syn gitaar. Earst spile ik mei de naad fan in shirt nei binnen ta. Doe boude ik in mediator.

“Ik naam in ferband om de hân te fersterkjen, dat wurdt brûkt troch bygelyks karateka's, knipte it iepen by de fingerskieders en luts it op 'e ûnderearm. D'r is in foampad dêr't de boarstel beskermet tsjin skea - ik naaide dêr in pick oan dy't myn broer foar my út in plestik spatel snijde. It bleek sa'n lange plestik tonge te wêzen, dêr't ik op 'e snaren spylje - plukje en stroffelje."

De eksploazje blies syn eardrums út, sadat Zhenya gjin lege frekwinsjes hearre kin. Syn gitaar hat net de sechsde (leechste) snaar, en de fyfde is oars ôfstimd. Hy spilet meast solopartijen.

Mar de wichtichste aktiviteiten bliuwe ûntwikkeling en ûndersyk.

Prosthetic hân

Hoe it is om te harkjen nei koade mei 1000 wurden per minút

Ien fan 'e projekten is de ûntwikkeling fan in prothese fan 'e boppeste ledematen mei in tûk kontrôlesysteem. Yn 2016 kaam Zhenya nei de persoan dy't de prothese ûntwikkele en begon him te helpen mei testen. Yn 2017 diene se mei oan de Neurostart hackathon. Yn in team fan trije minsken programmearre Zhenya low-level controllers. Twa mear konstruearren de modellen sels en learden neurale netwurken foar it kontrôlesysteem.

No hat Zhenya it hiele softwarediel fan it projekt oernommen. It brûkt de Myo Armband om spierpotentialen te lêzen, op basis fan maskers te bouwen, en boppe-op neurale netwurkmodellen tapasse om gebaren te erkennen - dit is wêrop it kontrôlesysteem is boud.

"De armband hat acht sensoren. Se stjoere potinsjele feroarings nei elk ynfierapparaat. Ik sleat har SDK mei myn eigen hannen, dekompilearre alles wat nedich wie, en skreau myn eigen lib yn Python om gegevens te lêzen. Fansels binne d'r net genôch gegevens. Sels as ik in miljard sensors op myn hûd set, sil it noch net genôch wêze. De hûd beweecht oer de spieren en de gegevens reitsje trochinoar."

Yn 'e takomst, Zhenya plannen te ynstallearjen ferskate sensoren ûnder de hûd en spieren. Hy soe it no besykje - mar sokke operaasjes binne ferbean yn Ruslân. As in sjirurch net sertifisearre apparatuer ûnder de hûd fan in persoan ymplantearret, sil hy syn diploma kwytreitsje. Zhenya naaide lykwols ien sensor yn 'e hân - in RFID-tag, lykas yn elektroanyske kaaien, om in yntercom te iepenjen of in slot wêrmei de kaai sil wurde keppele.

Keunstmjittich each

Tegearre mei Bogdan Shcheglov, in biochemist en biofysikus, wurket Zhenya oan in prototype fan in keunstmjittich each. Bogdan is dwaande mei 3D-modellering fan 'e eyeball en it ferbinen fan alle mikrocircuits yn in trijediminsjonaal model mei de optyske nerv, Zhenya bout in wiskundich model.

"Wy studearre in ton oan literatuer oer besteande analogen, technologyen dy't op 'e merke wiene en no binne, en realisearre dat ôfbyldingsherkenning net relevant is. Mar wy learden dat in matrix earder makke wie foar it opnimmen fan fotonen en har enerzjy. Wy besletten om in ferlykbere matrix te ûntwikkeljen yn in fermindere grutte, dy't by steat wêze soe om op syn minst in minimum set fotonen te registrearjen en in elektryske puls op har basis te bouwen. Op dizze manier reitsje wy de tuskenlaach fan in dúdlik byld en de erkenning dêrfan kwyt - wy wurkje gewoan direkt."

It resultaat sil fyzje wêze dy't net hielendal yn 'e klassike sin is. Mar sa't Zhenya seit, moat de rest fan 'e optyske nerve it oanbod fan elektryske ympulsen op deselde manier as fan in echte each waarnimme. Yn 2018 besprutsen se it projekt mei de rektor fan 'e Marine Technical University, Gleb Turishchin, en Skolkovo mentor Olga Velichko. Se befêstige dat dit probleem kin wurde oplost mei help fan technologyen dy't al bestean yn 'e wrâld.

"Mar dizze taak is noch dreger dan it ûntwikkeljen fan protheses. Wy kinne net iens in eksperimint op kikkerts útfiere om te kontrolearjen hoe goed de retina ympulsen generearret, hoe't se ôfhinklik binne fan ferskillende ljocht, hokker gebiet mear generearret en hokker minder. Wy hawwe finansiering nedich wêrtroch wy in laboratoarium kinne hiere en minsken ynhiere om taken te ûntbinen en deadlines te ferminderjen. Plus de kosten fan alle nedige materialen. Yn 'e regel komt it allegear op jild."

Burokrasy

Bogdan en Zhenya hawwe Skolkovo oanfrege foar finansiering, mar waarden wegere - allinich klear produkten mei kommersjeel potinsjeel geane dêr, en net ûndersyksprojekten yn 'e opkommende faze.

Nettsjinsteande alle orizjinaliteit yn it ferhaal fan Zhenya, nettsjinsteande syn kapasiteiten en ynspirearjende súksessen, wurdt men ferrast troch it frjemde burokratyske pech. It is foaral ferfelend om hjiroer te hearren tsjin de eftergrûn fan it nijs. Hjir is in oar "produkt dat minsken nedich binne" (in foto-applikaasje, advertinsjeoptimalisaasje of nije soarten petearen) dy't har miljoenen dollars oan ynkomsten en ynvestearring ûntfangt. Mar in ûnbekende entûsjast wit net wat te dwaan mei syn ideeën.

Dit jier wûn Zhenya in fergese stúdzje fan seis moanne yn Eastenryk ûnder in partnerskipsprogramma tusken universiteiten - mar hy kin der net hinne. Om in fisum te befêstigjen, binne garânsjes nedich dat hy jild hat foar húsfesting en libben yn Salzburg.

"In berop dwaan op fûnsen hat gjin resultaten opsmiten, om't finansiering allinich wurdt levere foar folsleine diplomaprogramma's," seit Zhenya, "Berop op 'e Universiteit fan Salzburg sels hat ek net - de universiteit hat gjin eigen sliepsealen en kin ús net helpe mei akkommodaasje.

Ik skreau oan tsien fûnsen, en mar trije of fjouwer reagearren op my. Boppedat antwurde se dat myn wittenskiplike graad har net paste - se hiene masters en heger nedich. Myn wittenskiplike prestaasjes yn undergraduate stúdzjes wurde net wurdearre troch harren. As jo ​​​​studearje oan in pleatslike universiteit, jo hawwe in bachelorstitel en binne dwaande mei technysk ûndersyk, dan kinne jo oanfreegje binnen de universiteit. Mar foar in persoan út it bûtenlân, spitigernôch, se hawwe dit net.

Ik kontakt sawat itselde oantal Russyske fûnsen. Yn Skolkovo seinen se my: sorry, mar wy wurkje allinnich mei masters. Oare stiftingen fertelden my dat se seis moanne gjin finansiering hawwe, of se wurkje allinich mei diplomaprogramma's, of se finansierje gjin yndividuen. En de stiftings fan Prokhorov en Potanin antwurden my net iens.

Ik krige in brief fan Yandex dat se dwaande binne mei grutte woldiedigens en it bedriuw hat op it stuit gjin finansiering, mar se winskje my it bêste.

Ik bin sels ynstimd mei kontraktrjochte finansiering, wêrmei't ik gean kin om te studearjen, en dêrtroch soe ik wat bringe foar it bedriuw. Mar alles stoppet op in leech nivo fan kommunikaasje. Ik begryp wêr't dit oer giet. Minsken dy't wurkje oan telefoantsjes en post wurkje gewoan neffens dokuminten. Se sjogge dat der in applikaasje oankaam is, it kin sels cool wêze. Mar se sille skriuwe: sorry, nee, want of de oanfraachperioade is ferrûn of jo komme net yn oanmerking neffens jo status. Mar ik haw net de mooglikheid om earne heger te berikken as de eigners fan it fûns, ik ha gewoan gjin kontakten.”

Mar berjochten oer it probleem fan Zhenya begon gau te fersprieden oer sosjale netwurken. Yn 'e earste dagen hawwe wy sa'n 50 roebel sammele - fan' e fereaske 000 euro. D'r is net folle tiid om klear te meitsjen, mar in protte minsken skriuwe al nei Zhenya oer stipe. Miskien komt alles goed.

Ik soe bliid wêze om dizze lange tekst oer it weromkommen fan 'e held út Eastenryk te einigjen mei in nije en krêftige ûnderfining. Of in subsydzje krije foar ien fan de projekten, en in foto út it nije laboratoarium. Mar de tekst stoppe yn in sliepkeamer, dêr't twa kasten, twa bêden, twa tafels, twa planken, in kuolkast.

It liket my dat der grutte beropsmienskippen nedich binne om inoar te helpen. De frou fan Nekrasov hat jild nedich, nuttige kontakten, ideeën, advys, alles. Litte wy ús karma ferheegje.

Zhenya's kontakten en oare wichtige figuerene-mail: [e-post beskerme]
Телефон: +7-914-968-93-21
Telegram en WhatsApp: +7-999-057-85-48
github: github.com/Ravino
vk.com: vk.com/ravino_doul

Details foar oerdracht fan fûnsen:
Kaartnûmer: 4276 5000 3572 4382 of telefoannûmer +7-914-968-93-21
Yandex wallet fia telefoannûmer +7-914-968-93-21

Adres: Nekrasov Evgeniy

Boarne: www.habr.com

Add a comment