March 18

Vibe (Ai) coding: О дивный новый мир!

Йоу! На связи YessirskIII и Klatman. Погнали сразу к делу:

Оглавление:


1. Вступление

2. Насколько это просто? И что можно делать с помощью ИИ уже сейчас?

3. Как начать с нуля?

4. Как правильно строить запросы для ИИ?

5. Какие Языковые модели юзать?

6. Разбираем на реальном примере:

7. Итоги

Вступление:


🚨 ВНИМАНИЕ ВНИМАНИЕ!
Приготовь свой мозг к последующей информации, ибо она нахуй перевернёт твой мир. И ты, из нищего криптана низкого ранга, превратишься в нищего криптана, который уже что-то умеет, то есть лучше остальных. Так что может и перестанешь уже быть таким нищим, заэбал.

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

Ты уже должен был прочитать наши посты по общему юзабилити AI в жизни (я лично душу вложил в то, чтобы каждый дурачок и не дурачок поняли, насколько ИИ это лайфчендж история во всем, рассказав про GPT. А Яша рассказал про его юзкейсы Grok'а)

Не читал? А ну исправляйся!

1. Чо можно делать с Grok'ом?

2. GPT на все случаи жизни!

Сегодня же мы более углубленно погрузимся в кодинг и понимание того, что это пиздец как легко, даже если ты НИКОГДА, сука, НИКОГДА не кодил.

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

Надеюсь, что у тебя уже течёт слюна, а пенис передаёт привет солнцу, так что ПОihalи:

Насколько это просто? И что вообще можно делать с помощью ИИ уже сейчас?


Первая часть будет исключительно подготовительной прелюдией для твоего нежного умишки к сексу с высокими технологиями.
И первое, что я хочу до тебя донести: (самое главное, рэально): Тут нет вообще нихуя сложного! Рил немножко подумать, нажать три кнопки, и код готов.

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

Чисто быстро примеры того, что я (мистер Клатман) напрогал с нуля за последние пару месяцев:

1. Чекер схождения и расхождения цен на токен между бирж с тг уведами
2. Торговый бот для Backpack на продажу по нужной мне цене в равных долях
3. Парсер моих фьюч позиций по нескольким аккам для MEXC/Bitget
4. Личный бот с важной для меня инфой, ежедневными напоминаниями и установками в тг

Яша тоже решил ворваться со своими поделками:

1. Disperse бот для Solan'ы прямо в тг
2. Чекер наград по BonkDragon
3. Чекер наград Taiko

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

И, конечно, помни, что это очень легко, прям рили, даже если ты затупок ебаный — все равно справишься. Я тебе больше скажу, даже если ты конченый кретин и у тебя не получается, то ты можешь попросить ИИ думать за тебя и помогать тебе делать запросы на основе высеров из твоей головы так, чтобы он тебя понял на все 100%.

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

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

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

Как начать с нуля?


Ухх, Klatman выдал реально сильную речь... Ну а теперь моя (Яшина) очередь раскидать вам за техничку:

Итак, если ты вообще никогда в своей жизни не сталкивался с кодингом, то начать предлагаю с выбора языка программирования. Воообще, их существует целая туева хуча: Rust, Go, NodeJS, C++ и прочая-прочая шняга. Но тебе ничего из этого не нужно! Тебе нужен только Python.

Python — одна из самых универсальных и простых штук, которую придумало человечество. С ним ты и бота в телеге скрафтишь, и софт по отработке очередного тестнета, и еще множество всякого разного. Остальные языки пригодятся тебе на моменте, когда ты уже научишься делать какие-то скриптики и, в целом, будешь понимать, зачем эти самые плюсы, голанги и прочая дичь тебе нужны.
Но, глобально, они вообще могут не понадобиться: я вот до сих пор сижу онли на питоне и ни на что не жалуюсь.

Для начала давай скачаем этого самого питона. Сделать это можно тут:
python.org/downloads

Лично я юзаю версию 3.11.5, так что предлагаю и тебе остановиться на ней.

Мотайте вниз и качайте эту малыху

После скачивания запускаем установку. ОБЯЗАТЕЛЬНО нажимаем галочку "Add Python to PATH"

Без этой галки ничо работать не будет!!!

Перезагружаем комп и вауля: теперь у тебя на пк есть питон, а значит твоя железяка может запускать любой скрипт, написанный на данном ЯП. Ладно, на самом деле вообще далеко не любой, т.к. для этого нам понадобится последняя деталь пазла: зависимости (я щас не про драгсы ес чо, так что спрячь баян обратно), но о них поговорим чуть позже.

Тебя наверняка волнует вопрос:

Ну хорошо, теперь мой комп может запускать скрипты на питоне, но где и как мне эти самые скрипты писать то?

Смотри, ты можешь, как крутой кодер, скачать какую-нить среду разработки, вроде PyCharm или VS Code. Там у тебя будут подсвечиваться разные части кода, чтоб все было понятнее. Да и в целом, эти среды разработки призванны упростить работу с кодом.

А еще ты можешь положить огромный болт на эти среды разработки и, вместо них, работать с кодом прямо в .txt файле на твоем пк, как настоящий колхозник (ну то есть я). Щас поясню как это делается:

1. Создаем папку, называем как угодно.

2. Внутри этой папки создаем текстовый документ. Ему пока не даем название, оставляем как есть:

3. Теперь заходим в этот файл и вставляем туда код, который в дальнейшем для нас будет генерить ИИ. Вот просто ctrl C + ctrl V.

4. Осталось правильно сохранить наш файл! Нажимаем "Сохранить как" или ctrl+shift+s и даем ему название "main.py", а ниже, в "Тип файла", обязательно меняем "Текстовые документы" на "Все файлы". И только после всех этих махинаций нажимаем "Сохранить".

Всё! Наш софт готов к использованию. Давай теперь объясню, почему мы сохраняли файл именно так:

"main" — это название файла. Оно может быть вообще любым. Просто когда создается большой софт, где очень много кода, ты делишь его на несколько отдельных файлов, каждый из которых отвечает за определнные действия. Это нужно, чтобы не перегружать ИИ. Да и в целом, чтоб было удобнее работать с частями кода, изменяя только определенные модули. Например "send.py" может отвечать в твоем софте за рассылку токенов, а "wallets.py" за добавление адресов, куда нужно отправить эти самые токены. Ну а "main.py" — это главный скрипт, который объединяет все остальные файлы в одного павер рейнджера и запускает все это дело. Так что по дефолту ты будешь запускать именно его.

".py" — это просто формат питоновских файлов, все они должны быть в нем.

"Тип файла" мы меняли, т.к. по дефолту нам предлагают сохранить файл в формате ".txt". А, как следует из определения выше, нам нужен именно ".py". Поэтому мы и выбрали "Все файлы".

Хорошо: скрипт есть, но как же его теперь запустить?

Для этого проделываем следующий алгоритм:

1. Сначала нам нужно открыть консоль и попасть там в нужную папку. Для этого есть два способа:

а) Жмакаем правым кликом в нашей новоиспеченной папке по пустому пространству и нажимаем "Открыть в терминале". Если у тебя этой кнопки нет — посмотри в инете, как ее добавить. Я чот не помню. Ну или воспользуйся вторым способом.

