Semolina Code (Python / TypeScript)
7.46K subscribers
9 photos
4 files
100 links
По вопросам: @ahillary
Download Telegram
СТАТЬЯ ДЛЯ НОВИЧКОВ В WEB3

У моего хорошего друга @cryppi вышла разъёбная статья для новичков в web3

Знаю, что не все люди в этой группе являются гуру крипты
Кто-то пришел сюда просто выучить python и не понимают кто такие криптаны и как они теряют депозит зарабатывают

Если вы еще не успели вынести миллион баксов с крипты, то вы 100% найдете для себя что-то новое

Еще данная статья очень удобна, если ваши знакомые у вас постоянно страшивают «чем вы занимаетесь?» или «как начать работать в криптовалюте?»

Читать статью
Читать статью
Читать статью

Читайте, наслаждайтесь, оставляйте фид бек, всем бычки ❤️🐂

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
👍32🔥136🤮6
15 урок Асинхронный конструктор и деструктор (aenter, aexit):
Видео
Код из видео

В видео рассказываю что делать, если при создании объекта нужно вызвать асинхронный метод или функцию. Всё это веселья на примере библиотеки aiohttp и starknet-py. Полезный получился видос так как в нем показано как правильно внедрить прокси в библиотеку starknet-py (подобные темы разбирались на закрытом обучении)

00:00 - существует ли асинхронный конструктор и деструктор?
01:19 - преимущества сессии из библиотеки aiohttp
02:48 - пример отправки GET запроса через библиотеку aiohttp
04:06 - где может понадобиться сессия aiohttp?
05:05 - пробуем создать асинхронный деструктор
06:09 - реализуем синхронный менеджер контекста
10:16 - реализуем Асинхронный менеджер контекста
14:43 - разбор прикладного примера с использованием starknet SDK
16:18 - внедрение прокси в starknet SDK
22:36 - порядок вызовов в менеджере контекста
22:55 - итоги по starknet
25:14 - итоги
28:02 - анонс по playwright

‼️На днях подготовил очень большое видео по работе с playwright. Разобрал всю документацию, нашел кучу тонкостей, пофиксил кучу ошибок через stackoverflow. Дропну видео на юбилей 5000 подписчиков. А пока идем к этой "цифре", дропну на канал еще несколько ништяков с плптного обучения

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
51🔥15👍9
Формат "презентация" говно??

Ответ: Да


На приватном обучении я решил заменить презентации на методички в Notion, чтобы ученикам было удобнее искать и воспринимать информацию, а мне редактировать и оперативно добавлять информацию в одном месте

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

Также на старых уроках в канале я добавил везде ссылку на новую методично Notion, поэтому сейчас изучение python должно стать ещё проще

Вот прямые ссылки:
- Главная страница с ссылками на все методички (начни с неё)
-
Основы python
-
Cписки, цикл for, цикл while
-
Словари и кортежи
-
Функции
-
Строки и методы строк
-
Файлы, JSON, CSV
-
Парсинг
-
ООП
-
Асинхронность
- Playwright (soon
‼️)

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
👍6425🔥15🤣3🤮2🤡1
Обучению быть!!

Мы с cryppi очень успешно провели первый поток обучения
Почему я говорю «очень успешно»? Мы активно собираем фидбек практически со всех участников обучения и он по-настоящему радует меня, как человека, который вас обучает. Те, кто смог выделить достаточно времени, смог за это время достичь потрясающих результатов и стать независимыми разработчиками, которые могут самостоятельно писать код под свои задачи, а это и была цель обучения.
Мне нравится то, что я могу быть полезным для такого количества людей, а для кого-то я открыл дверь в IT и, тем самым, сделал небольшой лайфчендж

Теперь по самому обучению:
Для текущего потока я записал 51 час обучающего контента: 16 часов по python с нуля и 35 часов по web3 (список тем с первого потока)
В этих видео я постарался максимально разжевать все темы, чтобы каждый из вас смог всё понять и качественно усвоить. Также в видео рассказываю некоторые секреты, про которые не принято говорить в паблике

Некоторые темы на данный момент потеряли актуальность (например старкнет), но даже в подобных темах можно найти полезную информацию, например, как работать с не evm блокчейнами

Мы продолжаем улучшать обучение и добавили новые интересные и актуальные темы:
- работа с твиттером (для работы с galxe и другими активностями)
- основы solidity (попробуете на вкус новый язык программирования и, возможно, захотите стать web3 билдером)
- деплой и тестирование смарт контрактов в evm сети


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

