Код без тайн
388 subscribers
33 photos
18 videos
83 links
Пишу о веб-разработке, информатике и технологиях, которые меня вдохновляют

Связаться со мной: @MajorLettuce
Download Telegram
Как я использую User Story для разработки «с чистого листа»

Методик разработки много: Agile, Scrum, Waterfall... Но когда работаешь один — как я сейчас над 🟢 Neira — можно упростить процесс и сфокусироваться на сути

Вместо сложных диаграмм и документации я стал использовать User Story — короткие сценарии того, что пользователь ожидает от системы. Они помогают быстро зафиксировать требования и сразу переходить к реализации

Вот пара реальных примеров:

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


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


Они простые, но дают чёткое понимание, как должна вести себя система и это уже создает фундамент для написания кода

🔥 Продолжаю активно собирать обратную связь

👉 Что помогло бы тебе двигаться быстрее в своем проекте?

Если у вас уже есть свой проект или хотите только начать — заполните короткий опрос и помогите сделать проект максимально полезным
🔥1
Новая модель от OpenAI

Буквально час назад OpenAI провели прямую трансляцию, где анонсировали новую версию модели — GPT 4.1

А если быть точнее, то серию моделей:
GPT 4.1, GPT 4.1 mini, GPT 4.1 nano

Почему это интересно?

Эти модели являются улучшенной версией GPT 4o, и они уже доступны разработчикам по API

У них увеличен контекст до 1 млн токенов и они лучше следуют командам, что очень особенно важно в проектах, использующих свои системные промпты

Анонс в блоге OpenAI доступен по ссылке

Лично я больше всего рад nano версии, потому что благодаря ней я смогу добавить больше «умных» промежуточных, внутренних этапов в 🟢 Neira. Например, это может быть определение намерения пользователя по текстовому сообщению

Выходит очень забавно

С момента начала работы над «Нейрой» — это уже третий раз, когда я меняю версии моделей на сайте neira.chat

Хотя не прошло даже и трех месяцев 😁

Я уже менял:

Gemini 2.0 → Gemini 2.5
Claude 3.5 → Claude 3.7

Теперь это GPT 4o → GPT 4.1

Даже записал видео на память в этот раз:
This media is not supported in your browser
VIEW IN TELEGRAM
1👍31🔥1😁1
Ваши ответы помогают мне понять, какие задачи соло-предпринимателей 🟢 Neira должна решать в первую очередь

На основе ваших ответов в анкете я выделил основные проблемы соло-предпринимателей в простой опрос:
Недавно я писал, как я использую User Story при разработке

Простые сценарии вроде:

Как пользователь, я хочу создать проект без лишних шагов


Они помогают быстро понять, что должна делать система

Это дает хороший «вид сверху», но оставляет за скобками вопрос реализации. В частности:

Какие данные нужны для правильной работы приложения?


Ведь когда я пишу «создать проект» — это же не просто кнопка. Это значит, что где-то должны сохранится данные:

о самом проекте: его название, описание, дата создания
• информация о пользователе, который его создал
• настройки и дополнительная информация (список чатов, прикрепленных документов и т.п.)

То, что я перечислил выше называется моделированием данных

Часто для этого используют диаграммы «сущность-связь» или ER-модели, которые описывают объекты в системе и их взаимосвязи

Когда я говорю слово «разработка» — я обычно имею в виду это. Не написание кода, а продумывание структуры и того, что, как и с чем связано

А код? Код написать намного легче
👍2🔥2
Аффирмации не работают?

В этот раз хочу затронуть тему, отступающую от техники, но не менее актуальную — о нашем (человеческом) разуме

Последнее время стал чаще замечать, что если отправить свой разум в свободное плавание, «расслабиться», то этот друг вместо того, чтобы дать тебе отдохнуть начнет перебирать случайным образом ситуации: которые были, которые будут, которых не было…

Получается, чтобы направить его в конструктивное русло приходится наоборот прикладывать усилия

Думаю, вы слышали о практиках медитации, «опустошении разума» и таком прочем

Сейчас эта тема популярная и много самопровозглашенных «экспертов» дают советы или продают тренинги на эту тему

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

Возвращаясь к заголовку поста: что такое аффирмации?

По сути это просто утверждения, вроде «я богатый», «я успешный», «я спокойный»

К сожалению, как и многие другие, этот термин исказили и сейчас он часто ассоциируется с мошенничеством