Да-да, скриншоты для лохов)))

б) В поиске вбиваем "Powershell" и заходим туды.

Затем копируем путь к нашей папке:

И теперь прописываем в консоли: cd + путь к твоей папке, а потом жмем энтер.

2. Все, мы наконец-то в папке! Теперь осталось прописать python main.py и наш софт запустится (если ты назвали файл не main, то просто поменяй текст на название твоего файла)

Короче, ничего сложного, попробуй проделать это 1 раз, и больше никогда не будет вопросов по этому поводу.

Остался всего лишь один момент до твоего всемогущества:

Помнишь, я говорил про зависимости? Так вот, эта та самая последняя деталь пазла. Сам по себе питон умеет не так уж и много, но вот библиотеки открывают тебе доступ ко всему, что только душа пожелает:

Делаешь тг бота? — установи для этого библиотеки вроде python-telegram-bot.

Делаешь софт для Solan'ы? — установи, к примеру, solana-py

Когда ИИ будет писать тебе код, он сам подскажет, какие библиотеки установить. Так что с версиями и названиями этих самых библиотек париться вообще не нужно. Нужно просто установить их на твою железку, чтобы софт корректно заработал.

Но как это сделать? Да очень просто! Нужно всего лишь прописать в консоли pip install + название нужной библиотеки. Если библиотек много, можешь попросить собрать ИИ все необходимое в один текстовый файл и назвать его "requirements.txt". А затем прописать в консоли (предварительно зайдя в ней в папку, где лежит этот текстовик): pip install -r requirements.txt

