10.6к
3
0
Скопировать ссылку
Telegram
WhatsApp
Vkontakte
Одноклассники
Назад

Как работает незрячий программист?

Время чтения 4 минуты
Нет времени читать?
Скопировать ссылку
Telegram
WhatsApp
Vkontakte
Одноклассники
10.6к
3
0
Нет времени читать?
Скопировать ссылку
Telegram
WhatsApp
Vkontakte
Одноклассники

Привет! Меня зовут Денис Скрипник, я из Новосибирска. Я с рождения не вижу из-за повреждения зрительного нерва. Например, различаю только крупные предметы и некоторые цвета. Когда я вижу дерево, то осознаю, что именно находится передо мной, но не в состоянии определить его разновидность. Невзирая на мой диагноз, я выучился на программиста и сейчас пытаюсь по максимуму самореализоваться в этой сфере.

Как работает незрячий программист?

Путь в профессию

Я учился в специализированной школе-интернате для незрячих и слабовидящих. Потом поступил на программиста в колледж для людей с ограниченными возможностями. Сначала учился при помощи шрифта Брайля и только после 12-го класса перешел на ноутбук. У нас была замедленная программа: 10 классов — среднее образование и 12 — полное.

В 2010–2011 годах, когда мне было 14 лет, я научился обращаться с домашним компьютером. Заниматься получалось, только когда он не был нужен моим родителям. Разобраться с устройством также помогали одноклассники, у которых дома были свои компьютеры.

Я понял, что готов связать свою жизнь с программированием, когда осознал, насколько мне нравится писать код. Это такое чудо — наблюдать, как написанная программа работает сама! Я начал воспринимать код как еще один интересный язык, на котором можно писать «книги» с автоматическим исполнением действий.

Для работы мне не нужны ни монитор, ни мышь. Вместо них на столе стоит клавиатура и колонки. Никакими специализированными устройствами наподобие брайлевских дисплеев я не пользуюсь. Монитор заменяет программа экранного доступа NVDA: она озвучивает мои действия и события в ОС (только тексты интерфейсов и контент).

Во время работы я не открываю ноутбук и не включаю монитор, но при этом печатаю на клавиатуре

Блокчейн как окно возможностей

Я начал работать в 2015 году, но первые два года проявлял мало активности, так как не мог придумать собственных проектов.

На 2017–2018 годы пришелся бум криптовалют и технологии блокчейн. Я познакомился с сайтом Golos.id, который привлек меня своей нестандартностью. Сначала читал чужие статьи на этой платформе, а вскоре начал публиковать собственные посты и получать за них донаты. За этим последовали другие блокчейны. Меня восхитила идеология децентрализации, а также возможность «вечного» хранения информации в первозданном виде. 

Я начал создавать телеграм-ботов и сайты, сперва шаблонные по внешнему виду. Вознаграждения за анонсы разработок получал в блокчейнах. Наиболее существенные выплаты поступали в чейне VIZ, где предусмотрена система воркеров. Для VIZ я писал программы с открытым кодом для сообщества проекта. Именно на этом витке карьеры я стал кайфовать от создания собственных детищ, а в сфере блокчейна нашел многочисленных единомышленников.

Сложно ли программировать без зрения?

Во время обучения некоторые языки программирования и платформы оставались для меня недоступными или плохо доступными. Приходилось просить помощи у зрячих или договариваться с преподавателями. Позже я выбирал для самостоятельного изучения только те языки, с которыми точно смог бы справиться.

К примеру, у меня не сложилось с Rust. Там нагроможден настолько сложный синтаксис, что у меня голова вспухла, и я забросил его изучение. С Python тоже не срослось. В этом языке нет скобок, выделяющих блоки кода, а в процессе работы я могу случайно удалить отступ, и тогда вся логика нарушается.

У незрячих программистов есть свои чаты, в которых мы обсуждаем нюансы разработки. Но в целом пользуемся теми же источниками информации, что и зрячие коллеги. Правда, иногда возникают затруднения — например, при чтении статей, в которых примеры кода не прописаны текстом, а вставлены скринами. Хотелось бы, чтобы таких статей в интернете было меньше. 

Главной же проблемой я считаю недостаточно полные документации. Отдельные разделы в некоторых документациях непонятны настолько, что приходится пользоваться поисковиком или ChatGPT.

Я не берусь за задачи, связанные с дизайном и интерфейсами, не программирую графики и не работаю со сложными математическими моделями, потому что их сложно воспринимать на слух.

Мои любимые продукты — те, что с открытым кодом. Над ними можно трудиться совместно с другими разработчиками. Плюс открытый код идеален для того, чтобы узнавать нечто новое и совершенствоваться.

Как незрячему программисту найти работу?

