// Блокчейн

Как Создать Децентрализованное Приложение (DApp) на Блокчейне EOS?

EOS — это операционная система на основе блокчейна, заточенная под разработку, развертывание и запуск децентрализованных приложений (DApps). Проект собрал рекордные 4 миллиарда долларов во время первичного предложения монет и вошел в топ-5 криптовалют по капитализации.

Экосистема EOS быстрее, проще и удобнее, нежели Ethereum, а потому больше подходит для разработки DApp. Сегодня мы рассмотрим три подхода к созданию приложений для этой сети, обозначив нюансы, плюсы с минусами и ориентировочную стоимость каждого.

Как создать DApp на EOS с помощью шаблонов

Шаблоны — это готовые к запуску приложения или модули компьютерного кода, с помощью которых, подобно LEGO, можно собрать готовые приложения.

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

Как правильно создать DApp на EOS

Разработку DApp с помощью шаблонов можно сравнить с созданием сайтов на конструкторе WordPress: скачиваете основной движок платформы (блокчейна или WordPress), выбираете шаблон (приложения или темы сайта), устанавливаете его и настраиваете под себя. Правда, в случае с созданием сайтов все значительно проще, поскольку эта услуга доступна на рынке много лет. Тогда как EOS был запущен лишь в июле 2018 года, а потому его инфраструктура не настолько развита.

Пример шаблонов WordPress

Однако, как показывает опыт Ethereum и Hyperledger, сервисы для разработки DApps с помощью шаблонов появляются в течение одного-двух лет, если проект становится популярным. Так, создать приложение на Hyperledger посредством шаблонов можно на Amazon Web Services, IBM Blockchain, ChainZilla, OBCS и Alibaba Cloud Container Service, хотя проект был запущен в июне 2017 года.

На момент написания статьи (январь 2019 года) шаблоны для приложений EOS можно найти на сайтах Developers.eos.io, GitHub.com, Bitcointalk.org и других площадках, ориентированных на блокчейн-разработчиков. При этом можно рассчитывать, что в будущем они появятся на Microsoft Azure и Amazon Web Services.

Как создать DApp на EOS с помощью аутсорсинга

Передача разработки на условиях субподряда — оптимальный вариант, если нужно получить гарантированный результат в короткие сроки за минимальные деньги. Компания на аутсорсе возьмет на себя все хлопоты, включая большую часть организационных вопросов. За заказчиком остается общий контроль (административный и финансовый), а также выбор задач и целей.
Как создать DApp на EOS

Поиск компании-исполнителя

Найти нужную компанию можно в социальных сетях Facebook, Twitter, Google+, StackExchange и Bitcointalk, а также на специализированных площадках:

  • LinkedIn. Самая популярная платформа для формирования деловых контактов. Создайте аккаунт и используйте сервисы LinkedIn Recruiter и Groups для поиска DApp-разработчиков. Сервис Recruiter платный, но есть триал-версия.
  • Goodfirms.co и Clutch.co. Площадки, на которых компании размещают информацию о своих услугах. Нужных исполнителей можно найти с помощью фильтров.
  • Blocktribe.com. Платформа с информацией о блокчейн-разработчиках — компаниях и частных программистах. Представлено краткое описание, а также специализация и контактные данные.
  • Upwork. Фриланс-платформа для программистов, работающая с 2003 года. Представлены как компании, так и частные специалисты.
  • Toptal. Еще одна фриланс-платформа, где кандидатов можно протестировать, пригласить на собеседование и дать макетное задание.
  • Можно также поискать на Crypto.jobs Codementor.io, Beincrypto.com, Blocktribe.com, Xbtfreelancer.com, Coinality и BountyOne.
На сайте Meetup.com и в специальном разделе CoinDesk есть информация о предстоящих конференциях, лекциях, семинарах и других событиях, связанных с блокчейном. Представители компаний по разработке блокчейн-технологий часто участвуют в них в качестве приглашенных специалистов.

Отсеивание кандидатов

