LINUX.ORG.RU

Сообщения yvv1

 

Spec-kit - свободный тулкит для разработки, ориентированной на спеки (Spec Driven Development)

Форум — Talks

Те, кому интересен «вайб кодинг», можете про него забыть, потому что вот как на самом деле нужно использовать нейронки для разработки софта: spec-kit. Смысл spec driven development (SDD) в том, что проект начинается с проектирования спек файла. Это кардинально отличается от вайб кодинга, в котором на вход нейронки подаётся произвольный текст, а на выходе получается лапша, в которой чёрт ногу сломит, и она иногда правильно работает, но это не точно. В SDD на вход подаётся команда, аргументами которой может быть произвольный текст, а на выходе получается структурированный документ (спек) в терминах (non)functional requirements, acceptance criteria, edge cases и т.д. Из этого документа потом генерируется машинный код.

Я когда экспериментировал с кодинг асссистентами, то независимо пришёл к похожему процессу, а тут обнаружил, что команда спецов из гитхаба выпустила целый тулкит для SDD разработки. Особенность spec-kit в том, что спек верхнего уровня, так называемый «источник истины», полностью абстрактен от технической имплементации, составляется интерактивно взаимодействуя с нейронкой. Далее составляется план конкретной имплементации с выбором платформы, языков, фреймворков, моделей данных, хостингов и т.д. Всё с помощью команд нейронке. Далее нейронка разбивает план на фазы и задачи, определяет зависимости между ними и какие задачи могут выполняться параллельно (в моём случае, простой проект, 8 фаз и более 100 задач). Далее идёт имплементация каждой задачи.

Интерактивное взаимодействие с нейронкой необходимо только на стадии составления абстрактного спека верхнего уровня, далее всё можно доверить ии. Но я предпочитаю делать всё по шагам, на каждом шаге пристально изучаю результат, запрашиваю пояснения/исправления, делаю коммит, только затем перехожу к следующему шагу. Весь процесс под полным контролем. На выходе получается хорошо разбитый на модули код с каментами, доками и без технических багов. Нейрока проверяет код статическим аналайзером, линтит, прогоняет тесты (которые сама пишет), вносит необходимые правки где надо, имеет доступ к актуальным версиям доков через MCP сервер. Где нужно, я вмешиваюсь в процесс. И конечно, полностью контролирую.

Результат я выставлять на всеобщее обозрение пока не буду, т.к. это никому не нужная свистоперделка на расте, которая нужна только мне и только для эксперимента. Spec-kit использую вместе с kilocode плагином для vscode и kimi k2.5 (сейчас бесплатна), но его можно использовать с разными кодинг ассистентами и моделями, в том числе и свободными/локальными. Когда досконально разберусь, как эта вся кухня работает, запилю настоящий проект.

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

Тем, у кого нет острой аллергии на ИИ, настоятельно рекомендую попробовать запилить проект с помощью spec-kit или аналогов (openspec). Здесь делитесь впечатлениями.

P.S. Уточнение: всё описанное выше, хоть и сводит необходимость ручного ковыряния в машинном коде к минимуму, но не отменяет необходимости знания используемых технологий.

 

yvv1
()

Откуда столько пиара Nix?

Форум — Talks

В послендее время, куда не полезу (youtube, reddit и т.д.), везде лезут рекомендации с обсуждениями nix (shell, os, home manager). Но ведь этой системе уже сто лет в обед. Почему же пиар лезет именно сейчас, что вот я должен всё бросить и быстрее перейти на nix? Это что, типа эффекта питона, когда его популярность резко полезла вверх, потому что его стал использовать гугл? Nix тоже кто-то из гигантов начал пиарить? Может и правда, всё бросить и перейти на nix?

 ,

yvv1
()

Home Assistant (HA) уведомления на телефон

Форум — General