На данный момент рынок находится в довольно спокойной и скучной фазе и возможно, что текущий боковик продлится еще несколько месяцев, а это значит, что есть время прокачать свои навыки, чтобы в активной фазе рынка максимально эффективно отработать. Поэтому если вам надоело тыкать в монитор, повторяя однотипные действия или вам не хватает комьюнити из опытных криптанов или вы просто хотите стать разработчиком, подписывайтесь на канал how to code чтобы следить за анонсами по обучению и заполняйте форму чтобы гарантированно попасть на обучение на самых выгодных условиях
07.05

P.S. А если вы не до конца понимаете что делают кодеры в web3 и как они выносят проекты на сотни тысяч долларов, я напоминаю, что мы с cryppi написали большую статью на эту тему и сейчас самое время её прочитать

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
21👍5🔥3😁1
SNAPSHOT DONE

В группе How To Code 04.05 в 14:00 MSK мы закрыли форму предзаписи на второй поток, а всем, кто заполнил форму, мы дали скидку на обучение -5% на любой тариф

Если вдруг вы не заполнили форму, не расстраивайтесь так как она не была обязательным условием для прохода на обучение

07.05 мы открываем продажи и все анонсы будем писать в группе How To Code
Поэтому не забудьте подписаться, чтобы не упустить возможность, которая улучшит вашу жизнь

В этот раз мы апгрейднули программу обучения и добавили 4 новых урока на актуальные темы, чтобы довести каждого из вас до уровня реального разработчика

P.S. Скоро в канал загружу много контента, чтобы у каждого была возможность работать с web3 качественно и быстро

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
👍26🤡2214🔥11❤‍🔥2👎1🏆1
Playwright (урок 16)

Ссылка на видео
Методичка в notion: Playwright
Ссылка на код с урока

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

А теперь про сам урок: в видео рассмотрен инструмент для тестирования веб интерфейса - playwright (аналог selenium)
Но кроме тестирования его можно использовать для работы с web3 через UI (тем самым закрывая боль с UI касанием)

Также работа с playwright позволяет войти в автоматизацию web3 активностей намного проще так как требуется только разобраться с тем, как тыкать по страничке

Но если вам этого мало и вы хотите работать с web3 быстро и на профессиональном уровне, то вы знаете куда идти: how to code (все анонсы уже завтра)

Таймкоды:
00:00 - что такое playwright в контексте web3?
05:39 - установка playwright
07:22 - быстрый старт в playwright в синхронном и ссинхронном режиме
13:49 - что такое playwright context
15:54 - что такое Locator (обзор методов)
27:53 - устаревший метод query_selector()
31:08 - ожидание загрузки страницы
36:12 - assertions (ожадание состояния элементов)
41:48 - первая практика с uniswap
52:18 - что еще почитать?
55:27 - аналог функции implicitly_wait()
55:51 - подмена useragent
57:15 - подмена proxy
58:20 - отключение web driver mode
59:07 - экспорт и импорт cookies
01:02:51 - переключение между страницами
01:04:17 - работа с chrome extensions на примере MetaMask
01:11:38 - вторая практика с MetaMask
01:21:10 - итоги

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
53❤‍🔥13👍11
Инфа по обучению

Всего 55 минут осталось до ТВБ, который пройдёт тут (начало в 18:00 MSK)

Почему решили выбрать формат ТВБ? Ответ

Мы расскажем чем будем заниматься на обучении, анонсируем новые уроки, которые позволят вам подстроиться под актуальную мету, наконец-то раскроем цену 🤡 и откроем продажи (которые продлятся всего несколько дней)

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

Мы очень старались и ждём каждого из вас @how_to_code_web3 ❤️

P.S. Сообщения с ТВБ автоматически удалятся через 24 часа поэтому не откладывайте в долгий ящик

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
👍24🤮178🔥5🤡5👎1🤣1🏆1🍾1
Слив обучения
(а точнее одного урока)

Starknet (урок 17)

Ссылка на видео
Ссылка на код с урока

Мы решили поделиться с вами одним из видео с предыдущего потока, чтобы вы понимали насколько подробно мы разбираем темы и в каком формате происходит обучение

Благодаря данному видео можно было легко написать свой софт под активности в starknet и если добавить немного удачи, то даже получить дроп

Но если этого не произошло, можно было залить код из видео на гитхаб и получить за это 10000 STRK (если сразу сливать по 2$, получось бы 20к USDT за небольшой код), что тоже очень даже приятно за обычные знания

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

спойлер: самый кайфовый блокчейн, с которым я работал
В уроке разберемся что такое eip-4337 и что такое старкнет
Научимся доставать данные из блокчейна, отправлять READ, WRITE транзакции, увидим лучший експлорер в web3, внедрим прокси в работающую библиотеку