Пример установки библиотеки

Ну вот и все!

Поздравляю, ты успешно освоил всю базу! Теперь можешь идти пробовать билдить любую фигню!

Хотя нет, постой! А какой же ИИ лучше использовать для написания кода? И, пожалуй, самое главное - как правильно клянчить код у этого самого ИИ?

Об этом поговорим ниже 👇

Как правильно строить запросы для ИИ?


Сперва добавлю ремарку: не забудь задать модель поведения своему рабу. Ибо ИИ может выдавать тебе слишком много ненужного текста или думать, что ты умнее, чем ты есть на самом деле, и слишком сильно на тебя расчитывать.

Я знаю, кто я есть, поэтому сразу же в новой ветке под проект пишу:

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

Окей, как же выдавать приказы вашему электрорабу?

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

Прям идеальный мем пример я видел про кодинг, но и сюда он подойдёт:

Всего 15 сек + смешно + ебать поучительно.

Как и мужик с видоса, нейронка часто наши слова воспринимает буквально, а из-за того, что люди сами не понимают, чё они хотят и пишут в запрос лабуду — на выходе получаем: «Хуйня ваш гпт, нихуя не умеет и ваще он тупой».
(Ты тупой)

Самое простое и проверенное выполнение задач для меня “step by step”.
То есть, если тебе нужно написать парсилку с выводом результата в тг + разбитием на отдельные функции + какие-то вычисления, то ты должен:

1. Сделать с нейронкой простую парсилку со всей нужной тебе информацией в выводе.

1.1 Даже здесь можно разбить задачу на несколько шагов:

а) Найти правильные запросы б) Обработать полученный результат в) Настроить вывод с нужным интервалом

2. Донести до нейронки, что с полученными данными нужно сделать:

а) На какие переменные разбить?
б) Как эти переменные должны взаимодействовать друг с другом при нужном тебе запросе?
в) И тд, и тп. Чем больше — тем лучше.

3. Шаг за шагом расписать, как ты хочешь видеть своего тг бота, и как он должен выводить уже полученные переменные:

а) Мне нужен бот для теллеграма, с простыми кнопками в меню: /пися /попа /суммписяпопа

б) Стилизация бота под свои нужды

в) Можно попросить добавить многопоточность для разных юзеров, если собираешься делиться своим творением в комьюнити.

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

В целом, можно и сразу попробовать написать «сложную» структуру кода, если ты достаточно в себе уверен и можешь разбить логику шаг за шагом в тексте:

1. Парсим информацию по этому апи отсюда и берем такие то значения из вывода

2. Делаем с этими значениями такие то операции

3. Делаем тг бота с такми-то кнопками, с многопоточностью под разных юзеров и с таким-то текстом»

Версия GPT O1 с этим тоже легко справится, НО!

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

Естественно, если у тебя вылезла красная ошибка в VS code или после запуска в консоли терминала ты видишь «хуй тебе», то просто копируй эту ошибку и говори ИИ, что, запустив последнюю версию твоего кода, я получил «эту» ошибку — он исправит.

Но не всё всегда идёт гладко. И в этот момент главное не нервничать и не писать ИИшкам, какие они хуесосы. Эти парни стараются выдать тебе максимум на основе той инфы, которую ты им дал. А если тебе уже много времени не удается решить какую-то ошибку/недочёт, то:

1. Сделай небольшой перерыв на отдохнуть и подумать. Это реально бывает полезно. Особенно когда фигачил до этого несколько часов подряд.

2. Распиши роботу все шаги по исправлениям и итогам, которые вы уже сделали, и они, при этом, не сработали. Предложи ему сделать другие действия с твоей стороны, которые могут помочь вам достичь цели.

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