Всем привет! Нужна консультация по следующему вопросу. Дома есть HA сервер с разными датчиками. Нужно получать уведомления от датчиков на телефон когда я вдали от дома, типа «у вас потоп» или «у вас пожар». Фирменный способ в HA это пуш уведомления в companion app, которые идут по умолчанию через google Firebase Cloud Messaging (FCM), который у меня не работает и никогда не работал (forbidden 403). До недавнего времени прекрасно работал телеграм бот, но и он недавно отвалился (connection timeout). Чё теперь делать? Вариантов как я понимаю несколько:

  • вместо телеграма использовать другой мессенджер, discord или у кого ещё есть интеграция с HA;
  • вместо FCM использовать другой сервис пуш уведомлений типа yandex cloud notifications;
  • поднять self hosted ntfy.sh сервер на своём openwrt роутере;
  • email интеграция;
  • держать на телефоне постоянное соединение с HA сервером через wireguard.

Я чего-нибудь упустил? С чатботом общался, спасибо, помогло. Теперь нужны истории узбека, у кого что и как работает, так чтоб меньше трахаться с настройками и один раз настроил и забыл.

 , ,

yvv1
()

А про релиз Julia-1.12 новость будет?

Форум — Talks

А то там статическую компиляцию в компактный бинарник допилили. Ну как компактный, Helloword в 1M, почти как у раста. Это потрясающий прогресс на самом деле (с 800M в более ранних версиях). Кто ещё из динамических языков так умеет?

 ,

yvv1
()

Reticulum - технология, которая поможет оставаться на связи с близкими даже при отключении интернета

Форум — Talks

В догонку недавнему обсуждению meshtastic, вот ещё одна технология на эту тему. Reticulum - стэк для создания независимых сетей поверх различной физической инфраструктуры. Может работать поверх IP инфраструктуры, но не требует её наличия. Не требует наличия DNS, CA и прочих централизованных компонент. Поддерживает шифрование по умолчанию и криптографическую адресацию. По задумке, должен работать в условиях нестабильных соединений, больших задержек и низкой пропускной способности. Текущая реализация включает поддержку ряда физических устройств и набор сетевых утилит на питоне, всё opensource. В разработке имплементация на C/C++, биндинги к другим языкам и много всего интересного (см. дорожную карту). Есть testnet поверх TCP/IP и I2P (см. доки).

Перед тем как пощупать технологию, как всегда, решил проверить, а что про этот Reticulum говорит ЛОР, который обычно знает всё, и с удивлением не обнаружил поиском ни одного упоминания. Вот, теперь есть одно упоминание.

 , ,

yvv1
()

Гудбай emacs, или пользователь с долгим стажем решил осилить vscode

Форум — Development

Использовал emacs в основном для численного моделирования на fortran/python/latex на удалённом кластере. Всё под линуксом естественно. Emacs в этой области рулит и педалит. И тут вдруг взбрелось, а не осилить ли чего-нибудь новенькое, например сделать фронтенд к своей утилитке встроенный прямо в IDE. Это вроде должно быть модно и удобно.

И тут вижу я преимущество у vscode, поскольку он использует более современный стэк для конфигов/плагинов (typescript/json), который вряд ли потеряет актуальность в ближайшие лет 10. А насчёт elisp я не уверен, использует ли его кто-то за пределами экосистемы emacs, и долго ли он вообще протянет. Маленькую библиотеку своих плагинов (для себя) хочется делать на чём-то современном и популярном. Да и потом, сейчас чуть ли не любой туториал по программированию первым делом советует устанавливать vscode, так что почему бы и нет?

Короче, установил, на ощупь оказался на удивление привычным для пользователя с обезображенным емаксом сознанием. Все нужные плагины (аналоги привычных emacs мод) нашёл и установил без проблем. Теперь нужно осилить, как самому делать плагины. Из недостатков пока что вижу отсутствие возможности запускать vscode в терминале без графической оболочки, а это всё-таки удобно для удалённого редактирования, но эту проблему вроде как можно обойти с помощью vscode server.

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

 , , , ,

yvv1
()

RSS подписка на новые темы