Выбор компании по разработке децентрализованных приложений на EOS подобен выбору обычных разработчиков. Нужны программисты, которые отлично знают традиционные языки программирования (C#, C++, Python Java, JavaScript), могут предъявить несколько удачных кейсов и говорят с вами на одном языке. По этим критериям нужно проводить первичный отсев кандидатов.

Рекомендуем прочитать:

Вторичный отсев предполагает изучение:

  • Портфолио. Детальное изучение use cases — какие задачи ставили перед кандидатом и что в итоге вышло. Если есть возможность, самостоятельно протестируйте приложение из use case. Обратите внимание на производительность, дизайн, юзабилити и отзывы пользователей.
  • Информационный след. Проверьте, что о компаниях пишут в интернете. Упоминались ли они в новостях, в каком качестве. Что говорят предыдущие заказчики, пользователи и регулирующие органы.
  • Стоимость услуг. Цена не должна быть ниже, чем на Ethereum. Кроме того, важно, когда компании готовы назвать цену. Хороший разработчик сначала изучает задачу и только после этого оглашает стоимость.
  • География. Для коммуникации лучше, чтобы вы были в одном или смежных часовых поясах и разговаривали на одном языке. Сотрудничать с разработчиками в Восточной Европе, Азии и Африке можно, но нужно убедиться, что сотрудники компании-разработчика (менеджмент и программисты) хорошо говорят на английском.
  • Законность. Субподрядчик должен быть зарегистрирован по всем правилам и работать через нормальные банки, а не офшорные зоны. Этот момент можно проверить на WebChecker, BBB.com, GlassDoor и сайтах фискальных служб.
Разговаривать с лучшими кандидатами следует посредством видеосвязи. Так можно оценить собеседника и попросить его провести видеоэкскурсию. Это даст больше информации о кандидате. Не забудьте запросить данные о парке устройств.

Алгоритм работы

Процесс сотрудничества с компанией по разработке DApps проходит в семь этапов:
  1. Компания-исполнитель делает оценку заказа и предварительный набросок предстоящих работ. Это позволяет оценить время и стоимость разработки.
  2. Заказчик с исполнителем определяют ключевые требования к DApp и создают диаграмму сценариев использования продукта. Создается схема интересов пользователей.
  3. Создается карта экранов, спецификации UI/UX. Выбирается стиль дизайна, цветовая гамма и прочее.
  4. Программисты создают MVP или альфа-версию приложения.
  5. Проверка работоспособности, производительности, стабильности и юзабилити продукта, созданного на предыдущем этапе. На основе проверки приложение дорабатывают и улучшают, пока заказчик и исполнитель не согласятся, что приложение готово к запуску.
  6. Развертывание DApp и его запуск. Обычно сначала продукт предлагают реализовать небольшому количеству пользователей (ранний запуск). Ранний запуск нужен, чтобы протестировать продукт и свести риски к минимуму.
  7. Сопровождение и техподдержка проекта. Исправление пропущенных ошибок и добавление новых функций, инструментов.

Как создать DApp на EOS самостоятельно

Команда программистов в штате

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

Как нужно создавать DApp на EOS

Главная проблема такого подхода — программистов приходится искать в одной городской агломерации. Это проблематично, поскольку хороших программистов мало. Тех, кто разбирается в блокчейне, еще меньше, а знакомых с EOS и вовсе единицы. И обычно они уже на кого-то работают.

Почасовая ставка блокчейн-разработчиков по штатам в США

Кроме того, команде программистов нужен лидер. Хороший проект-менеджер на вес золота, особенно если нужен специалист, разбирающийся в блокчейне и DApps. Часто можно собрать десять команд программистов и при этом не найти ни одного достойного проект-менеджера.

Самостоятельная разработка

Такой подход требует навыков в программировании и глубокого понимания блокчейн-технологий. Если это есть, можно использовать документацию на EOSIO Developer Portal и GitHub.com, чтобы изучить, как создавать DApp своими силами. Это потребует некоторого времени, но при этом не нужно никому платить и никто не будет стоять над душой.

Создание DApp на EOS

Для разработки Dapps на базе блокчейна EOS нужно разбираться в принципах работы блокчейна системы и изучить ряд инструментов (eosiocpp, cleos, keosd, nodeos). С этим поможет официальный гайд от создателей криптовалюты. Он довольно прост и содержит ссылки на нужное программное обеспечение: Amazon AWS instances, Docker, Compile. Инструкции к этим инструментам также можно найти в гайде.

Блокчейн EOS и инструменты для разработки DApp можно установить и запустить только в рамках операционных систем семейств Linux и Mac OS. В среде Windows они не работают, но можно создать песочницу Linux и работать в ней. Редакторами и IDEs могут быть Eclipse, Atom Editor, Visual Studio Code, Sublime Text и CLion.

Сколько стоит разработка DApp на EOS

В сети Ethereum стоимость транзакции и хранения базы данных возлагается на пользователей: люди платят деньги в виде «газа», когда хотят инициировать смарт-контракт и DApp. В экосистеме EOS нет комиссий. За обработку и хранение транзакций платят разработчики. Они арендуют ресурсы нод для инициализации смарт-контрактов и развертывания приложений.

Тактическая карточная игра PandaFun с элементами RPG

Ю Тин Чен, создавший игровое приложение PandaFun, оценил итоговую стоимость требуемых для развертывания приложения ресурсов в 21 000 монет EOS (52 000 долл по курсу на 19 января 2019 года). Так, 10 000 монет нужно потратить на RAM, столько же — на CPU и еще 1 000 монет — на NET. Развертывание контракта для децентрализованного приложения в сети Эфириума уложится в 100 долларов.

Команда проекта обещает снизить стоимость сетевых и процессорных ресурсов, но пока дело обстоит именно так. Это стоит учитывать при разработке приложений для EOS.

Стоимость именно разработки DApp на EOS ориентировочно такова:

  • с простым смарт-контрактом — от 200 до 1 000 долл;
  • со сложным смарт-контрактом (гарант, внесение данных во внешние реестры) — до 10 000 долл;
  • приложение с продвинутыми смарт-контрактами — до 50 000 долл;
  • игра на EOS — от 10 000 до 300 000 долларов;
  • кошелек для EOS — до 100 000 долл;
  • мессенджер — от 50 000 долл.
При создании DApp силами штатной команды программистов нужно ориентироваться на почасовую ставку. В Соединенных Штатах и Западной Европе она в районе 100 долл/ч, Восточной Европе — от 40 до 70 долл/ч, Индии — 40–50 долл/ч, Африке — 20–40 долл/ч.

3 правила успешной разработки

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

Инь Ву, основательница Dirt Protocol, полагает, что причина провала — неэффективный процесс разработки. Вместо того, чтобы работать в среде с низким уровнем риска, которая поддерживает итерации и обучение, стартапы пытаются продать продукт всему миру. Более того, они продают даже не сам продукт, а его идею, которая будет реализована в будущем.

Подобный подход создает три проблемы:

  1. Чтобы угодить сообществу, проекты следуют зову толпы и выстраивают разработку на основе ложной догмы: «Децентрализация — это ответ» (а не средство для достижения цели).
  2. Разработчики прислушиваются к советам известных в сообществе личностей и, как следствие, принимают неоптимальные решения.
  3. Акцентируясь на идеях и теории рынка, проекты выполняют white paper, как будто бы это план конечного продукта, а не отправная точка для его создания.
Все это ведет к тому, что созданные DApps имеют практически нулевые шансы на успех или хотя бы окупаемость. И чтобы это изменить, Инь Ву предлагает изменить подход к разработке.

Создавайте продукт, а не протокол или философию

Практика показывает, что нельзя добиться успеха на массовом рынке, исповедуя только одну философию. Проекты с открытым исходным кодом как альтернатива закрытым централизованным сетям не являются чем-то новым. Достаточно посмотреть на противостояние Diaspora vs Facebook, DuckDuckGo vs Google, Mastodon vs Twitter

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

Не позволяйте пользователям говорить вам, что делать

Все запуски продуктов Apple встречали одинаковую реакцию СМИ: слишком дорого, чтобы добиться успеха. Facebook запустила новостную ленту, несмотря на крайне негативный общественный отклик. Netflix перешел на потоковую передачу и потерял более миллиона клиентов в переходный период.

Эти примеры подтверждают простое правило: «Не давайте своим пользователям то, что они просят, дайте им то, что они хотят».

Сосредоточьтесь на итерации по идее

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

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

Есть вопросы? Задайте их здесь

Имя *
Email *
Телефон
Ваш бюджет
Сообщение