В 99% случаев это сработает.

Иногда реально бывают ошибки, где нужно прям шарить. Тогда можно попробовать придумать другой подход. Попробуй изменить логику или алгоритм работы твоего бота. Возможно, это дело можно упростить и не столкнуться с текущей ошибкой в принципе.

Бывало, что у гпт имелась старая версия апи. Я скармливал актуальную вручную или искал запросы на сайте через f12 вручную (но с помощью гайда гпт, конечно).

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

В целом, просто помни: у машины нет стимула над тобой издеваться, и в 99% случаев ты сам ставишь себе палки в колёса, ругаясь на бедного бибота. Он всегда готов тебе помочь и пытается изо всех сил. Больше говори с ним, вноси то, чего он знать физически о тебе не может, и всё будет гуд!

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

Итого:

Всегда структурируй запрос шаг за шагом и максимально подробно расписывай свое тз (как для человека в найме или даже лучше). Помни, что робот - твой друг, и всегда может помочь тебе на абсолютно любом этапе. Даже с тем же планированием: если не умеешь писать тз, то сперва попроси робота разбить твой запрос на хороший промпт. Отредачь его как надо и иди дальше с ним за ручку до самой победы.

Всё! Всё просто!

Какие Языковые модели юзать?


Сразу отмечу, что я использую онли Grok'а, а Klatman — только GPT. Поэтому сделаем упор на этих двух, ну а по остальным — просто обозначим их факт существования.

Grok:

Если ты прям совсем нулевый, то просто бери Grok'а и можешь даже не читать дальше эту главу.

Во-первых, полный функционал Grok'а доступен всем по дефолту бесплатно. Да, есть ограничение в 15 запросов на 2 часа, но камон, думаю у всех криптанов есть хотя-бы небольшая фермочка мультиакков, так что будем считать его полностью фришным)

Во-вторых, я дико кайфую с актуальности инфы. Его базы данных обновляются каждый день, а еще он анализирует посты по твиттеру. Более того, при специфичных запросах Грок чекает инфу прям в инете. Для этого даже есть кнопка «DeepSearch».

Ну и в-третьих, этот ИИ реально практичен. Его ответы нацелены на решение ваших запросов, а не просто на теорию. Общаясь с ним, создается впечатление, что по ту сторону сидит человек. Этому способствует отсутствие цензуры)

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

Хочу дать пару лайфхаков:

  1. Если диалог с ним становится большой, Гроку будет тяжко выдавать огромные куски кода. Так что иногда смартово попросить сделать саммари по диалогу с ним, а дальше открыть новое окно, запихнуть туда это самое саммари и уже тут попросить выдать полный обновленный код.
  2. Иногда полезно давать ему роль в начале запроса. Например "Ты в роли Senior разработчика" или "Ты в роли тестировщика ПО". Такие уточнения помогают сфокусироваться на самом важном.

Chat GPT:

Отличный варик для тех, кто уже купил на него подписку.

Самая крутая штука для меня - это использование папок. Сильной альфы тут не навалю, но очень удобно разбивать проекты на эти самые папки:

  • Программирование
  • Философия
  • Спорт

И в каждой такой папке ведёшь проекты по направлению и кайфуешь.

Единственное, отметим, что бесплатная версия GPT — туповатая. С ней ты будешь прям долго хреначить код, исправляя тонны ошибок. Так что если нет подписки — лучше пробуй Grok'а.


Cursor:

Хорошо подходит тем, кто уже работал с кодом.

Здесь у нас, по сути, интерфейс VS Code с ИИ на борту. Говорят, что хорошо работает со струткурой кода, да и в целом выступает как отличный помощник прогера. Однако мы не тестили, нам сказать нечего.


Gemini

Самый что ни на есть фрэшмэн)

Доллгое время Гугл отставали в гонке AI тренда, но буквально пару недель назад эти парни сделали жесткий скачок. Судя по бенчмаркам, их новая версия Gemini 2,5 pro дерет всех конкурентов в хвост и в гриву. Самое жесткое, что пока видел с ним — чел задавал запрос всего одним предложением, а Gemini выдавал ему полноценную простенькую 3D игру. Кажется, что это некст ап, но надо бы самим сначала протестировать.