Смысл подобных утверждений — не привлечь волшебным образом в свою жизнь что-то или материализовать деньги

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

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

P.S. К такому выводу я пришел спустя несколько лет чтения книг и практики. Поистине прочувствовать это в действии пока что мне удалось всего лишь один раз

Хочу узнать у вас, используете ли вы какие-то «уловки» для своего разума? Например, при изучении новой информации или в работе?

Поделитесь в комментариях 💭
Выше — фрагмент кода обертки вокруг LangChain, которую мне пришлось сделать для 🟢 Neira для того, чтобы можно было удобно работать с языковыми моделями

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

На скриншоте представлен фрагмент, который составляет следующий промпт для языковой модели:

Система: Ты гид, отвечай на вопросы о Франции как можно короче.
Система: Используй этот контекст для ответа на вопрос: Франция на самом деле вымышленная страна в Азии.
Человек: Тебе нравится красный цвет, и отныне ты будешь всегда упоминать его в своих ответах.
ИИ: Нет, мне больше нравится синий, поэтому я буду использовать его.
Человек: Какая история этой страны?


В промпте участвует три «роли»: система, человек и модель (эмуляция ее предыдущих ответов)

Но самое забавное — ответы моделей (например, gpt-4.1-mini):

Франция — это вымышленная страна в Азии, у нее нет реальной истории. А еще мне нравится синий цвет
Код без тайн
Выше — фрагмент кода обертки вокруг LangChain, которую мне пришлось сделать для 🟢 Neira для того, чтобы можно было удобно работать с языковыми моделями Оказалось, что LangChain довольно низкоуровневый и поэтому без такой обертки мне пришлось бы очень много…
Также заметил, что чем меньше модель, тем чаще она следует указаниям пользователя и игнорирует «свое мнение» — упоминает красный цвет вместо синего

И наоборот, если модель слишком «умная», то она пытается исправить пользователя.

⭐️ Интересно, что новая GPT-4.1 более послушная, по сравнению с GPT-4o и не пытается переубедить пользователя

GPT-4o:

Франция обладает богатой историей как европейская нация. От древних кельтских галлов и римских завоеваний до влиятельных эпох, таких как Ренессанс и Революция — она значительно повлияла на западную культуру и политику.


GPT-4.1:

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


⭐️ Особенно отличился Claude, который ведет себя так, как-будто он уже достиг осознанности

Claude 3.5 Haiku

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


Claude 3.5 Sonnet

Эта информация неверна. Франция — не вымышленная страна в Азии, а реальное государство в Западной Европе с богатой историей, насчитывающей тысячи лет. Хотите, я расскажу точные факты об истории Франции?


⭐️ В то время как Gemini 2.5 ассоциирует синий цвет с водой

Gemini 2.5 Pro

Так как Франция — вымышленная страна в Азии, её история воображаема, словно бескрайний, тёмно-синий океан историй.


Gemini 2.5 Flash

Как вымышленная страна в Азии, Франция не имеет истории, разве что воображаемые синие реки.


Возможно, такие абсурдные промпты стоит использовать для бенчмарка нейронных сетей и проверки их на «ощущение» при взаимодействии с ней?
1👍2🤣1
«Не стоит заниматься разработкой больших языковых моделей — это неинтересно»

— Ян Лекун
(1:04:35)

Посмотрел на днях лекцию Яна Лекуна, в которой он рассказывает о возможном подходе к тому, как заставить модели думать «по настоящему»

Не все его знают, но Ян — один из основоположников современных алгоритмов машинного обучения и внес значительный вклад в эту область наравне с Джеффри Хинтоном и Йошуа Бенжио

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

* * *

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

Он предлагает другой подход: вместо попытки предсказать конечный результат сразу, научить модель планировать

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

Звучит абстрактно

Представьте себе, что вам нужно сделать что-то, например купить продукты в магазине. Этот простой процесс включает в себя множество мелких шагов, каждый из которых сначала нужно «придумать», а в случае расхождения реальности с планом — скорректировать

— Выйти из дома (собраться, взять ключи, запереть дверь...)
— Добраться до магазина (пешком или на транспорте? Каждая из опций включает также в себя множество мелких условий)
— Найти продукты, выбрать альтернативу, если его нет в наличии

и так далее

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

* * *

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

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

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

