Первое сообщение в канал)
• Я кодер
• В программировании около 5-ти лет
• Пишу на C, C++, Python, JS, PHP, SQL, BASH ну и остальное по мелочи
• Учился в академии ФСБ на специалиста по защите информации, но ушел через 2 года так как служба не совпадала с планами на жизнь
• Учился в "школе 21" два года
• Преподавал несколько лет языки программирования
• Позже начал писать кучу софта под фондовую биржу - различные сканеры, расширения итд
С помощью этого софта заработал деньги на несколько лет вперед
Но СПБ биржа не работает и вот уже пол года я смотрю в сторону крипты и наконец-то нашел то, чем мне было бы интересно заниматься
А именно - работа с DEX, смарт контрактами, solidity, абуз
Канал создаю чтобы писать отчеты для себя, но кому-то может быть это тоже будет полезно
Первое, с чем я буду разбираться - solidity + смарт контракты
С этого дня буду уделять минимум 2 часа изучению
Всю информацию, по которой обучаюсь сам, буду скидывать сюда
• Я кодер
• В программировании около 5-ти лет
• Пишу на C, C++, Python, JS, PHP, SQL, BASH ну и остальное по мелочи
• Учился в академии ФСБ на специалиста по защите информации, но ушел через 2 года так как служба не совпадала с планами на жизнь
• Учился в "школе 21" два года
• Преподавал несколько лет языки программирования
• Позже начал писать кучу софта под фондовую биржу - различные сканеры, расширения итд
С помощью этого софта заработал деньги на несколько лет вперед
Но СПБ биржа не работает и вот уже пол года я смотрю в сторону крипты и наконец-то нашел то, чем мне было бы интересно заниматься
А именно - работа с DEX, смарт контрактами, solidity, абуз
Канал создаю чтобы писать отчеты для себя, но кому-то может быть это тоже будет полезно
Первое, с чем я буду разбираться - solidity + смарт контракты
С этого дня буду уделять минимум 2 часа изучению
Всю информацию, по которой обучаюсь сам, буду скидывать сюда
👍6
Я начинаю не с нуля
Вот гемная инфа, которую было бы неплохо знать, чтобы двигаться вместе со мной
1) Язык python
Мой первый язык программирования был C++
Я полностью перешел с C++ на python примерно за 2 недели с помощью этой книги (если не знаете других ЯПов, то будет тяжеловато её читать)
2) Язык JS
Я начал изучать этот язык, когда проходил курс по Django
В курсе был кусочек кода на JS и описание кода в стиле "просто запомните этот код. Он работает вот так..."
Мне нравится разбираться со всем фундаментально и после этих слов я потратил ~пол года на изучение JS (я изучал неторопливо и бОльшая часть того, что я знаю по JS по сути пока не пригодилась)
3) Вводная инфа по смарт контрактам и работе блокчейна (автору канала огромный респект и благодарность за такую инфу)
Вот гемная инфа, которую было бы неплохо знать, чтобы двигаться вместе со мной
1) Язык python
Мой первый язык программирования был C++
Я полностью перешел с C++ на python примерно за 2 недели с помощью этой книги (если не знаете других ЯПов, то будет тяжеловато её читать)
2) Язык JS
Я начал изучать этот язык, когда проходил курс по Django
В курсе был кусочек кода на JS и описание кода в стиле "просто запомните этот код. Он работает вот так..."
Мне нравится разбираться со всем фундаментально и после этих слов я потратил ~пол года на изучение JS (я изучал неторопливо и бОльшая часть того, что я знаю по JS по сути пока не пригодилась)
3) Вводная инфа по смарт контрактам и работе блокчейна (автору канала огромный респект и благодарность за такую инфу)
👍3
Я буду начинать изучения solidity с ютуба (потому что мне так удобно. До официальной документации тоже обязательно доберемся):
Лично я смотрю видос и записываю в тетрадь всю основную информацию оттуда
Для меня это самый продуктивный способ изучения нового языка
Лично я смотрю видос и записываю в тетрадь всю основную информацию оттуда
Для меня это самый продуктивный способ изучения нового языка
👍3
Первый урок (Введение, Remix IDE, аккаунты, газ, первый контракт)
Код с первого урока с комментариями:
Полезные ссылки из первого урока:
remix ide онлайн
скачать remix ide
язык solidity
документация ethereum
цены на газ
Код с первого урока с комментариями:
Полезные ссылки из первого урока:
remix ide онлайн
скачать remix ide
язык solidity
документация ethereum
цены на газ
👍3🔥1
Третий урок (Типы данных string, address, mapping)
Не уверен на 100%, но вроде нашёл баг Remix IDE
если в функцию, которая принимает строку, передать параметр типа:
"parametr""
то IDE умрет
код с комментариями:
Кусочек документации по типам данных
Не уверен на 100%, но вроде нашёл баг Remix IDE
если в функцию, которая принимает строку, передать параметр типа:
"parametr""
то IDE умрет
код с комментариями:
Кусочек документации по типам данных
👍2🔥1
👍1
Пятый урок (Тестирование, Hardhat, Waffle, Ethers, Mocha, Chai)
Установочник NodeJS
Где-то может потребоваться установка с sudo
Node-gyp
Я устанавливал на мак с помощью
npm install --location=global node-gyp
Hardhat
В директории создаем новый проект:
npm init -y
Устанавливаем hardhat (quick start):
npm install --save-dev hardhat
Заходим в мастер:
npx hardhat
Create a JavaScript project
Устанавливаем нужные библиотеки
npm install --save-dev "hardhat@^2.10.0" "@nomicfoundation/hardhat-toolbox@^1.0.1"
Будем использовать библиотеки (установятся сами как hardhat-toolbox):
EthersJS (для взаимодействия со смарт контрактами)
MochaJS (для написания тестов)
ChaiJS (для написания ожиданий)
WaffleJS (Надстройка над MochaJS для тестирования смарт контрактов)
Буду работать через VS Code + консоль
В VS Code можно установить расширение "Solidity"
Компиляция проектов:
npx hardhat compile
Удаление скомпилированных контрактов:
npx hardhat clean
Для тех, кто как и я не работали с nodeJS и не знаю как работают импорты/експорты
Запустить все тесты:
npx hardhat test
Проверки через to для эфира находятся в библиотеке waffle
Код контракта
Код тестов
Установочник NodeJS
Где-то может потребоваться установка с sudo
Node-gyp
Я устанавливал на мак с помощью
npm install --location=global node-gyp
Hardhat
В директории создаем новый проект:
npm init -y
Устанавливаем hardhat (quick start):
npm install --save-dev hardhat
Заходим в мастер:
npx hardhat
Create a JavaScript project
Устанавливаем нужные библиотеки
npm install --save-dev "hardhat@^2.10.0" "@nomicfoundation/hardhat-toolbox@^1.0.1"
Будем использовать библиотеки (установятся сами как hardhat-toolbox):
EthersJS (для взаимодействия со смарт контрактами)
MochaJS (для написания тестов)
ChaiJS (для написания ожиданий)
WaffleJS (Надстройка над MochaJS для тестирования смарт контрактов)
Буду работать через VS Code + консоль
В VS Code можно установить расширение "Solidity"
Компиляция проектов:
npx hardhat compile
Удаление скомпилированных контрактов:
npx hardhat clean
Для тех, кто как и я не работали с nodeJS и не знаю как работают импорты/експорты
Запустить все тесты:
npx hardhat test
Проверки через to для эфира находятся в библиотеке waffle
Код контракта
Код тестов
👍1🔥1
Судя по описанию - норм гайд
После окончания своего обучения по ютубу обязательно прочитаю этот
Если не понравится, удалю с канала
После окончания своего обучения по ютубу обязательно прочитаю этот
Если не понравится, удалю с канала
Forwarded from Max Wayld Dev (Max Wayld マキシ)
Статья с роадмапом по изучению Solidity за 30 дней.
Сразу говорю - благодаря этому гайду ты не станешь терн.крипто 2.0 за 30 дней, но сможешь стартануть в этой сфере и изучить все необходимые основы.
Как тебе пригодится этот навык? Вариантов огромное множество: от реального вклада в эту сферу и разработки любых интересующих тебя продуктов, до выноса тех же NFT-сейлов.
Welcome к разбору:
> https://teletype.in/@maxycrypto/solidity_30days
Я уже давно считаю что кодеры это самые важные люди в нашей сфере и толковых девов всегда будет недостаточно, поэтому пилить такие гайды на бесплатной основе - моя отдушина. Буду рад любому фидбеку с твоей стороны!
P.S: также, к концу этой недели выйдет моя ретроспектива по всем материалам для Solidity.
Сразу говорю - благодаря этому гайду ты не станешь терн.крипто 2.0 за 30 дней, но сможешь стартануть в этой сфере и изучить все необходимые основы.
Как тебе пригодится этот навык? Вариантов огромное множество: от реального вклада в эту сферу и разработки любых интересующих тебя продуктов, до выноса тех же NFT-сейлов.
Welcome к разбору:
> https://teletype.in/@maxycrypto/solidity_30days
Я уже давно считаю что кодеры это самые важные люди в нашей сфере и толковых девов всегда будет недостаточно, поэтому пилить такие гайды на бесплатной основе - моя отдушина. Буду рад любому фидбеку с твоей стороны!
P.S: также, к концу этой недели выйдет моя ретроспектива по всем материалам для Solidity.
Teletype
Выучить Solidity за 30 дней: роадмап по становлению tern.crypto
Статья, которая даст тебе всё необходимое для старта погружения в солидити и девелопинг в web3.
Восьмой урок (Древо Меркла, хэши, encode, циклы)
немного оптимизировал код, который заполняет хеши с индекса 4 (для начальной коллекции в 4 элемента)
То, что было:
uint offset = 0;
while (count > 0) {
for (uint i = 0; i < count - 1; i += 2) {
hashes.push(keccak256(
abi.encodePacked(
hashes[offset + i], hashes[offset + i + 1]
)
));
}
offset += count;
count /= 2;
}
То, что стало:
for (uint i = 0; i <= count + 1; i += 2) {
hashes.push(keccak256(
abi.encodePacked(
hashes[i], hashes[i + 1]
)
));
}
Убрал 1 цикл, убрал создание дополнительной переменной
Возможно для понимания проще код с урока, но мой будет работать быстрее и эффективней
Так же из функции verify убрал параметр index так как он там никак функционально не задействован
Мой код с комментариями
немного оптимизировал код, который заполняет хеши с индекса 4 (для начальной коллекции в 4 элемента)
То, что было:
uint offset = 0;
while (count > 0) {
for (uint i = 0; i < count - 1; i += 2) {
hashes.push(keccak256(
abi.encodePacked(
hashes[offset + i], hashes[offset + i + 1]
)
));
}
offset += count;
count /= 2;
}
То, что стало:
for (uint i = 0; i <= count + 1; i += 2) {
hashes.push(keccak256(
abi.encodePacked(
hashes[i], hashes[i + 1]
)
));
}
Убрал 1 цикл, убрал создание дополнительной переменной
Возможно для понимания проще код с урока, но мой будет работать быстрее и эффективней
Так же из функции verify убрал параметр index так как он там никак функционально не задействован
Мой код с комментариями
Гемная инфа на будущее
Тоже надо будет со всем этим ознокомиться после ютуба
Тоже надо будет со всем этим ознокомиться после ютуба
Forwarded from Ortomich
Ретроспектива!
———————
EVM для задротов, часть 1 - https://teletype.in/@ortomich/EVM_Advanced_1
EVM для задротов, часть 2 - https://teletype.in/@ortomich/EVM_Advanced_2
EVM для задротов, часть 3 - https://teletype.in/@ortomich/EVM_Advanced_3
EVM для задротов, часть 4 - https://teletype.in/@ortomich/EVM_Advanced_4
EVM для задротов, часть 5 - https://teletype.in/@ortomich/EVM_Advanced_5
EVM для задротов, часть 6 - https://teletype.in/@ortomich/EVM_Advanced_6
———————
Погружение в Юнисвап - https://teletype.in/@ortomich/Uniswap_V3_deepdive_1
SeaPort - https://teletype.in/@ortomich/SeaPort_fast
Новый вид скама - https://teletype.in/@ortomich/new_scam
———————
MEV 1.1 - https://teletype.in/@ortomich/MEV_1.1
MEV 1.2 - https://teletype.in/@ortomich/MEV_1.2
Флэшботы: короли мемпула - https://teletype.in/@ortomich/flashbots_kings_of_the_mempool
———————
Легкий клиент - https://teletype.in/@ortomich/light_client_eth
Оммер блоки - https://teletype.in/@ortomich/Ommer_Block
Дерево меркла - https://teletype.in/@ortomich/Merkle_Tree
Сумбурный конспект по эфиру - https://teletype.in/@ortomich/ethereum_start
Memory / Calldata / Storage - https://teletype.in/@ortomich/memory_calldata_storage
Что такое веб3 - https://teletype.in/@ortomich/simple_web3
NFT мини техничка - https://teletype.in/@ortomich/NFT_mini_advanced
Ораклы - https://teletype.in/@ortomich/oracles_junior
Войс «Развитие в крипто дев» - https://news.1rj.ru/str/ortomich_crypto/402
Переминт - https://teletype.in/@ortomich/remint
Unix - https://teletype.in/@ortomich/unix_fast
Адреса ethereum - https://teletype.in/@ortomich/address_eth
———————
Мой гитхаб - https://github.com/ortomich
———————
EVM для задротов, часть 1 - https://teletype.in/@ortomich/EVM_Advanced_1
EVM для задротов, часть 2 - https://teletype.in/@ortomich/EVM_Advanced_2
EVM для задротов, часть 3 - https://teletype.in/@ortomich/EVM_Advanced_3
EVM для задротов, часть 4 - https://teletype.in/@ortomich/EVM_Advanced_4
EVM для задротов, часть 5 - https://teletype.in/@ortomich/EVM_Advanced_5
EVM для задротов, часть 6 - https://teletype.in/@ortomich/EVM_Advanced_6
———————
Погружение в Юнисвап - https://teletype.in/@ortomich/Uniswap_V3_deepdive_1
SeaPort - https://teletype.in/@ortomich/SeaPort_fast
Новый вид скама - https://teletype.in/@ortomich/new_scam
———————
MEV 1.1 - https://teletype.in/@ortomich/MEV_1.1
MEV 1.2 - https://teletype.in/@ortomich/MEV_1.2
Флэшботы: короли мемпула - https://teletype.in/@ortomich/flashbots_kings_of_the_mempool
———————
Легкий клиент - https://teletype.in/@ortomich/light_client_eth
Оммер блоки - https://teletype.in/@ortomich/Ommer_Block
Дерево меркла - https://teletype.in/@ortomich/Merkle_Tree
Сумбурный конспект по эфиру - https://teletype.in/@ortomich/ethereum_start
Memory / Calldata / Storage - https://teletype.in/@ortomich/memory_calldata_storage
Что такое веб3 - https://teletype.in/@ortomich/simple_web3
NFT мини техничка - https://teletype.in/@ortomich/NFT_mini_advanced
Ораклы - https://teletype.in/@ortomich/oracles_junior
Войс «Развитие в крипто дев» - https://news.1rj.ru/str/ortomich_crypto/402
Переминт - https://teletype.in/@ortomich/remint
Unix - https://teletype.in/@ortomich/unix_fast
Адреса ethereum - https://teletype.in/@ortomich/address_eth
———————
Мой гитхаб - https://github.com/ortomich
Teletype
EVM для задротов
Всем привет! С вами Тёма!