В общем-то, пробуйте, эксперементируйте и будьте готовы адаптироваться к новым ИИ. Думаю, ближайшие несколько лет они еще не раз поднимут наши волосы дыбом.

Разбираем на реальном примере:


А теперь мы будем закреплять все полученные знания на практике. Ведь так куда понятнее!)

Как и говорил в начале поста, недавно я забацал дисперс бота для Solan'ы прямо в телеге. Так вот, на его примере щас все и посмотрим:

Шаг 1 - обрисовка идеи:

Когда мне только пришла в голову идея этого бота, я сразу побежал пытаться его забилдить. В итоге я столкнулся с тем, что в голове была каша. Я не мог четко и по пунктам расписать алгоритм этого самого бота Гроку. А как мы уже поняли — без детально проработанного запроса получится полная лажа.

Поэтому я выделил где-то 1-2 часа на то, чтобы просто сесть и зарисовать весь процесс работы бота на бумаге. В целом, можно использовать под это дело Miro, если вам не хочется хреначить от руки.

Получилось примерно так:

Вам может и непонятно, что тут написано. Но главное, что было понятно мне на первых этапах разработки!

Также я прописал себе все моменты, которые будут нужны:

а) Юзерам бота (функции, дизайн, гайд и тд)
б) Мне как билдеру (статистика, логи и прочее)
в) Самому софту для четкой работы (защита сервера, бэкапы, проверка корректных данных и все в этом духе)

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

Шаг 2 - подготовка к написанию кода:

ВЫ НЕ ПРЕДСТАВЛЯЕТЕ, КАК ЭТОТ ШАГ ЭКОНОМИТ ВРЕМЯ И НЕРВЫ!!!

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

Как итог, через несколько дней я столкнулся с первой серьезной проблемой: мой код уже был на 1000+ строк, и, с каждым разом, Гроку становилось все тяжелее его обрабатывать. А в какой-то момент ИИ вообще престал его вывозить, так что мне пришлось начинать с самого начала 🤡🤡🤡

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

Вот у меня все норм работает сейчас. А если одновременно софтом будет пользоваться хотя бы 10 человек, все также круто будет?

Как оказалось, вообще нет!!!
Мне пришлось потратить еще несколько дней, чтоб причесать бота для адекватной многопоточной работы.

А ведь обоих фейлов можно было избежать, сэкономив, тем самым, почти неделю работы...

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

Именно этим я и советую заняться тебе в первую очередь! Твой стартовый запрос ИИ должен выглядеть примерно так:

Я собираюсь сделать ТГ бота, который будет помогать пользователям раскидывать SOL на множество кошельков в один клик.
<Дальше идет детальное описание, полученное на первом шаге>.

Давай начнем со структуры проекта: составь мне разбивку кода на файлы, чтобы работа в дальнейшем шла проще. Какие папки надо создать? Какие файлы в них поместить? В общем, разбей будущий код на все необходимые модули.

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

А еще давай сразу настроим логирование, чтоб проще было потом искать ошибки!

После этого ты получишь структуру своего будущего софта. Она будет выглядеть примерно так:

TGbot │ ├── bot/ │ ├── __init__.py # Пустой файл для обозначения модуля │ ├── handlers/ # Обработчики команд и сообщений │ ├── .env # переменная окружения │ │ ├── __init__.py │ │ ├── start.py # Обработчик команды /start и приветствие │ │ ├── network.py # Обработчик выбора токена │ │ └── stats.py # Обработчик для вывода статистики (для админов) │ ├── keyboards/ # Клавиатуры │ │ ├── __init__.py │ │ └── reply.py # Reply-кнопки │ ├── database/ # Логика работы с базой данных │ │ ├── __init__.py │ │ ├── models.py # Модели данных │ │ └── db.py # Инициализация базы и основные функции │ ├── services/ # Бизнес-логика (работа с блокчейнами) │ │ ├── __init__.py │ │ ├── blockchain.py # Логика взаимодействия с блокчейнами │ │ └── token_dist.py # Логика рассылки токенов │ └── utils/ # Вспомогательные утилиты │ ├── __init__.py │ ├── logger.py # Настройка логирования │ └── config.py # Загрузка конфигурации (токен бота, API ключи) │ ├── main.py # Точка входа для запуска бота ├── requirements.txt # Зависимости проекта └── README.md # Описание проекта и инструкции

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

