The story of a small tragedy and great victories of a very good developer who needs help

The Far Eastern Federal University has a project activity center where master's and bachelor's students find engineering projects that already have customers, funding, and prospects. They also host lectures and intensive courses. Experienced specialists talk about modern and practical matters.
One of the intensives was dedicated to the use of the Docker containerization system for distributed computing and orchestration. Master's students and postgraduates in applied mathematics, engineering, software preparation, and other technical fields attended it.
The instructor was a guy in dark glasses, with a stylish haircut and a scarf, sociable and overly confidentāespecially for a 21-year-old second-year student. His name is Evgeny Nekrasov, and he entered the Far Eastern Federal University just two years ago.
Wonderkind
"Yes, they were older and more prestigious, but I can't say they were more experienced. Besides, I occasionally taught lectures to my classmates in place of our instructor. At some point, we realized that he couldn't teach me anything more about Object-Oriented Programming, so I periodically delivered lectures on OOP, modern development, GitHub, and version control systems."

Evgeny can write in Scala, Clojure, Java, JavaScript, Python, Haskell, TypeScript, PHP, Rust, C++, C, and Assembler. "I know JavaScript best; the others are one or two levels below. However, I can program a controller in Rust or C++ in an hour. I didn't learn these languages intentionally; I studied them for the tasks I was given. I can integrate into any project by studying the documentation and manuals. I know the syntax of the languages, and which one to use doesn't particularly matter. The subject area and the task define everything, including frameworks and librariesāreading the documentation is enough for me to understand how it works."
Evgeny has been intensively studying programming since 2013. A completely blind school computer science teacher sparked his interest in computer science. His journey began with the webāHTML, JavaScript, PHP.
"I'm just interested. I sleep littleāI'm constantly busy, reading or studying something."
In 2015, Evgeny applied for the "Umnik" competition to support technical projects by young scientists aged eighteen and older. However, he was not yet eighteen, so he did not win the competition ā but he caught the attention of the local developer community. He met Sergey Milekhin, who was organizing conferences in Vladivostok as part of Google Developer Fest at that time. "He invited me there, I went, listened, and I liked it. The next year I came back again, getting to know more people and interacting with them."
Andrey Sitnik from the VLDC community began helping Evgeny with his web projects. "I needed to build a multithreaded application for processing WebSockets. I thought for a long time about how to do it in PHP and reached out to Andrey. He said, 'Use node.js, npm packages available online, and don't overthink it. And promoting open source is cool.' So, I improved my English, started reading the documentation, and published projects on GitHub."
By 2018, Evgeny was already speaking at Google Dev Fest with his talks, discussing developments in accessible interfaces, upper limb prosthetics, the development of neural interfaces, and contactless access control systems. Now, Evgeny is in his second year of undergraduate studies in Software Engineering, but he has already completed the program successfully and is finishing his final project.
"I was told to implement a data structure in a hash table. It's a standard assignment given to everyone in university. I ended up with 12,000 lines of code and a lot of workarounds," Evgeny laughs, "I built a hash table and its modified structure in JavaScript to read data faster. But the instructor says, 'I need you to write it in a way that I can grade easily.' It was quite frustrating."
Evgeny's personal projects are much more interesting. The first one is the development of web standards for people with physical disabilities. He wants to create a resource that includes assistive technology out of the box, so people with visual impairments can easily use it and not worry that some information will be inaccessible to them. Evgeny knows this problem well because he lost his vision himself.
Injury
I used to be an ordinary teenager, with all my limbs intact. In 2012, I was blown up. I went for a walk with a friend and picked up a can on the street, which exploded in my hands. It blew off my right wrist, injured my left, damaged my vision, and impaired my hearing. For six months, I was just lying on operating tables.
They rebuilt my left hand from pieces, putting in plates and pins. After five months, I was able to use it.
After the injury, I couldn't see anything at all. But the doctors managed to restore my light perception. I was left with nothing but the shell of my eye. Everything inside was replacedāvitreous body, lenses. Everything that could be.
In 2013, Zhenya went to a correctional school for children with visual impairments. The computer science teacher, who was completely blind, taught him how to use a computer again. Special programs called screen readers are used for this. They access the operating systems' APIs to reach the interface and slightly change the way it's controlled.
Zhenya calls himself an avid Linux user; he uses Debian. He navigates through the interface elements with the keyboard, while a speech synthesizer vocalizes what's happening.
"Now you're going to hear something amazing," he tells me before starting the program.
It sounds like code or alien chatter, but in reality, it's just ordinary Russian or English, only the synthesizer speaks at an incredible speed for untrained ears.
"It wasn't hard to learn this. At first, I worked in Windows and used the screen reader program Jaws. I thought to myself, 'God, how can anyone work at such a slow speed?' I increased it and realized my ears were twisting. I turned it back and gradually started increasing it by 5-10 percent each week. I got the synthesizer up to a hundred words, then more, and more. Now it speaks a thousand words per minute for me."
Zhenya writes in a regular text editorāGedit or Nano. He copies source code from GitHub, launches the screen reader, and listens to the code. To ensure that other developers can read and understand his code without problems, he extensively uses linters and configurations. However, Zhenya can't use development environments because they are inaccessible to the visually impaired due to their implementation.
They are designed in such a way that their window is defined by the system, and everything inside the window is not visible to the screen reader because it cannot access it. I have contacted JetBrains directly to try to make some patches in their environments. They sent me the source code for PyCharm. The IDE is implemented on IntelliJ IDEA, so all changes can be applied both there and here.
Another barrier is the lack of adherence to common web standards. For example, we see a large heading on the page. Many developers implement it using a span tag to pull the font up to the desired size, and as a result, it looks fine. But since the text is not a heading for the system, the screen reader does not recognize it as a menu element and does not allow interaction.
Zhenya easily uses the mobile version of VKontakte but avoids Facebook: "VK is convenient for me because it has a separate navigation menu list. It contains elements and headings that provide semantic segmentation of the page for me. For example, the first-level heading, where my nickname is mentioned ā I know that this is the page title. I know that the heading 'messages' divides the page, and below there is a list of dialogues.
Facebook promotes accessibility, but in reality, it's so bad that nothing is understandable. I open it ā and the program starts to hang, the page lags terribly, everything is jumping around. There are buttons everywhere, and I think, 'how do I even work with this?!' I will only use it if I tweak my client or connect a third-party one.
Research
Zhenya lives in Vladivostok in a regular university dormitory. There's a bathroom in the room, two wardrobes, two beds, two desks, two shelves, and a refrigerator. No special gadgets, but according to him ā they're not needed. 'Vision impairment doesn't mean that I can't walk or won't find my way. But I might gladly equip myself with a smart home if I had the resources. I simply don't have the money to buy components. For a student, spending five thousand on a board just to poke at it is really unwise.'
Zhenya lives with his girlfriend, who helps him a lot with daily tasks: 'spreading sandwiches, pouring tea, doing laundry. So I have more time to relax and engage in my favorite activities.'
For example, Zhenya has a band where he plays the electric guitar. He learned after his injury. In 2016, he spent three months at a rehabilitation center, where he asked a teacher for help with the guitar. At first, he played with the seam of a shirt turned inside out. Then he made a pick.
"I used a wrist support, like the ones karate practitioners use, which I cut open between the fingers and pulled onto my forearm. It has a foam pad that protects the wrist from injury ā to it, I stitched the pick that my brother cut from a plastic spatula. It turned into a long plastic tongue that I play across the strings ā both strumming and picking."
The explosion damaged his eardrums, so Zhenya cannot hear low frequencies. His guitar lacks the sixth (lowest) string, and the fifth is tuned differently. He mainly plays solo parts.
However, his main activities remain development and research.
Prosthetic Arm
One of the projects is the development of an upper limb prosthetic with a smart control system. In 2016, Zhenya approached a person working on the prosthetic and started helping him with testing. In 2017, they participated in the 'Neurostart' hackathon. In a team of three, Zhenya programmed low-level controllers. The other two constructed the models and trained the neural networks for the control system.Now, Zhenya has taken over all the software parts of the project. He uses the Myo Armband to read muscle potentials, builds masks from them, and applies neural network models on top for gesture recognition ā this is how the control system is built.
"The armband has eight sensors. They transmit changes in potentials to any input device. I painstakingly dug into their SDK, decompiled everything necessary, and wrote my own library in Python to read the data. Of course, the data is insufficient. Even if I attach a billion sensors to the skin, it still won't be enough. The skin moves over the muscles, and the data gets mixed up."
In the future, Zhenya plans to implant several sensors under his skin and in his muscles. He would try this already ā but such procedures are banned in Russia. If a surgeon implants uncertified equipment under a person's skin, they would lose their medical license. Nevertheless, Zhenya stitched one sensor into his hand ā an RFID tag, like those in electronic keys, to unlock the intercom or any lock to which the key will be attached.
Artificial Eye
Together with Bogdan Shcheglov, a biochemist and biophysicist, Zhenya is working on a prototype of an artificial eye. Bogdan is engaged in 3D modeling of the eyeball and connecting all the microchips in a three-dimensional model with the optic nerve, while Zhenya constructs a mathematical model.
"We have studied a ton of literature on existing analogs and technologies that were and are on the market, and we realized that image recognition is not relevant. However, we learned that a matrix had previously been created to register photons and their energy. We decided to develop a similar matrix in a smaller size that would be capable of registering at least a minimal set of photons and building an electrical impulse based on them. Thus, we eliminate the intermediate layer of clear imagery and recognition ā we just work directly."
As a result, the vision will not be conventional in the classic sense. But as Zhenya says, the remaining part of the optic nerve should interpret the electrical impulses in the same way as it does from a real eye. In 2018, they discussed the project with the rector of the Marine Technical University, Gleb Turishchev, and the mentor from Skolkovo, Olga Velichko. They confirmed that this problem could be solved with existing technologies available in the world.
"But this task is even more complex than developing prosthetics. We cannot even conduct experiments on frogs to check how well the retina generates impulses, how they depend on different light, which area generates more and which generates less. Funding is needed to rent a laboratory and hire people to decompose the tasks and reduce timelines. Plus, the costs for all the necessary materials. Usually, it all comes down to money."
Bureaucracy
Bohdan and Zhenya applied to Skolkovo for funding but were denied ā only ready products with commercial potential qualify, not research projects in the early stages.
Given the unusual circumstances in Zhenya's story, his talents, and inspiring successes ā it's surprising how strange bureaucratic misfortune seems. It's particularly frustrating to hear this against the background of the news. Hereās another 'product needed by people' (an app for photos, advertising optimization, or new types of chat applications) generating millions of dollars in revenue and investment. Meanwhile, an unknown enthusiast doesn't know what to do with his ideas.
This year, Zhenya won a free six-month training program in Austria through a partnership between universities ā but he can't go there. To confirm the visa, he needs assurances that he has enough money for housing and living expenses in Salzburg.
"Appealing to funds hasn't yielded results because funding is only available for full diploma programs," says Zhenya, "Contacting the University of Salzburg also didnāt help ā the university doesnāt have its own dormitories and canāt assist us with accommodation.
I wrote to ten funds, and only three or four replied. And they said that my academic degree doesnāt meet their criteria ā they are looking for masterās degrees or higher. My research work during my bachelorās degree doesn't count for them. If you study at a local university, you are a bachelor and involved in technical research, you can submit your documents within the university. Unfortunately, thereās no such option for someone from abroad.
I approached approximately the same number of Russian funds. Skolkovo told me: sorry, but we only work with master's degree holders. Other funds told me they donāt have funding for six months, or they only work with diploma programs, or they donāt finance individuals at all. As for the Prokhorov and Potanin funds, they didnāt even reply to me.
I received a letter from Yandex stating that they engage in significant charitable work and the company currently has no funding, but they wish me all the best.
I was even willing to accept contract-based funding that would allow me to study abroad, and in return, I would bring something back for the company. But everything stops due to a low level of communication. I understand the reasons. People who work with phone calls and emails operate solely on documents. They see that an application has come in, and it might even be great. But they will write: sorry, no, either because the application deadline has passed or you don't qualify. I have no way to reach out to higher-ups at the fund; I simply don't have those contacts.
However, posts about Zhenya's problem quickly spread across social media. In the first few days, about 50,000 rubles were raised out of the necessary 12,000 euros. There's not much time left to raise the funds, but many have already reached out to Zhenya offering support. Perhaps we will succeed.
I would be glad to conclude this long text with the hero's return from Austria with powerful new experiences. Or about receiving a grant for one of the projects, alongside a photo from the new lab. But the text stopped in the dorm room, which has two wardrobes, two beds, two tables, two shelves, and a refrigerator.
I think large professional communities are needed to help each other. Zhenya Nekrasov needs money, useful contacts, ideas, advice, anything at all. Let's boost our karma.
Zhenya's contacts and other important numberse-mail: evgeniy@nekrasov.pw
Phone: +7-914-968-93-21
Telegram and WhatsApp: +7-999-057-85-48
github:
vk.com: vk.com/ravino_doul
Details for transferring funds:
Card number: 4276 5000 3572 4382 or by phone number +7-914-968-93-21
Yandex wallet by phone number +7-914-968-93-21
Recipient: Evgeny Nekrasov
Source: habr.com