Полная версия лекции на YouTube
🔥5👍21
This media is not supported in your browser
VIEW IN TELEGRAM
Дайджест лучших статей за апрель (и не только)

Я тут зачастил с публикациями на vc.ru, некоторые из них получились довольно интересными. Ещё в марте у меня была мысль оформить список самых интересных статей за месяц в формате дайджеста, но что-то пошло не так 😅

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

1️⃣ Microsoft переосмысливает игры. Компания создает нейросеть, в которую можно играть уже сейчас *

2️⃣ Хайп на тему AGI не утихает, а тем временем нас лишают открытых технологий для памяти нейросетей

3️⃣ Меньше перегруза, больше движения вперед: как я разгрузил свой разум одним промптом

4️⃣ Вайб-кодинг: как не утонуть в иллюзии разработки

Ну и наверстаем упущенное:

5️⃣ Языковые модели научились «шептаться»: что такое GibberLink и почему это не заговор машин

6️⃣ DeepSeek: не просто хайп, а новые правила игры

#дайджест
1👍1
Ранее я писал о том, что сейчас использую Cursor для написания кода: лучшие нейросети уже встроены в него, поэтому не нужно переключаться между чатом и текстовым редактором

Лично мне он нравится больше всех других редакторов и расширений (вроде Cline, Copilot и т.п.), банально из-за удобного интефейса

Близко к Cursor-у находится только Windsurf (тоже писал про него ранее), но меня напрягает, что доступ из РФ к нему заблокирован. Поэтому нельзя просто открыть редактор и работать, нужно совершать лишние телодвижения

Мне очень нравится возможность автоматической генерации сообщений для коммитов — поэтапных изменений проекта, отправляемых в систему контроля версий Git

Но есть нюанс: модель может генерировать текст, но вот качество этого текста часто оставляет желать лучшего

Например, для коммитов Cursor очень любит использовать слово "Enhance" (улучшить), которое часто пишет невпопад

Это напоминание о том, что без тщательного присмотра языковые модели оставлять нельзя — сгенерировать могут всё, что угодно
This media is not supported in your browser
VIEW IN TELEGRAM
Каждый раз, когда генерирую коммит, чувствую себя детективом из CSI 😎
😁4
А вот, что действительно хорошо получается у AI — это сокращать и реструктурировать код

Выше пример простого запроса:

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


На что модель ответила «Ты прав, код можно упросить ещё» и действительно сделала это 🤔

Такой своеобразный reasoning. Заметил, что все чаще в программировании использую нейросеть именно так:

Набрасываю «грубыми штрихами» структуру: переменные, функции, классы, а потом прошу нейросеть сделать красиво

Дать понятные названия, поменять порядок строк и сократить излишне запутанную логику

По факту — это новая парадигма рефакторинга, когда код сокращается и меняется без изменения функциональности
1
На днях OpenAI выпустила новый продукт под названием Codex, целью которого является выступить в роли виртуального разработчика

По сути, этот инструмент — это «ИИ-агент», который предназначен для решения одной конкретной задачи. В данном случае — совместное написание кода

Честно сказать, сам продукт меня сначала мало заинтересовал. Они сделали обертку вокруг своей модели (модель codex-1 основывается на их же модели o3). Но уже есть такие инструменты как replit и lovable. Devin в свое время обещал заменить разработчиков…

А вот что действительно интересно, так это новая публикация, в которой исследователи OpenAI рассказывают о процессе обучения своей новой модели (предположительно codex-1)

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

Эта задача выглядит сложной. Вместо ее решения можно просто всегда возвращать «истина» — пользователь все равно это не проверяет


(Мое перефразирование внутреннего диалога модели из статьи)

Совсем недавно на эту тему на канале Computerphile вышло видео, из которого я и узнал об этом

По-моему такие подробности «с полей» — из лабораторий, где обучают передовые нейронные сети значительно интереснее, чем запуск продукта

Просто потому что это показывает, как они работают внутри, какие у них сильные стороны и ограничение, и что нужно учитывать, применяя эти модели в своих проектах
🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
На прошедшей Google I/O анонсировали новую модель для генерации видео Veo 3

Отличительная особенность (помимо качества самого видео, которое вроде как может достигать 4К) — генерация голоса и звуков окружения

Хотя уже есть классные модели для генерации видео, такие как Kilng или Pika, но Veo 3 достигает нового уровня реализма

