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

Привет. Спасибо за предложение, постараюсь ответить максимально доступно.

Пожалуйста, расскажи вкратце о себе и своей деятельности в команде “Dash”.

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

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

Позже, в середине 2014 стали все громче звучать вопросы к Биткоин по поводу его анонимности. Эта тема меня заинтересовала и я обратил внимание на несколько альтернатив, одной из которых был Darкcoin. Мне показалась интересной идея и предложенная реализация, а также понравилось, что у Darkcoin дружелюбное сообщество и доступные для комментариев разработчики. Сейчас в команде я занимаюсь, в основном, разработкой «официального» кошелька, но иногда помогаю сторонним разработчикам по вопросам портирования какого-нибудь ПО, написанного для Биткоин, для работы с Dash, да и просто всем, кто пытается что-то сделать на базе Dash.

Чем разработка криптовалют отличается от разработки другого ПО?

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

Кто может стать разработчиком криптовалюты, какая для этого нужна квалификация?

Официальный клиент многих криптовалют написан на С++, но есть и такие, где основной кошелек написан на Python, наример. Также хорошо бы иметь неплохие познания в математике в целом и в теории вероятности/криптографии в частности, но их можно набрать и по мере погружения. Есть неплохой, на мой взгляд, обзорный курс у Khan Academy “Journey into cryptography” ( www.khanacademy.org/computing/computer-science/cryptography ). Также множество материалов доступно в виде разного рода докладов, презентаций и т.п. в свободном доступе.

Твоё окружение знает чем ты занимаешься? Как к этому относятся?

В курсе только несколько самых близких друзей. Для остальных я “сижу в интернете”.

Не тянет вернуться в офис на “нормальную” работу?

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

Русскоязычные разработчик – редкое явление в криптомире… Сложно было завоевать репутацию в сообществе?

На самом деле, я вовсе не стремился стать разработчиком какой-либо криптовалюты, просто было интересно и имелся некий опыт в программировании, управлении проектами и т.п. Сначала я в качестве обычного пользователя стал задавать много вопросов, смотреть подробнее код, разбираться в теме, а впоследствии и сам стал отвечать на вопросы других новичков. В то время Dash был на стадии релиз-кандидата и там довольно часто случались форки. Я пытался помочь, чем мог и примерно неделю я практически «жил» на официальном форуме и отвечал на многочисленные вопросы, помогал решать проблемы, выискивал баги. Я был очень назойлив и постоянно мучал Эвана и других разработчиков вопросами и своими предложениями по решению различных проблем. В итоге, я всем надоел члены сообщества стали предлагать включить меня в команду и через несколько дней я получил незатейливое сообщение примерно следующего содержания: «Неплохо! Хочешь присоединиться?»

Для тебя разработка “Dash” — это способ заработка или что-то другое?

На данный момент это способ “наносить пользу”, занимаясь чем-то интересным. Ну, и конечно, надежда завоевать мир, куда же без этого.

Какие инструменты ты используешь в своей работе?

Поскольку клиент написан под Qt, то соответственно большая часть времени проходит в Qt Creator. Остальное все в командной строке – git, vim и т.п.

Как складываются отношения членов команды “Dash”?

Ничего особенного – они все нормальные, адекватные ребята из разных уголков Земли. Мы все делаем одно дело, при этом каждый занимается той частью, которую считает для себя интересной, делает то, что может, как может и когда может (часовые пояса и проблемы в “реальной” жизни дают о себе знать). Конечно, стараемся синхронизироваться и всячески объединять усилия. Используем для этих целей как форум, так и Slack. После выпуска 0.12 версии есть планы по некоторой формализации процесса выпуска релизов, подготовкой к этому уже занимаются отдельные члены команды.

Я видел, что тебя упомянули в списке принявших участие в появлении последней версии Биткоина. Ты успеваешь вести и другие проекты, помимо “Dash”?

