Среди моих читателей есть молодой человек по имени Сяо Чен. Он новичок на рабочем месте и только начал знакомиться с технологией блокчейна. Случайно Сяо Чен обнаружил MIT OpenCourseWare, веб-сайт открытых курсов Массачусетского технологического института, и нашел курс по разработке и проектированию криптовалют (MAS.S62 Cryptocurrency Engineering and Design, весна 2018 г.). Его глубоко заинтересовало содержание курса, и он решил систематически изучать его.

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

Когда он научился проектировать и писать смарт-контракты, ему в голову пришла смелая идея: почему бы не создать свой собственный токен ERC20 на Python и не запустить небольшую кампанию по раздаче? #contentmining

Итак, он начал свой путь программирования. Сначала он написал упрощенный смарт-контракт ERC20, включая название токена, общий объем поставок и функцию передачи. Затем он использует Python и Web3.py для компиляции и развертывания этого смарт-контракта. Вот основная часть его скрипта Python:

from web3 import Web3, HTTPProvider from solcx import compile_source # Подключитесь к узлу Ethereum web3 = Web3(HTTPProvider('https://mainnet.infura.io/v3/YOUR_INFURA_PROJECT_ID')) # Прочитайте исходный код смарт-контракта с помощью open(' Токен .sol', 'r') как файл: source_code = file.read() # Компилируем смарт-контракт Compile_code = compile_source(source_code) bytecode = компилированный_код[':Token']['bin'] abi = компилированный_код[':Token ' ]['abi'] # Установка учетной записи по умолчанию для контракта развертывания web3.eth.defaultAccount = web3.eth.accounts[0] # Развертывание смарт-контракта Token = web3.eth.contract(abi=abi, bytecode=bytecode) tx_hash = Token .constructor().transact() # Подождите, пока транзакция будет найдена tx_receipt = web3.eth.waitForTransactionReceipt(tx_hash) # Получите развернутый адрес контракта Contract_address = tx_receipt['contractAddress']

После успешного внедрения смарт-контракта Сяо Чен почувствовал себя чрезвычайно взволнованным. Он решил поделиться адресом контракта со своими друзьями и читателями, пригласив их принять участие в его кампании по раздаче.

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

В ходе этого процесса Сяо Чен ощутил очарование технологии блокчейна и увидел, что его усилия и результаты обучения действительно вознаграждены. Это его #момент славы.