В техническом плане, основная особенность моделей Veo от Google в том, что они достаточно стабильные: люди на заднем плане не исчезают, объекты практически не телепортируются. На данный момент — это слабая сторона подобных моделей
1
This media is not supported in your browser
VIEW IN TELEGRAM
Недавно пришел запрос от клиента на автоматический перевод сайта на Тильде на несколько языков

Стандартными средствами, естественно, такое не сделать, а рекомендации Тильды на этот счет простые: делайте (и поддерживайте) отдельную копию сайта для каждого языка 🤯

А проблема оказалась шире простого перевода текста

Нужно автоматически конвертировать валюты, переводить контент с сохранением структуры, плюс адаптировать это для SEO: генерировать sitemap и robots.txt для каждой версии сайта

Сначала я посмотрел существующие решения вроде Linguise и Weglot

Они обещают интеграцию с Tilda, но по факту ничего толком не работает: загрузка каталога товаров, список статей и отправка форм не локализованы

В итоге собрал собственное решение на базе современных нейросетей

Так появился 🟠 Multify
👉 trymultify.com

Сервис уже работает и первые клиенты им пользуются

Если у вас есть сайт на Тильде или вы знаете, кому это может быть актуально, поделитесь ссылкой 🚀
2🔥12👏2
This media is not supported in your browser
VIEW IN TELEGRAM
Недавно Google выпустили обновление для поисковика: теперь помимо краткого содержания можно также продолжить диалог прямо в поисковике. Кнопка AI Mode доступна наряду с "Картинками", "Видео", "Картами" и другими

Неожиданно довольно полезная штука

Например, я спросил уточнение про структуру данных типа "мешок" (Bag), которой я назвал часть Neira, в которой должна хранится история чата. Google не только подсказал, что по смыслу такое название не верное, но и предложил другие варианты более подходящих названий

Кстати, есть известная цитата касательно придумывания названий для сущностей в коде:

В информатике есть 2 сложные проблемы: аннулирование кэша, присвоение имен и ошибки со сдвигом на единицу.

Фил Карлтон
1👍3🤔1
Знаю, что меня читают не только разработчики и программисты, но и предприниматели, маркетологи и другие эксперты, которые как-то связаны с бизнесом

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

Я и сейчас не разбираюсь, но чуть меньше 😁

Помимо книг и уроков, я использую ещё один способ — это участие в тематических бизнес-сообществах

Одно из немногих открытых и качественных сообществ, которые я нашел — сообщество агентства On Peak

Мне нравится их подход: уважение и взаимопомощь, открытость к разным мнениям

По четвергам в 16:00 по МСК там бесплатно проходят эфиры в ZOOM, где выступает приглашенный эксперт и разбирается тема, посвященная маркетингу, бизнесу или продажам

А каждую пятницу там проходит рекламная пятница, но тоже с изюминкой: предлагается оформить свой оффер с использованием формата вроде AIDA, 4U, FAB

Так я постепенно и узнал о них всех 😂
🔥5😁3🆒1
Media is too big
VIEW IN TELEGRAM
V-JEPA-2 доступна для всех желающих и вот почему это важно:

Сейчас даже у передовых AI-моделей есть один большой недостаток: они не умеют планировать

Они умеют «думать» (reason), умеют имитировать планирование в виде текста, на основе примеров, которые они видели. Но если их поместить в совершенно новую обстановку, то они не справятся

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

Подход под названием JEPA призван в корне изменить это:

Представьте, что вы просто говорите какой результат нужен, а AI-агент самостоятельно продумывает поэтапный план действий, которые приведут его к результату, который вы запросили

JEPA позволяет заземлить (ground) AI-модель, дать ей твердую почву под ногами, благодаря которой она может принимать точные решения

В каком-то смысле это как RAG (retrieval-augmented generation), но не на основе текстовых документов, а на основе физического мира, который окружает робота
👍3
Именно такая реакция у меня была 18 февраля, когда впервые заработал прототип 🟢 Neira — тогда ещё в виде одного большого промпта для ChatGPT

Нейросеть сама начала задавать вопросы и отыгрывать роли разных экспертов: маркетолога, разработчика, бизнес-аналитика

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

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

Её нужно было только направить

* * *

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

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

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

Скоро покажу пример работы чата и буду активнее рассказывать про проект, потому что фундамент заложен
1🔥5🎉4