home.social

#teqfw — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #teqfw, aggregated by home.social.

fetched live
  1. Декларация (не)зависимостей для ESM

    Меня зовут Алекс Гусев и сегодня я расскажу о том, как ChatGPT убедил меня переписать библиотеку @teqfw/di , которую я бережно " выращиваю " с 2019-го года, и почему я всё-таки убедился. Эта JS-библиотека позволяет мне использовать в своих веб-приложениях позднее связывание и даёт возможность писать изоморфный код, который без изменений работает и в браузере, и на бэке. Без транспиляции исходников, без ручной регистрации зависимостей - так, как я привык делать в Java и PHP. Я почти 7 лет вручную выверял каждую строку этой библиотеки, а на прошлой неделе я отдал её на откуп Codex-агенту и вот что он с ней сделал.

    habr.com/ru/articles/1003708/

    #искусственный_интеллект #агенты #codex #llm #teqfw #будущее_здесь

  2. От идей к коду: проверяю теорию внимания на практике

    Всем привет, меня зовут Алекс Гусев. Это третья публикация в линейке ( раз , два ), посвящённой тому, как меняется работа со знанием в условиях его избытка и почему внимание становится ключевым ограничивающим ресурсом. В первых двух текстах я рассматривал персональные картины мира, то, как знание встраивается в опыт, роль внимания в этом процессе и в общих чертах затрагивал тему того, как внимание проявляется через поведение пользователей на современных платформах. Основной фокус тогда был на формулировке идей и их обсуждении. В этой статье я продолжаю ту же линию и перехожу к практическому шагу - к проверке этих идей в виде работающего эксперимента.

    habr.com/ru/articles/995070/

    #искусственный_интеллект #языковые_модели #агентная_разработка #эмбеддинги #векторные_представления #adsm #teqfw #внимание_пользователей #персонализация

  3. LLM-first: парная разработка без вайбкодинга

    Этот пост — мой личный разбор по итогам двух недель разработки простой файловой CMS для одного из моих пет-проектов. Мне нужен был SSR-сайт с мультиязычным контентом — около десятка страниц на двух языках. Всё под Git-контролем, переводы я делал вручную через DeepSeek API и выкладывал на продакшн через GitHub Actions. В какой-то момент стало понятно: отслеживать и переводить все мелкие изменения вручную — неудобно и утомительно. Тогда я решил автоматизировать этот процесс и взял в напарники ИИ. Не для вайбкодинга и генерации «по настроению», а для настоящего парного программирования. Результат — рабочий open-source проект, который можно развернуть, изучить и использовать. Но главное — это опыт. Это была не просто реализация CMS, а переосмысление роли ИИ в разработке. Под катом — мои подходы, наблюдения и выводы.

    habr.com/ru/articles/914324/

    #искусственный_интеллект #вайбкодинг #llmfirst #teqfw #dependency_injection #chatgpt #deepseek #cms

  4. @teqfw/di: Coding JavaScript like a Java boss

    Эта статья для тех, кто, как и я, хочет программировать на JavaScript в Java-стиле. Для тех, кто находит вдохновение в балансе между строгой архитектурной дисциплиной Java и творческой свободой JavaScript. Ранее я уже публиковал " философию " своей платформы TeqFW , а также инструкции для LLM ( раз , два ) по оформлению es-модулей в приложениях, написанных в стиле TeqFW . На этот раз я делюсь инструкцией для LLM по использованию внедрения зависимостей в таких приложениях. Для тех, кто не совсем понимает, что значит " программировать на JavaScript в Java-стиле ", приведу рабочий пример — это Node.js-утилита @flancer64/smtp-logger . Она сохраняет в базу данных все email'ы, которые Postfix отправляет наружу. Мне как раз понадобился такой функционал — и я реализовал его в стиле TeqFW : с явным управлением зависимостями и строгой модульной структурой. Под катом - пример JS-кода в Java-стиле.

    habr.com/ru/articles/901678/

    #teqfw #javascript #es6 #esmodules #dependency_injection #ioc

  5. Типовой ES-модуль в TeqFW или «сборник вредных советов»

    Я ранее описал принципы , которыми руководствуюсь при разработке веб-приложений, а также требования , предъявляемые со стороны платформы TeqFW к JS-коду. В этой публикации я покажу, как выглядит код типового модуля платформы, где не используется статический импорт . Хочу сразу отметить, что кажущаяся сложность материалов обусловлена непривычностью представленных концепций. Наработанный опыт и инерция мышления — сильные вещи! Тем, кто имеет ограниченный опыт в JS-разработке, этот материал будет проще для восприятия, в то время как опытным разработчикам предстоит преодолеть барьер устоявшихся привычек. На мой взгляд, несмотря на то что " TypeScript — это суперсет JavaScript ", самыми сложными концепции платформы станут именно для TS-разработчиков. Ну, вот - я предупредил, дальнейшее чтение - на ваш страх и риск.

    habr.com/ru/articles/893762/

    #teqfw #javascript #esm #late_binding

  6. Почему TeqFW использует только ES-модули?

    Ни у кого не получится показать другому то, что тот не хочет или не может увидеть. Объяснять и показывать нужно только тем, кто а) может понять , б) хочет понять . В этой публикации я демонстрирую пару своих документов для LLM, которые предписывают " силиконовым ", какими правилами им следует руководствоваться при создании кода для моей платформы. " Силиконовым " можно впаривать любую дичь - они всеядные ( могут понять ) и покладистые ( согласны понять ). За это мы их и любим! Кому интересно, что за инструкции - прошу под кат. Кто хочет сразу получить ответ на вопрос в заголовке - могут задать его (и множество других) соответствующему преднастроенному GPT-чату . Кто не хочет ни того, ни другого - в вашей ленте есть ещё куча других, более интересных публикаций.

    habr.com/ru/articles/892942/

    #teqfw #tequila #ненормальное_программирование #почему_бы_и_нет #llm

  7. Разница между ранним и поздним связыванием

    В этой публикации я " на пальцах " попытаюсь объяснить, чем отличается раннее и позднее связывание кода для обычного программиста. Не для компилятора или статического анализатора, а для человека, который пишет JavaScript/TypeScript-код. Ну и немножко попиарюсь в конце.

    habr.com/ru/articles/856578/

    #late_binding #early_binding #inversion_of_control #dependency_injection #teqfw

  8. Телеграм-бот на Node.js/grammY: Диалоги

    В этой статье я продолжаю делиться результатами изучения создания телеграм-ботов в nodejs , начатой в предыдущих публикациях ( раз , два ). На этот раз я покажу, как организовать интерактивные диалоги с пользователями, используя модуль conversations библиотеки grammY. Мы рассмотрим, как настроить библиотеку для работы с диалогами, управлять их завершением, а также реализовать ветвления и циклы. Этот подход станет основой для более сложных проектов, где важно взаимодействие с пользователем.

    habr.com/ru/articles/852330/

    #nodejs #javascript #grammy #telegram_bot #teqfw

  9. Использование ChatGPT для автоматизации генерации кода в JS-проекте

    В своих предыдущих статьях о разработке телеграм-ботов я делился опытом создания базового функционала и работы с командами через аргументы ( раз , два ). На этапе подготовки третьей статьи передо мной встал вопрос генерации однотипного кода для новых команд, что превратилось в рутинную задачу. Чтобы избежать этого и ускорить процесс, я решил задействовать ChatGPT. К моему удивлению, его помощь оказалась значительно весомее, чем я ожидал. Если коротко, то использование ChatGPT для автоматизации генерации кода эффективно при работе с шаблонами. Генерация однотипных фрагментов на основе шаблонов ускоряет процесс разработки и снижает количество рутинных задач. Чем точнее структура и наименования в шаблонах, тем легче модели корректно выполнять замены, Для тех же, кто хочет более детально ознакомиться с процессом взаимодействия человека и ChatGPT при создании JavaScript-проекта - добро пожаловать под кат.

    habr.com/ru/articles/850846/

    #chatgpt #javascript #nodejs #grammy #teqfw #telegram_bot #llm #кодогенерация #regexp

  10. Node.js-бот для Телеграм: CRUD-L через аргументы команд

    Я продолжаю описывать собственное погружение в мир телеграм-ботов, начатое в предыдущей публикации . Тогда я создал простого бота на Node.js с тремя стандартными командами ( /start , /help , /settings ) с использованием библиотеки grammY , который мог работать в режимах long polling и webhook . В этот раз я разработал бота, который манипулирует данными в базе по шаблону CRUD + List (CRUDL) с помощью аргументов команд. Из-за своей простоты, граничащей с примитивностью, это решение не подходит для коммерческих проектов, но может быть полезным в персональных проектах.

    habr.com/ru/articles/850294/

    #telegram #бот #nodejs #javascript #grammy #crud #teqfw

  11. Мой опыт создания телеграм-бота на NodeJS/grammY

    Арест Павла Дурова стал настолько ярким событием, что мне пришлось повнимательнее присмотреться к этому мессенджеру - чем же таким он значимо отличается от остальных социальных сетей. Так в поле моего зрения попали боты. Так-то я больше по веб-приложениям - ну, тех, что в браузере. Но боты тоже оказались ничего так. Так как я предпочитаю использовать JavaScript и на фронте, и на бэке, то среда существования для бота была определена сразу же - nodejs. Осталось определиться с библиотекой - Telegraf или grammY ? Так как у второй в примере использовался кошерный import , а у первой - старомодный require , я выбрал grammY . Под катом - пример телеграм-бота в виде nodejs-приложения с использованием библиотеки grammY , который запускается как в режиме long pooling , так и в режиме webhook , созданный с применением моей любимой технологии - внедрения зависимостей через конструктор (TL;DR).

    habr.com/ru/articles/837610/

    #телеграмбот #tl;dr #много_букв #javascript #модульный_монолит #teqfw

  12. Загрузка es-модулей в браузерные приложения

    Мне тут на днях попеняли, что, мол, я не в курсе, " что из esm до сих пор нельзя собрать бандл без транспиляции ". Ну что я могу сказать... я действительно не в курсе :) На мой взгляд, es-модули придумали как раз для того, чтобы загружать по мере необходимости JS-код непосредственно в браузер, и собирать модули в бандлы - это, ну... как гладить кошку против шерсти. Я понимаю, что традиции / привычки / требования бизнеса / обратная совместимость / корпоративная этика и т.п. говорят о том, что код для браузерных приложений должен поставляться в бандлах и точка! Тем не менее, в некоторых случаях (малые приложения, быстрое прототипирование, распределённая разработка) сборка бандлов является излишней и код в браузер можно и нужно загружать непосредственно в виде es-модулей.

    habr.com/ru/articles/824860/

    #esm #ioc #dependency_injection #teqfw