Поначалу я пробовал искать заказчиков на биржах фриланса, но это оказалось непросто. Предлагал себя в качестве исполнителя без привязки к опубликованным заказам, но на это откликнулись немногие клиенты. 

Большинство опубликованных заказов, на которые клиенты искали исполнителей, были слишком сложны для меня либо совсем не подходили. Во-первых, ряд проектов был связан с визуальной частью. Во-вторых, для некоторых задач требовались технологии, которыми я раньше не пользовался — например, TypeScript и специальные варианты авторизации API. Я был готов изучить эти технологии, но заказчики чаще всего ищут исполнителей с опытом.

В 2021 году я запустил телеграм-канал @blind_dev. Там рассказываю о себе и своих проектах, а также публикую обзоры интересных событий в криптовалютной сфере. Для аудитории канала написал, в частности, бота с курсами криптовалют и акций, бота с постами для одного сайта и бота для заполнения аудита проектов по методике 4К (команда, концепт, коин, код). 

В зависимости от функционала, на создание одного бота у меня уходит от одного-двух дней до одного месяца. Некоторые детища я продолжаю развивать и придумывать для них что-то новое, даже если с момента их создания прошел год. С ботами мне работать легко, если нет необходимости добавлять изображения. Иногда случается, что текст на кнопках ботов не умещается целиком на экранах устройств. Когда об этом сообщают, я сокращаю текст.

Помимо ботов, я создаю backend-приложения, в том числе для своего сайта https://denis-skripnik.name/. Пишу скрипты open source — например, file-translater, который переводит JSON- и JS-файлы с русского на другие языки. Последнее время занялся взаимодействием с EVM смарт-контрактами на JS — написал скрипт для получения токена ARB. Правда, этот скрипт я завершил уже после начала claim-процесса, так как только тогда начал интересоваться темой.

Сейчас я получаю предложения о работе напрямую. Люди находят меня в чатах и пишут в личку или обращаются через бота в моем телеграм-канале. Это происходит нечасто: от одного раза в несколько месяцев до двух раз в месяц.

Надеюсь, что мне удастся найти компанию, где я смогу заниматься программированием, используя свой опыт. У меня есть портфолио на GitHub с десятками проектов. Я заранее предупреждаю всех заказчиков о том, что не вижу, чтобы избежать недопониманий, которые могли бы возникнуть в процессе работы над задачей. 

Я работаю с русскоязычными клиентами, так как не владею иностранными языками до такой степени, чтобы общаться без автопереводчика. Не знаю, где территориально находятся эти заказчики, но для меня это не принципиально.

Достижения и перспективы

Я хорошо знаю JavaScript и активнее всего работаю с JS. PHP владею чуть хуже. Go и C++ когда-то учил, но уже давно не работал с ними и частично забыл.

Тем не менее, говоря о своих главных профессиональных достижениях, хочу упомянуть в первую очередь Go. После того как выучил этот язык, я написал на нем с нуля одну программу в 2021–2022 годах для блокчейна VIZ — она называлась viz-go-app. 

Второе достижение, которое далось мне не с первой попытки, — базы данных MySQL. Я долго не мог их понять, пока не начал изучать в колледже. Базы NoSQL кажутся мне намного более логичными, потому что достаточно использовать объекты для запросов. Однако большинство сайтов работают с SQL, поэтому пришлось разобраться с этой базой данных. Впрочем, в последний раз я ей пользовался 2–3 года назад.

Третьей важной вехой моего профессионального развития стало создание первой программы на C++ для Windows. Это было консольное приложение: запустил EXE-файл — и через консольное окно можно читать сообщения и отвечать на них.

Недавно я начал изучать язык программирования Solidity. Он мне нужен, чтобы создать 1–2 крупных скрипта по взаимодействию со смарт-контрактами на JS, которые другие люди будут активно использовать. Я выбрал Solidity, потому что это самый популярный язык для написания смарт-контрактов. К тому же он похож на JavaScript, который я хорошо знаю. 

Главную трудность при изучении Solidity представляют собой типы. Также приходится думать об оптимизации, иначе программы будут дорого обходиться пользователям, им придется платить высокие комиссии за совершение действий. Решать эту проблему мне помогает ChatGPT.

В средней и долгосрочной перспективе я хотел бы создать собственный востребованный проект, за который будут хорошо платить. Пока что мой доход остается ниже желаемого уровня, то есть диапазона 200 000–500 000 рублей в месяц. Самому мне для комфортной жизни надо немного. Но я хотел бы завести семью и достойно ее обеспечивать, как и полагается мужчине. Именно для этого надо развиваться и расти в профессии.

Комментарии0
Тоже интересно
Комментировать
Поделиться
Скопировать ссылку
Telegram
WhatsApp
Vkontakte
Одноклассники