Дополнительные материалы:
видео incrypted
документация loguru
что такое eip-4337
документация eip-4338 от Виталика
установка starknet-py + документация
старкнет експлорер

Таймкоды:
00:00 - что будем делать
00:25 - логирование с помощью loguru
12:04 - что такое starknet и eip-4337
22:04 - установка starknet SDK
23:50 - установка зависимостей из requirements.txt
26:34 - читаем документацию
29:29 - начинаем писать код: создание StarknetClient
32:04 - конструктор StarknetClient и почему для работы с аккаунтом нужно знать приватный ключ и адрес
35:40 - почему адреса это int, а не str?
38:41 - создание клиента, получени блока
40:30 - что такое rpc и какую версию rpc использовать?
44:46 - получение адреса кошелька в нормальном виде
45:23 - получение баланса и получение decimals (1/2)
47:02 - создание контракта
48:13 - получение баланса и получение decimals (2/2) + парсинг результата
54:51 - несколько способов создания контрактов + автоматическая загрузка ABI
01:04:47 - обращение к read функциям контракта
01:08:25 - создание ProxyClient (боевой клиент с внедрением прокси)
01:09:10 - ProxyClient: конструктор и метод value_to_hex()
01:14:50 - обзор експлорера starknet
01:17:45 - передача сессии с прокси в FullNodeClient
01:25:55 - асинхронный менеджер контекста или "что делать, если в конструкторе нужны асинхронные запросы?"
01:36:38 - обзор нового клиента (ProxyClient)
01:38:20 - примеры использования клиента (ProxyClient)
01:41:53 - обзор базовго класса Base
01:43:23 - разбор транзакции в експлорере
01:47:40 - отправка транзакций в Starknet на примере MySwap (eth -> token)
01:58:55 - отправка транзакции в Starknet на примере MySwap (token -> eth)
02:01:01 -итоги

Практика:
1) написать функции для свапа eth в USDC/DAI/USDT/WBTC и обратно через jediswap
2) написать функции для свапа eth в USDC/DAI/USDT/WBTC и обратно через swap10k
3) написать функции на добавление и удаление ликвидности через myswap для пар USDT/ETH, USDC/ETH, DAI/ETH

Накидайте на пост реакций и я выложу разбор дз, в котором подробно показываю как работать с пуллами ликвидности ❤️

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
52🔥12❤‍🔥5👍3😁2💊2🤮1💔1
Starknet практика и работа с пулами ликвидности (урок 17)

Ссылка на видео
Ссылка на код с урока

Мы решили поделиться с вами одним из видео с предыдущего потока, чтобы вы понимали насколько подробно мы разбираем темы и в каком формате происходит обучение

Также мы добавляем разбор практики, чтобы было ещё больше понимания
Кроме практики в видео разбирается очень важная теория по работе с пулами ликвидности (принципы работы применимы для любого блокчейна)

В уроке разберемся разберём практику по starknet:
1) написать функции для свапа eth в USDC/DAI/USDT/WBTC и обратно через jediswap
2) написать функции для свапа eth в USDC/DAI/USDT/WBTC и обратно через swap10k
3) написать функции на добавление и удаление ликвидности через myswap для пар USDT/ETH, USDC/ETH, DAI/ETH

Мы сделаем свап на JediSwap и 1kSwap, поработаем с пулами ликвидности (добавление ликвидности, удаление ликвидности) на MySwap. Разберём что такое AMM и научимся работать с LP парами

Дополнительные материалы:
Что такое AMM

Таймкоды:
00:00 - что будем делать
01:15 - разбор свапа на JediSwap (1/2)
02:33 - длину массива указывать необязательно!!
03:14 - разбор свапа на JediSwap (2/2)
04:08 - реализация свапа на JediSwap в коде (1/2)
09:30 - звёздочки для распаковки в аргументы функции
12:10 - реализация свапа на JediSwap в коде (2/2)
18:46- реализация свапа на 1kSwap в коде
22:46 - разбор транзакции на добавление ликвидности через MySwap
24:20 - как работает AMM
31:20 - реализация добавления ликвидности на MySwap в коде
34:57 - разбор транзакции на удаление ликвидности через MySwap
41:45 - как развернуть LP пару
58:07 - проверка работоспособности
01:00:52 - итоги

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
👍2210🔥3
Для тех, кто спрашивал "а что в приватке"

Чтобы не задалбливать всех в основном канале, решили создать новый канал