Всё! Вот такой промпт может сэкономить вам колоссальное время работы! Обязательно начинай работу с него! Для меня это стало чуть ли не главным открытием во время написания бота. Работа идет буквально в разы проще.

Шаг 3 - написание кода:

Имея структуру, а также плотно погрузив ИИ друга в контекст, отправляемся к основной части работы.

Начинаем поэтапно заполнять наши файлы строками кода. Со старта можно сделать основную чать: например, настроить алгоритм работы тг бота. А на все остальные модули поставить заглушки. Так ты получишь макет своего проекта. Ну то есть интерфейс у тебя уже будет кликабельный, можно будет тыкаться туда-сюда, но, к примеру, при нажатии "Начать disperse sol" тебе будет высвечиваться <Этот модуль еще в разработке>.

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

- А как чинить ошибки то? На этот вопрос сэр Клатман подробно ответил в части про запросы. Я лишь обрисую свой порядок действий, когда писал дисперс бота:

  1. Кидаю логи Гроку
    Если все ок, то он прям по ним находит ошибку и сам ее быстро исправляет. Дальше можно попросить его прислать полный исправленный код этого файла.
  2. Спрашиваю, какие файлы могут ему помочь разобраться?
    Если Грок сразу затруднился починить ошибку, я кидаю ему другие рабочие части кода, чтоб он был больше в контексте. Вероятно, это поможет ему.
  3. Прокачиваю логи Прошлые пункты не помогли? Ну значит, ошибка не такая уж и очевидная. И чтобы с ней разобраться, нам нужно более глубоко понять, на каком моменте кода она происходит. Ну а для этого, как раз, нужно сделать более подробные логи. После этого запускаем софт заново и присылаем обновленные логи Гроку. Так он яснее поймет, в чем же трабл.
  4. Меняем логику работы Если ничего из этого не помогло, то, возможно, стоит подойти к этому моменту под другим углом. К примеру, в тг боте у меня возникало много ошибок из за того, что пользователь мог сразу нажать несколько кнопок. Пример на фото:
Как видите, можно сразу и в главном меню чот жмакнуть, и в разделе с кошельком

Как оказалось, вместо нескольких часов исправления этих багов, кнопки можно было просто тупо поместить в меню снизу. Тогда бы я вообще бед не знал, сэкономил бы несколько часов времени, да и к тому же, сделал бы сам код меньше и проще. Вот так оно могло бы выглядеть:

Пример меню снизу на боте Sev'ы

То есть, юзер бы не мог нажать сразу 2 кнопки, так как это просто физически невозможно: у нас единое меню снизу, именяющееся на каждом этапе работы.

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

Шаг 4 - база данных:

Вообще, это подпункт предыдущего шага, но он достаточно важен. Собсна, поэтому решил вынести его отдельно.

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

Еще одним примером может быть статистика по отработке тестнета на разных кошельках: количество транзакций, дата последней транзы и тд. Короче, суть ты уловил.

Так вот, записывать эти самые данные можно разными способами:

  • Json файл - самый простой вариант. Он подойдет на начальных этапах разработки софта, либо если делаешь лайтовый скриптик чисто для себя. Главный его минус - нет асинхронных сохранений. Если софт работает в несколько потоков или же им пользуется одновременно разные люди, мы можем потерять часть данных.
  • SQLite - хороший вариант для небольших проектов. Разобраться с настройкой и прочим можно за 1-2 часа с нуля, проверено) Именно на нем и работает мой дисперс в тг боте.
  • PostgreSQL - самый жир. Прибегай в случаях, когда решил воплотить реально грандиозную задумку, которой будут пользоваться тысячи юзеров.

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

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

Шаг 5 - безопасность софта:

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

Для этого я ввожу следующий запрос ИИ:

Ты в роли IT аналитика по безопасности. Проверь код на различные уязвимости и потенциальные недочеты в защите.