Честно говоря, мой вклад там был мизерный и я очень удивился, увидев свой ник в списке. Что касается других проектов – ранее немного поучаствовал в NOMP ( github.com/zone117x/node-open-mining-portal ), пару месяцев назад добавил русский интерфейс для WalletGenerator.net (https://github.com/MichaelMure/WalletGenerator.net). Портировал несколько репозитариев для работы с Dash, например, github.com/bitpay/insight-api от BitPay.

Ты когда-нибудь задумывался над тем, чтобы запустить собственную криптовалюту? Насколько это вообще реально?

Запустить криптовалюту в понимании многих означает, как правило, скопировать Биткоин или его успешный форк, “улучшить” параметры и, вуаля, новая валюта. Такую “валюту” сделать не сложно, но без развития, а порой и просто элементарной поддержки и исправления багов проживет она буквально пару месяцев, после чего майнеры сольют ее на биржах и в итоге останется лишь некоторое количество наивных “счастливчиков” с запасами никому не нужных монет. Таких “валют” уже несколько сотен. Желания встать с их разработчиками в один ряд у меня нет, как нет и причин, по которым я не могу реализовать какие-то идеи в рамках Dash.

“Dash” сейчас тестирует систему децентрализованного финансирования. Она нацелена на поддержку действующих разработчиков или на привлечение новых?

На самом деле, она нацелена не на поддержку каких бы то ни было разработчиков, а на реализацию проектов, поддерживающих Dash и способных двигать Dash дальше. Основная идея здесь следующая. Open-source проектам очень тяжело существовать в отсутствии финансирования. Многие пробуют жить за счет пожертвований, другие живут на гранты либо под крылом какой-то корпорации. Каждый из этих способов имеет свои недостатки. Мы же хотим построить такую систему, которая будет финансировать себя сама. Одна из мощных идей, заложенных в биткоине – токены, которые производят майнеры, имеют определенную ценность. Вот именно часть этой ценности, созданной внутри системы, мы и планируем задействовать и направить на поддержку и развитие самой системы вместо того, чтобы искать это финансирование “снаружи”. В системе нет ограничений на то, будут ли это непосредственно разработчики, или кто-то, кто сможет организовать процесс, или пропиарить, или еще как-то помочь проекту.

Допустим, какой-то программист или даже команда захочет предложить (за денежку) свои умения проекту “Dash”. Как именно им следует действовать?

Первое, что я бы посоветовал сделать – заходите к нам на форум dashtalk.org, создавайте тему и пытайтесь убедить сообщество, что а) идея стоящая б) вы способны ее реализовать. Эта часть, как мне кажется, является основной, так как в любом случае вам будет нужна поддерка сообщества (а точнее владельцев мастернод), для того чтобы получить финансирование. А уж помочь разобраться с кошельком и какие команды надо выполнить, чтобы отправить ваше предложение в сеть для участия в голосовании и получении вознаграждения, вам всегда подскажут. Тем не менее, если интересна именно эта часть, то драфт документации можно посмотреть на GitHub github.com/dashpay/dash/blob/master/doc/masternode-budget.md

Что бы ты посоветовал русскоязычным программистам, желающим попробовать себя в сфере криптовалют?

Пробовать. Чтобы начать, не обязательно покупать Биткоины или Dash, рисковать реальными деньгами и тратить их в процессе разработки. Есть тестовые сети, там можно получить монеты бесплатно и экспериментировать без риска все потерять, если что-то вдруг пошло не так.

Спасибо за интервью и напутствие.

И вам спасибо.

В последние годы сектор финансового софта переживает бум. Причем развиваются не только около-банковские системы, а появляются и различные альтернативные решения. Одной из тем, вызвавших широкий общественный резонанс, стало появление и бурное развитие криптовалют. Помимо своей монетарной и сетовой составляющей, криптовалюты являются ещё и специализированным программным обеспечением. Кто же работает над их кодом, и как это делается?Самая популярная криптовалюта на сегодня — это Биткоин. Однако по скорости внедрения инноваций в последнее время стал заметен ещё и криптовалютный проект “Dash” (бывший “Darkcoin”) (по капитализации — Анонимная криптовалюта №1). В команде “Dash” есть русскоязычный разработчик, и я уговорил его дать интервью — специально для читателей Хабрахабра.Общее представление о “Dash” можно получить в этом коротком видеоролике.Более подробную информацию o “Dash” можно найти на официальном сайте и в моём блоге Если у вам появились вопросы к UdjinM6 — вы можете задать их ему напрямую на официальном форуме ( русскоязычный раздел ). Он там регулярно бывает и отвечает.Если вы хотите погрузиться в технические подробности о работы “Dash” и владеете языком — можно это сделать на практике — присоединяйтесь к работе с открытым исходным кодом на GitHub или к открытому тестированию новой версии программы-кошелька Интересно? Хотите, чтобы я взял у UdjinM6 ещё одно интервью?Пишите интересующие вас вопросы в комментариях!