Также подробно расписали что именно сейчас есть в приватке 28 софтов под актуальные проекты за 200$ в месяц (пока что)

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
👍19👎75🔥4
Galxe > ZkSync

Наконец-то дождались дроп за galxe от проекта Aethir, софт на который был предоставлен по подписке в @arbuzerspublic

Это наше второе попадание в дроп после создания подписки на софты (первый дроп забрали от Aevo)

Мы в самом начале писали, что в эту подписку не будем выкладывать тир-1 проекты и благодаря этому смогли защитить пользователей от дропа в ZkSync 😅

Но на сегодняшний день в подписке есть достаточно много актуальных проектов, которые могут потенциально раздать дроп среди них:
- solana phoenix + hsol на type script
- Linea on-chain прогрев + lxp-l farm
- Aptos pontem на PW с UI касанием
- Bebop
- Base
- Scroll
- много чего ещё
Подробнее можно прочитать тут и тут

Самый интересный софт Linea так как Linea – последний тир1
Кто сказаал что не могут ввести ретроспекивные lxp за автивность в сети? + Супер возможность перелить деньги с ЗК в линею и лутать LXP-L
Мб эта ставка не сыграет, но эта ставка супер дешёвая и грех – не воспользоваться
Если не хотите приобретать подписку, то софт по Linea можно получить отдельно

‼️ если наберём 300 подписчиков в группе, разыграем несколько месячных подписок на софты (по сути получите гитхаб на 30 софтов + чат с поддержкой)

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
👍376🔥5🤡3😁2🥰1👏1
Конкурс

Сейчас один знакомый написал, что в web3 софтах на JS/TS нельзя добавить прокси к rpc вызовам

Пробовал на либах web3.js, ethers.js, viem

Мб тут есть сильные JSеры, которые смогут показать пример как добавить http прокси в одну из библиотек (web3.js / ethers.js / viem)

‼️ Условия:
1) Необходимо использовать последние версии библиотек: web3.js / ethers.js / viem (любая на ваш выбор)
2) Использовать http прокси

