Изучите JavaScript, смарт-контракты, Solidity, развертывайте децентрализованные приложения и получайте в среднем до $120 тысяч в год. Представляем вам полную дорожную карту разработки в Web3.0.
Редакция Highload публикует перевод материала.
Переведено бюро переводов в Киеве «Профпереклад».
Гарлин Каур признается, что когда она решила стать блокчейн-разработчицей, это оказалось самым интересным, плодотворным и захватывающим решением в ее жизни. В этой статье она делится своим опытом и, мы уверены, тоже вдохновит вас попробовать свои силы в блокчейне.
Передаем ей слово.
Содержание
1. Начнем с основ
2. Ethereum и dApps
3. Ресурсы по разработке фронтенда и бэкенда (это убережет вас от моей ошибки, когда я сразу нырнула прямо в кроличью нору блокчейна)
4. Смарт-контракты, Solidity и полезные ресурсы
5. Важные инструменты
6. Дальнейшие шаги
7. Подведем итоги
Небоскребу нужен крепкий фундамент, иначе он рухнет!
Разработка блокчейна требует усилий. Прежде чем нырять в омут с головой и браться за дорожную карту, изучите основы компьютерных наук. Иначе совершите ту же ошибку, что и я.
Знаменитые CS50 — основы компьютерных наук — бесплатный курс в Гарварде — здесь вас научат всему, что нужно знать и понимать о компьютерах и обработке данных.
Еще раз: сначала учим основы. И только потом беремся изучать, как работает блокчейн, чем он полезен и каковы его ограничения.
Как разработчик Web3.0, вы должны понимать, что такое блокчейн, как он работает и почему может навсегда изменить процессы товарообмена и платежей.
Блокчейн-технология больше не связана только с одними криптовалютами.
Блокчейн — это распределенная система облачных вычислений, способная запускать в работу полные бэкенды для функционирования самых современных децентрализованных приложений (DApps).
Изучить основы блокчейна можно на курсе Coursera Specialization от Университета Буффало (я проходила именно его, когда хотела выяснить, что такое блокчейн).
Изучили основы блокчейна, ноды, алгоритмы консенсуса и все прочие базовые компоненты технологии? Теперь возьмемся за то, как строить на нем приложения.
Приложения, построенные на блокчейне, называются децентрализованными приложениями или DApps.
Что в них есть:
DApp Radar — неплохой ресурс, где можно найти реальные примеры deFi (децентрализованные финансы) и не только.
Чтобы понять, как работают фронтенд и бэкенд в децентрализованном приложении (как между ними устанавливается связь и как они обмениваются данными), нужно изучить разработку фронтенда и базовые принципы разработки стандартного бэкенда, API и шаблонов.
У децентрализованных приложений в основе лежит стандартный ванильный фронтенд на JavaScript или фреймворке JS. Поэтому перед разработкой своего первого DApp изучите основы разработки фронтенда и работы сети.
Для этого учим HTML, CSS, HTTP, JavaScript, выбираем фреймворк и начинаем строить статические веб-сайты (можете выбрать любой курс, я опиралась на видео ниже).
Бэкенды для децентрализованных приложений очень отличаются от бэкендов стандартных приложений. Начнем с того, что блокчейн-технология используется как главный источник децентрализованного хранения данных. А стандартные бэкенды обычно используют базы данных или объектные хранилища.
Впрочем, основные технические принципы те же.
Поэтому не рекомендую сразу бросаться в разработку блокчейна и web3.0, не имея крепкой базы и не разобравшись в принципах стандартной веб-разработки.
Этот процесс приносит глубокое внутреннее удовлетворение — соединять базы данных, создавать собственные REST API, выстраивать бизнес-логику, которая будет приводить в действие ваши инструменты. Это серьезный шаг вперед.
Что изучаем на этом этапе: Node, Express, DBs, HTTP, разработку API, и начинаем развертку современных приложений.
Разработчик web3.0 должен понимать, как работает Ethereum.
Ethereum — это программное обеспечение, работающее на сети компьютеров. Оно обеспечивает репликацию и обработку мелких программ, которые называются смарт-контрактами.
Большинство децентрализованных приложений работают на блокчейне Ethereum. Смарт-контракты тоже внедрил консорциум Ethereum, после чего их начали копировать и другие блокчейн-сети.
«Что такое Ethereum» — видео от Виталика Бутерина, создателя Ethereum:
Также рекомендую заглянуть на официальный сайт Ethereum и почитать документацию.
Ethereum и смарт-контракты — как хлеб и масло. Вам нужно понимать и то, и другое.
Смарт-контракт — это программа, которая хранится на блокчейн-платформе и автоматически выполняет сделки.
Она пишется на Solidity, Rust или Vyper (та же Solidity, но с привкусом Python). Она — ключевой компонент любого децентрализованного приложения, приводит в действие его бизнес-логику и позволяет хранить информацию в блокчейне — так же, как в стандартной базе данных.
Зомби ждут!
Уже умеете создавать смарт-контракты? Теперь нужно подключить фронтенд к местному или удаленному бэкенду Solidity (или аналогу). Для этого можно воспользоваться чем угодно — от HTTP до WebSocket.
Выбираем одну из двух библиотек JavaScript:
Web3.js — это коллекция библиотек, которая позволяет подключиться к местному или удаленному узлу Ethereum с помощью HTTP, WebSocket или любого другого протокола связи прямо с фронтенда на JavaScript.
Полный курс по web3.js от DApp University:
Ethers.js — это облегченная библиотека JavaScript, альтернатива Web3.js для подключения фронтенда JavaScript к смарт-контрактам.
Курс разработки Front-end DApp с Ethers.js от Nader Dabit:
Во всех этих курсах присутствуют инструменты, которые вам стоит освоить в любом случае. Если их не изучают в рамках выбранного вами курса — бросайте его и ищите другой.
Присоединитесь к хакатону, вливайтесь в сообщество — и созидайте!
Итак, вы прошли курс. Прошли ведь?
Хорошо.
Теперь главное — опробовать свежеприобретенные навыки в реальной жизни и познакомиться с другими разработчиками.
Сделайте какой-нибудь проект. Неважно какой. Поначалу страшновато, вам даже покажется, что вы не готовы. Но это нормально.
Зарегистрируйтесь в каком-нибудь хакатоне, вступите в сообщество и обогащайте свои знания, учитесь быстрее и пробуйте применять новые навыки на практике.
Не зацикливайтесь на туториалах, иначе попадете в ад, где нет ничего, кроме туториалов! Прочь из зоны комфорта. Если вы делаете что-то хорошо знакомое — значит, вы слишком облегчаете себе жизнь!
Самый быстрый способ чему-то научиться на этом этапе — это начать что-то создавать. Что угодно.
Поставьте себе дедлайн. Самый простой способ заставить себя что-то сделать — это присоединиться к хакатону. Многие масштабные проекты начинались как проекты на хакатонах (например, 1inch или Instadapp).
Хакатоны — это соревнования по написанию кода, они могут длиться от пары дней до нескольких недель. В них можно выиграть денежные призы, но большинство инженеров используют их для изучения чего-нибудь нового.
Вот некоторые из лучших мировых блокчейн-хакатонов:
Участие в них поможет создать хороший профиль на GitHub или GitLab. Когда начнете искать работу, люди сразу увидят, чем вы занимались в прошлом. Что бы вы ни делали — фиксируйте абсолютно все проекты в GitHub или на любой другой аналогичной платформе.
Сообщество единомышленников — одна из лучших штук в сфере блокчейна. Вы сможете задавать вопросы, обмениваться идеями и всегда быть в курсе всех новых разработок. Здесь каждую неделю происходит что-то новенькое. Вот несколько моих любимых групп:
Список таких групп очень длинный, его можно продолжать до бесконечности.
Сообщество единомышленников — лучший ресурс, где можно получить помощь, если споткнетесь о какую-нибудь диковинку. Когда у вас возникнут технические трудности, загляните в этот документ — и узнаете, как их решить, а также:
1. Погуглите.
2. Задайте вопрос на Stack Overflow или Stack Exchange.
3. Создайте тему с вопросом в репо на GitHub.
4. Спрашивайте на Reddit, discord, на форумах, где угодно!
Помимо списка выше, есть еще масса людей, которые пытаются всячески улучшить интересующую нас сферу:
Этот список тоже можно продолжать до бесконечности. В блокчейн-сфере так много интересных и полезных людей!
На этом этапе вы уже в системе. Вы глубоко в нее занырнули и вот-вот начнете получать оплату за свою работу. Существует множество способов заработать на новых навыках.
Едва доберетесь до этого этапа и начнете подключаться к протоколу, начинайте рассылать CV! Сайтов с вакансиями для блокчейн-разработчиков везде навалом. Вот наиболее популярные:
Или же можете обратиться непосредственно на интересующую вас платформу — вдруг у них есть вакансии.
В децентрализованных протоколах есть масса функций, требующих улучшения. Если вы придумали что-то интересное для конкретного протокола, подайте заявку на грант! Одна из лучших платформ для поиска «диких» грантов — gitcoin. Но и другие протоколы тоже предлагают грантовые программы:
Фриланса это тоже касается. Фрилансер может найти себе работу практически где угодно.
В этой сфере пока еще все в диковинку, и здесь можно строить тонны новых протоколов. Лучшая отправная точка для такого проекта — это хакатоны, особенно если вы не знаете, с чего начать. Загляните в этот список 77 примеров применения гибридных смарт-контрактов, если вы в тупике и не можете придумать ничего дельного.
Пока что эта область разработана от силы на полпроцента. Мы только начали ее развивать, и строить придется много.
Мы уже много чего обсудили выше, но последний этап — не останавливаться на достигнутом и продолжать учиться. Правила и условия быстро меняются, каждый день появляется что-то новое.
Если последуете этим советам и начнете углубленно изучать блокчейн, вы постоянно будете узнавать что-то новое.
У каждого в этой сфере своя стезя. Возможно, вы пройдете шесть курсов и сразу найдете работу. Или начнете с ходу создавать собственный протокол и нахватаетесь нужных навыков в процессе.
«Правильного» пути не существует. Впрочем, и «неправильного» тоже.
Это интереснейшая сфера, которую невозможно не полюбить. В ней полно жизни, деятельности, экономических возможностей и шансов оставить по-настоящему важный след на планете. Буду очень рада увидеть вас в нашем обществе и понаблюдать за вашим ростом. Возможно, однажды мы даже встретимся!
Блокчейн никуда не уйдет, так что, надеюсь, вы присоединитесь к этому увлекательному путешествию.
Читайте также: «Это проще, чем тестировать сайты, но зарплаты выше»: Алексей Матиясевич из Ambisafe — о том, как стать тестировщиком в блокчейне
Автор: Гарлин Каур
Прокси (proxy), или прокси-сервер — это программа-посредник, которая обеспечивает соединение между пользователем и интернет-ресурсом. Принцип…
Согласитесь, было бы неплохо соединить в одно сайт и приложение для смартфона. Если вы еще…
Повсеместное распространение смартфонов привело к огромному спросу на мобильные игры и приложения. Миллиарды пользователей гаджетов…
В перечне популярных чат-ботов с искусственным интеллектом Google Bard (Gemini) еще не пользуется такой популярностью…
Скрипт (англ. — сценарий), — это небольшая программа, как правило, для веб-интерфейса, выполняющая определенную задачу.…
Дедлайн (от англ. deadline — «крайний срок») — это конечная дата стачи проекта или задачи…