• 20 января 2018, суббота
  • Санкт-Петербург, Заневский проспект, д. 30, к. 2

Первый шаг в блокчейн-проектах — практикум по программированию смарт-контрактов на Solidity

Регистрация на событие закрыта

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

Другие события организатора

2499 дней назад
с 10:00 20 января до 17:00 21 января 2018
Санкт-Петербург
Заневский проспект, д. 30, к. 2

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

Практический курс для программистов: изучаем Solidity на примере смарт-контракта для проведения ICO. За два занятия разберём базовые понятия и напишем полноценный смарт-контракт. Не копипастом с разных источников или бездумным повторением за видео, а с пониманием смысла каждой написанной строчки.

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

Всё обучение построено через практику.
Мы напишем 4 контракта, которые потом объединим в один:
  • контракт для выпуска токена (разберём два вида эмиссии: выпуск всех токенов сразу и выпуск необходимого количества в момент поступления оплаты от инвестора)
  • контракт для PreICO, который продаёт ограниченное количество токенов по сниженной стоимости
  • контракт для ICO с установкой softcap, hardcap, датами действия, выделением вознаграждения для баунти-программ, возвратом средств инвестора при недостижении softcap
  • контракт для сжигания токенов после завершения ICO

Обучение построено по принципу от простого к сложному и во всех примерах мы не просто копипастим какие-то блоки кода, а объясняем почему нужно делать именно так.

Подробная программа курса

Первый день

  1. Установка и настройка окружения для работы со смарт-контрактами 
    1. Клиенты для Ethereum: geth или testrpc
    2. Тестовые сети: ropsten, rinkeyby, kovan
    3. Среда разработки: Remix, Mist, JetBrains, плагины для Atom, Pycharm
    4. Фреймворки: truffle, embark, populus, dapple
    5. Инструменты: metamask, zeppelin, oraclize.it, web3.js
  2. Примеры простых контрактов 
    1. Контракт «Hello world» 
    2. Контракт «Визитика»
    3. Контракт «Адресная книга»
  3. Перерыв 10 мин
  4. Структура контракта 
    1. Версия, импорт из других файлов, комментарии
    2. Переменные состояния
    3. Локальные переменные
    4. Функции
    5. Функции модификаторы
    6. События
    7. Тип Struct (структура)
    8. Тип Enum (список)
  5. Практика. Создаём каркас контракта ICO с модификаторами и переменными состояния 
  6. Обед 40 мин
  7. Единицы измерения и глобально доступные переменные
    1. Эфир и единицы измерения времени
    2. Специальные переменные и функции
      • Блок и свойства транзакции
      • Криптографические функции
      • Связанные с контрактом
      • Связанные с адресом
  8. Практика. Добавляем проверку даты начала и даты завершения контракта
  9. Перерыв 10 мин
  10. Выражения и управляющие конструкции
    1. Входящие и исходящие параметры функции
    2. Вызов функций: внешний и внутренний
    3. Названные и дополнительные параметры функций
    4. Порядок оценки выражений
    5. Присвоение значений
    6. Обработка исключений
  11. Практика. Добавляем обработку исключений
 

Второй день

  1. Наследование и взаимодействие с другими контрактами
    1. Наследование между контрактами
    2. Множественное наследование
    3. Переопределение функций
    4. Библиотеки
    5. События
  2. Практика. Подключаем библиотеку к контракту и используем SaleAgent
  3. Перерыв 10 мин
  4. Практика. Дорабатываем контракт по нашим техтребованиям
    1. Работа с oraclize.it — получаем курс ETH/USD
    2. Выделение токенов для баунти и команды
    3. Дополнительное начисление бонусов инвесторам
    4. Возврат токенов инвесторам, если не была достигнута минимальная сумма сбора (softcap)
    5. Сжигание "лишних» токенов
  5. Перерыв 40 мин
  6. Тестирование
    1. Инструменты тестирования смарт-контракта
    2. Практика. Тесты для смарт-контракта
  7. Перерыв 10 мин
  8. Обзор best-practice при написании контрактов
  9. Расширение возможностей контрактов

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

Для успешного обучения очень важно понимать концепцию объектно-ориентированного программирования (ООП), менее важно, в каком языке вы её применяли. В нашей команде есть разработчики, которые "приходили" из разных языков: Java, PHP, C++, Java Script. Все успешно работают на Solidity.

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

Спикер курса —Светлана Русова

Опыт работы программистом — 12 лет. Работала программистом, техническим директором, руководителем проектов.

Последние 6 лет помимо практической работы ведёт курсы для веб-разработчиков.

С апреля 2017 года была в команде разработки 2-х ICO проектов. Сейчас участвует в разработке 4-го проекта.

Является собственником 3-х IT-бизнесов, поэтому хорошо разбирается в бизнес-моделях и экономической составляющей проектов.

 

Facebook

При подготовке курса были использованы следующие материалы:

 
А также:
  • материалы учебных курсов, мастер-классов и конференций, в которых мы участвовали в Москве, Казани, Иннополисе, Санкт-Петербурге. 
  • статьи на https://habrahabr.ru
  • примеры кода на https://github.com
  • видео на http://youtube.com
  • чаты и каналы в telegram (подборку см. тут). 

Мы предлагаем два формата участия:

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

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

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

Партнеры

Регистрация

Рекомендуемые события

Организуете события? Обратите внимание на TimePad!

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

Узнать больше