После анализа Грока я выписываю все недочеты и иду исправлять их один за другим. Затем можно прогнать код с таким же запросом еще раз, чтобы убедиться, что все моменты пофикшены, а критических угроз больше нема.

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

Важная ремарка!
Если делаешь реально суръезный софт, которым будет пользоваться много людей, так еще и большие суммы там будут крутиться - заплати реальному аналитику, чтоб он провел аудит. На 100% ИИ доверять нельзя, а вот репутацию восстановить бывает ой как нелегко.

Шаг 6 - финальная чистка багов

Когда все готово, не спешим выкладывать код! Лучше сначала все перепроверить.

Для этого можно спросить ИИ:

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

Советую также перепроверить все самостоятельно: запусти софт и попробуй намеренно довести его до крашей/багов. Можешь позвать кентов, чтоб протестировать работу под одновременной нагрузкой нескольких пользоваелей.

Ну и как в прошлом шаге - если пилишь что-то грандиозное — зови реального тестировщика, чтоб провел полный аудит. Заплатив ему, ты точно сэкономишь время, нервы и репутацию. Помни, что ты — не трушный кодер, а ИИ — не панацея в очень узких вопросах.

Шаг 7 - ставим софт на сервер

Мы на финишной прямой, осталось совсем чуть чуть!

После всех проверок остается поставить софт на сервер, чтобы он работал автономно. Тут нужно выделить 3 важных момента:

1. Покупка сервера
2. Защита сервера
3. Перенос софта с пк не сервер

Давай разберем каждый из них:

1. Покупка сервера

Первое, что нам понадобится — это сервер, где будут работать наши софты. Лично я беру обычно на Xork'е. Там и цены норм + есть суточная аренда, но можешь и другие сервисы пробовать. Просто вот делюсь тем, чем сам пользуюсь.

- А как тариф то выбрать?
Тут все индивидуально и зависит от софтов, которые ты будешь запускать: количества юзеров, количества потоков и тд. Проще всего скинуть софт GPT, описать его планируемый сценарий работы и попросить выдать необходимые технические мощности для вывоза твоей задумки. Только бери немного с запасом, особенно по оперативе и количеству CPU! Лучше немного переплатить, но сэкономить время и избавиться от лишнего гемора. Ну а по операционке бери Windows, так будет проще всего.

Также имей в виду, что некоторые софты могут конфликтовать между собой. Поэтому, если есть варик — ставь по 1 решению на 1 сервер.

2. Защита сервера

Вот это очень важный пункт! Не забивай на него ни в коем случае! Иначе можно с легкостью распрощаться с приватниками, работающими на серверах. Оказывается, даже у тех. поддержки есть доступ к данным от твоих серваков. Так что защитить их — мастхэв. Да и к тому же, это вообще не сложно и занимает оч мало времени. Просто глянь видос Одувана, он все супер понятно разложил. Снимаю шляпу 🎩

3. Перенос софта с пк не сервер

Глобально, тут ничего сложного: на сервак нужно накатить python той же версии, что был у тебя на компе, а еще собрать все зависимости в 1 файлик, чтоб быстро установить их на серв.

Для этого кидаем ИИ код софта и пишем:

Собери все зависимости из этого проекта в один файл "requirements.txt"

Ну а дальше создаем такой файлик в папке с софтом и переносим в него полученную писанину от ИИ. Потом просто на сервере в консоли пишем:

pip install -r requirements.txt

И все! Запускаем софт и идем потягивать мохито, наблюдая, как крутятся шестеренки, а работа делается за нас.

Итоги:


Ах, моё юное дарование, я искренне горжусь тобой, что ты дочитал аж до этого момента. Молодец, что продолжаешь развиваться и становиться лучше, мой респект тебе от всей души!

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

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

Надеюсь, что вся эта писанина и затраченное на неё время помогут тебе, и весь этот труд был проделан не зря. GL

А Яша надеется, что вы не поленитесь и просто трайните сделать свой первый простенький скриптец. Попробовав однажды, ваши мозги уже 100% начнут работать по-другому: вы буквально выкупите, в какой удивительный век возможностей мы живем!


Yasha's Adventures: t.me/yshlfe

Klatman's Klad: t.me/klatmansklad

Подписывайтесь! Дальше - больше 🔥