💰 Приз: 100$ (тому, кто первый пришлет корректный пример работы с прокси мне в лс или в чат)

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
8🔥6👍3
Semolina Code (Python / TypeScript)
Конкурс Сейчас один знакомый написал, что в web3 софтах на JS/TS нельзя добавить прокси к rpc вызовам Пробовал на либах web3.js, ethers.js, viem Мб тут есть сильные JSеры, которые смогут показать пример как добавить http прокси в одну из библиотек (web3.js…
Конкурс закрывается

Победитель @fraggdiller 🏆
https://www.oklink.com/ru/arbitrum/tx/0x6d0e1196aef639b2b2f6aa75bab962ab9fe626bfee233e15d0ce61ee129f2940

Получилось прикрутить прокси к ethers.js:

import { HttpsProxyAgent } from 'https-proxy-agent';
import { ethers } from 'ethers';

(async () => {
const proxy = '';
const rpc = '';

let fetchRequest: ethers.FetchRequest;
const agent = new HttpsProxyAgent(proxy);

fetchRequest = new ethers.FetchRequest(rpc);
// fetchRequest.setHeader('user-agent', userAgent);
fetchRequest.getUrlFunc = ethers.FetchRequest.createGetUrlFunc({ agent: agent });

let provider = new ethers.JsonRpcProvider(fetchRequest);
console.log(await provider.getBlockNumber());
})();


SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
👍318👏7
Semolina Code (Python / TypeScript)
Конкурс закрывается Победитель @fraggdiller 🏆 https://www.oklink.com/ru/arbitrum/tx/0x6d0e1196aef639b2b2f6aa75bab962ab9fe626bfee233e15d0ce61ee129f2940 Получилось прикрутить прокси к ethers.js: import { HttpsProxyAgent } from 'https-proxy-agent'; import…
А вот так прокси добавляются в web3.js
Но тут победитель уже я

Осталось только viem добить и будет опять непонятно с какой либой работать


import { HttpsProxyAgent } from 'https-proxy-agent';
import Web3HttpProvider from 'web3-providers-http';
import Web3 from 'web3';

(async () => {
const proxy = '';
const rpc = '';

const httpProxyAgent = new HttpsProxyAgent(proxy);
const options = {
providerOptions: {
agent: httpProxyAgent,
keepAlive: true,
withCredentials: false,
timeout: 20000,
headers: [
['Access-Control-Allow-Origin', '*'],
['accept', '*/*'],
] as [string, string][]
}
};

const provider = new Web3HttpProvider(rpc, options);
const web3 = new Web3(provider);
console.log(await web3.eth.getChainId());
})();


SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
❤‍🔥24👍4👏2
💰 Ещё один конкурс 💰

В этот раз идём по классической схеме и разыгрываем:
5 бесплатных доступов в Arbuzers Private (на 1 месяц)
5 Telegram Premium (на 6 месяцев)

Условия конкурса читайте ТУТ

Также в канале @arbuzerspublic вышел пост о том, что мы сделали за последнее время в приватке:
- Написали публичную библиотеку на Typescript для работы с EVM (библиотека на основе ethers.js)
- Написали софт на Typescript под Solana (meteora + phoenix)
- Написали софт на Typescript под Berachain (куча активностей, включая Faucet)
- Написали софт под BOB (куча активностей)
читать подробнее...

Как вы видите, мы начали использовать TS/JS в работе, а это значит, что скоро выйдет большая серия бесплатных видеоуроков по TS/JS 🥳

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥23👍74🏆2
Я дорос до уровня, когда от моего имени скамят людей

Проблема в том, что буквы L и i в английском языке очень похожи
То есть маленькая буква L - почти то же самое, что и большая i

Заблокируйте или накидайте жалоб на этого клоуна @ahiIIary

❗️❗️❗️В СПОЙЛЕРЕ СКАМЕРСКИЙ АККАУНТ
МОЙ АККАУНТ УКАЗАН В ШАПКИ ЭТОЙ ГРУППЫ ❗️❗️❗️

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
😁38👍8😱3🤬2😨2🥰1🙉1
Долой "глупые" вопросы!!

Если вы новичок в коддинге и не понимаете:
- Как установить python
- Что такое виртуальное окружение
- В чем разница между venv и virtualenv
- Как устанавливать библиотеки в python
- Как запустить софт

Специально для вас я подготовил небольшой гайд, где разобрал все эти вопросы на Unix системах (Linux и Mac OS), а также на шайтан машине Windows

В статье есть способы решения наиболее часто встречаемых ошибок поэтому после прочтения статьи у вас уже не возникнет вопросов о том как запусить софт на python

➡️ ЧИТАТЬ СТАТЕЙКУ
➡️ ЧИТАТЬ СТАТЕЙКУ
➡️ ЧИТАТЬ СТАТЕЙКУ

P.S Используйте этот пост как ответ любому новичку

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
Please open Telegram to view this post
VIEW IN TELEGRAM
47🔥12👍7🙏2
Semolina Code (Python / TypeScript)
Долой "глупые" вопросы!! Если вы новичок в коддинге и не понимаете: - Как установить python - Что такое виртуальное окружение - В чем разница между venv и virtualenv - Как устанавливать библиотеки в python - Как запустить софт Специально для вас я подготовил…
Как запустить софт на JavaScript/TypeScript?

Продолжаем рубрику "Долой "глупые" вопросы!!"

В первой части мы был разобран python

В этой части мы поговорим про JavaScript/TypeScript и переферийные технологии (CSV, JSON, Базы данных)

Если вы новичок в коддинге и не понимаете:
- Как установить node js
- Как установить JavaScript/TypeScript
- Что такое CSV
- Как редактировать CSV файл
- Что такое база данных
- Как читать/изменять записи в базе данных
- Что такое JSON и чем он так удобен
- Как запустить софт на JS/TS

Специально для вас я подготовил небольшой гайд, где разобрал все эти вопросы на Unix системах (Linux и Mac OS) и Windows

➡️ ЧИТАТЬ СТАТЕЙКУ
➡️ ЧИТАТЬ СТАТЕЙКУ
➡️ ЧИТАТЬ СТАТЕЙКУ

P.S Используйте этот пост как ответ любому новичку

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥188👍6
Про контент

За эти 2.5 месяца лета я очень сильно прокачал свои хард скиллы (не только в python, но и в других ЯПах JS SOON) и даже успел отдохнуть

Во время отдыха и вправду приходит очень много идей и в моём случае это идеи для контента (как бесплатного контента в канал, так и идеи направленные на улчшение платного обучения и вывода его на новый уровень)

У меня образовался очень большой список с идеями и мне супер важно найти пересечения с вашими интересами, чтобы у нас получился win-win

Поэтому в четверг я подготовлю маленькую форму, чтобы собрать фидбек, который повлияет как на меня, так и на канал, контент и платные продукты

P.S. Я сам не большой любитель заполнять формы так как есть ощущение, что они ни на что не влияют
Но я гарантирую, что каждый ваш ответ в этой форме привнесет огромное велью, как минимум, лично мне ❤️

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
60🍌3❤‍🔥2🔥2👍1