Telegram Group & Telegram Channel
Ух, последнее время навалило и я плотно занялся разработкой платформы Хекслета спустя несколько лет, после того, как я перестал писать туда код. На днях мы делаем большой релиз с выкаткой ИИ-ассиснта вроде того, что я сделал в code-basics.com. Хочу поделиться несколькими историями, которые в процессе возникли и как ИИ немного поменял мой подход к работе.

Удаление Docker Compose

Возможно вы скажете что я сошел с ума, но упрощая одно, Docker Compose делает сложным многое другое. Работа редактора, постоянное переключение внутри/снаружи (опять же история команд), сложности с сервисами (например интеграционные тесты), сложности с рестартом (когда это происходит по внутренним причинам а не снаружи). Все это сопровождает работу в Compose каждый день, а сетап окружения, по факту, делается один раз, в самом начале. Поэтому лучше один раз потратить чуть больше времени, зато потом не париться. Тем более сейчас все не так уж сложно: mise, overmind, caddy + базы и другие штуки прямо в докере, вместе работают как надо. Даже обвязка в виде команд занимает меньше строк чем docker-compose конфигурации:


# Procfile.dev
webserver: make services-webserver-run
vite: make services-frontend-run
app: make services-app-run
jobs: make services-jobs-run


В общем сначала я сделал это на code-basics.com, теперь мы это делаем и на репе Хекслета

Замена старья на Chatgpt

В коде наших проектов, как и во многих других, очень много мелких изолированных задачек, которые не всегда можно решить с помощью готовых библиотек. Например автокомплит для серверного html с поддержкой нужного UI, небольшой markdown редактор для разных textarea (крупные не подходят) с поддержкой bootstrap, все это либо отсутствует и надо пилить самим, либо крайне устарело. Подобные штуки редко поддерживают постоянно.

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

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

Такая же история у меня была с интеграцией @sdk/ai от vercel. Я потратил целый день пытаясь его завести, мне даже пришлось полностью перелопатить его кишки в итоге я не смог его нормально завести для своих задач (смог, но с большим количеством подпорок). В конце я просто плюнул и сгенерил себе react hook, который делает все нужное (коммуникация с сервером, отправка прием данных). Посмотрите какая красота: https://github.com/hexlet-basics/hexlet-basics/blob/main/app/javascript/hooks/useAssistantStream.ts

Я не уверен что решился бы сам его писать. Не потому что не могу, а потому что не хочу тратить на это время. А щас это перестало быть проблемой.

Ссылки: Телеграм | Youtube | VK



tg-me.com/orgprog/314
Create:
Last Update:

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

Удаление Docker Compose

Возможно вы скажете что я сошел с ума, но упрощая одно, Docker Compose делает сложным многое другое. Работа редактора, постоянное переключение внутри/снаружи (опять же история команд), сложности с сервисами (например интеграционные тесты), сложности с рестартом (когда это происходит по внутренним причинам а не снаружи). Все это сопровождает работу в Compose каждый день, а сетап окружения, по факту, делается один раз, в самом начале. Поэтому лучше один раз потратить чуть больше времени, зато потом не париться. Тем более сейчас все не так уж сложно: mise, overmind, caddy + базы и другие штуки прямо в докере, вместе работают как надо. Даже обвязка в виде команд занимает меньше строк чем docker-compose конфигурации:


# Procfile.dev
webserver: make services-webserver-run
vite: make services-frontend-run
app: make services-app-run
jobs: make services-jobs-run


В общем сначала я сделал это на code-basics.com, теперь мы это делаем и на репе Хекслета

Замена старья на Chatgpt

В коде наших проектов, как и во многих других, очень много мелких изолированных задачек, которые не всегда можно решить с помощью готовых библиотек. Например автокомплит для серверного html с поддержкой нужного UI, небольшой markdown редактор для разных textarea (крупные не подходят) с поддержкой bootstrap, все это либо отсутствует и надо пилить самим, либо крайне устарело. Подобные штуки редко поддерживают постоянно.

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

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

Такая же история у меня была с интеграцией @sdk/ai от vercel. Я потратил целый день пытаясь его завести, мне даже пришлось полностью перелопатить его кишки в итоге я не смог его нормально завести для своих задач (смог, но с большим количеством подпорок). В конце я просто плюнул и сгенерил себе react hook, который делает все нужное (коммуникация с сервером, отправка прием данных). Посмотрите какая красота: https://github.com/hexlet-basics/hexlet-basics/blob/main/app/javascript/hooks/useAssistantStream.ts

Я не уверен что решился бы сам его писать. Не потому что не могу, а потому что не хочу тратить на это время. А щас это перестало быть проблемой.

Ссылки: Телеграм | Youtube | VK

BY Организованное программирование | Кирилл Мокевнин


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/orgprog/314

View MORE
Open in Telegram


telegram Telegram | DID YOU KNOW?

Date: |

Why Telegram?

Telegram has no known backdoors and, even though it is come in for criticism for using proprietary encryption methods instead of open-source ones, those have yet to be compromised. While no messaging app can guarantee a 100% impermeable defense against determined attackers, Telegram is vulnerabilities are few and either theoretical or based on spoof files fooling users into actively enabling an attack.

Tata Power whose core business is to generate, transmit and distribute electricity has made no money to investors in the last one decade. That is a big blunder considering it is one of the largest power generation companies in the country. One of the reasons is the company's huge debt levels which stood at ₹43,559 crore at the end of March 2021 compared to the company’s market capitalisation of ₹44,447 crore.

telegram from in


Telegram Организованное программирование | Кирилл Мокевнин
FROM USA