Женя, расскажи про AI – Telegram
Женя, расскажи про AI
52 subscribers
22 photos
19 links
Связаться: @jackuait

Делюсь своим опытом LLM-assisted разработки и тем, что меня удивляет по ходу погружения в мир AI
Download Telegram
Cursor 2.0

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

Что интересного в обнове?
• В Cursor теперь есть встроенный браузер! Через него можно буквально указывать, в какой части интерфейса нужно сделать правки. Круто! Правда, он какой-то порезанный и не смог справиться с первой же задачей, которую я ему поставил... ну, будем надеяться, что в будущем поправят.
Code Review от Cursor. Ребята выкатили свой ответ CodeRabbit, но получился скорее ответ ревью от GitHub Copilot, потому что для диффа на 1000+ строк он не оставил ни одного комментария. Опять есть ощущение довольно сырой фичи, за которую, само собой, тоже просят плату.
• Новая модель «Composer 1». Пока рано делать выводы, но моделька классная, когда нужно что-то очень простое, очень быстро сделать. По скорости обгоняет даже Grok 4 Fast и стоит примерно столько же, так что для самых элементарных задач сейчас использую её.

После обновления в моём пуле активно используемых моделей произошли подвижки:
1. Что-то очень мелкое и предсказуемое уходит в Composer 1. По ощущениям, работает она раза в 3 быстрее Grok 4 Fast, а это, между прочим, дофига быстро!
2. Большинство задач по-прежнему отдаю Grok 4 Fast (и он с ними прекрасно справляется);
3. Тяжеловесные задачи или просто те, с которыми не справился Grok, отдаю GPT-5 Codex.

Вообще интересно наблюдать за тем, как со временем я всё меньше и меньше пишу код ручками. Я всё ещё высокоуровнево представляю код у себя в голове, но теперь не перевожу его в конкретные команды, а отдаю высокоуровневую задачу дешёвой модельке, что на одной-двух задачах может показаться незначительным, но в долгосрочной перспективе значительно экономит время.
4👍1🔥1
Почти час бился над багом. И так его покрутил, и сяк. Во все возможные LLM его засунул, сам голову сломал что там не так. Потратил $5 на запросы. В конце концов дошло, что просто залагал ESLint и нужно было перезагрузить редактор 🤦‍♂️

Такая пятница 🤷‍♂️
А завтра ещё рабочий день 🫠
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯42😱1
Composer 1 — SOTA для поиска по коду

Последние пару недель я активно использую Composer 1. За это время я дропнул из своего арсенала Grok 4 Fast, так как Composer 1 делает всё тоже самое, но лучше и сильно быстрее.

И Composer 1 просто летает! Ответ генерируется за считанные секунды и за этим так приятно наблюдать после 30-40 минутных ранов GPT-5 (оно всё ещё того стоит, особенно когда GPT-5 думает минут 20 и потом исправляет всего одну строчку в коде, которая ломало абсолютно всё).

И вот что интересное я заметил для себя: Composer 1 в задаче поиска кода обгоняет вообще всё, что представлено на рынке. Для одного из проектов (о котором расскажу в одном из следующих постов) мне нужно было написать много, много, оооочень много тестов (более 2 тысяч тест кейсов). Но вот проблема: я не знаю какие файлы не протестированы, какие протестированы но не полностью, для каких нужны юнит-тесты, а для каких не обойтись без E2E.

И так как я активно пользуюсь Composer 1 она и стала моим поисковым движком. Я буквально спрашивал её: «а вот этот файл протестирован? а вот этот? а вон тот?!». И каждый божий раз она мне за секунды выдавала максимально точную информацию по каждому из файлов. Ни одного ложного срабатывания или галлюцинации. Это ощущалось как если бы тулы, которые проверяют покрытие кода тестами были бы реально полезными.

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

Но с Composer 1 есть другая проблема: она плоха примерно во всём остальном. Я её использую только для мелких, предсказуемых задач по типу исправления небольших ошибок линта или тайпскрипта, и как сказал выше — поиска по коду.

Поэтому, когда передо мной встала задача глобального поиска с аналитикой по всем файлам я всё-таки решил обратиться к GPT-5.1 Codex... И она успешно провалила задачу: переусложнила поиск (я запускал его дважды) и придумала кучу несуществующих фактов о покрытии кода тестами.

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

В общем, я в глобальном шоке от того, насколько Composer 1 рвёт всех остальных в поиске. Безумно интересно узнать как ребята из Cursor добились этого.
🔥41👏1
Gemini 3 Pro уже на этой неделе!!1!!

...говорят уже несколько месяцев. Но судя по тому как то тут, то там люди последние полторы недели «случайно» получают доступ к превью Gemini 3 Pro, который затем обрубают через пару часов, то чувствую, что модель действительно скоро выйдет.

Цифры на скриншоте, конечно, поражают воображение, но как показывает практика они ничего не значат. Согласно некоторым метрикам Claude 4.5 Sonnet и Kimi K2 обгоняют GPT-5 в задаче написания кода, что настолько же близко к правде как то, что до луны можно добраться пешком.

В любом случае очень жду этот релиз, хотя бы чтобы проверить насколько Google близки к OpenAI. Правда, судя по тем же циферкам со скриншота модель дешевой не будет...
6🔥2👍1
Пока пишу полноценный обзор на Gemini 3 Pro (там всё оказалось сложнее, чем хотелось бы) столкнулся с двумя вещами:
Gemini 3 Pro просто отвратительно работает в Cursor/Windsurf, а в Copilot мне пока не раскатили доступ;
Google Antigravity очень сложно воспользоваться на территории РФ — нужно подтвердить, что ты живёшь не в России, Беларуси, Китае и так далее.

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

В общем, заходим сюда, покупаем аккаунт, логинимся с европейским/американским VPN, сразу меняем данные аккаунта и уже с этими данными логинимся в Antigravity. Вуаля, у вас есть доступ!

Для тех, кто находится на разрешенных территориях, но в Antigravity всё равно не пускает — можно просто сменить регион аккаунта здесь

По первым ощущениям Gemini 3 Pro в Antigravity работает стабильнее, но есть ощущение, что сервера Google всё равно не выдерживают такой нагрузки и запросы каждые пару минут стабильно падают с ошибкой и приходится промптить модель, чтобы она продолжала работать
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍1🔥1
Буквально только что у меня закончились лимиты на Gemini 3 Pro в Antigravity... во время выполнения первого промпта 😂

Это всё ещё те самые Google, которые обещали щедрые лимиты внутри их IDE?

Видимо AI-революция с нами пока не в одной комнате
Please open Telegram to view this post
VIEW IN TELEGRAM
😁3🤯1👀1
Gemini 3 Pro наконец пофиксили!

Она стабильно работает в Cursor, Windsurf и Antigravity (возможно ещё в Copilot, но мне пока ещё не раскатили доступ): запросы почти не падают из-за нагрузки на сервера Google, также стало меньше внутренних ошибок, они ещё присутствуют, но уже юзабельно.

Если не хотите натыкаться на ошибки, то лучше подождать ещё недельку, а всем остальным советую заценить уже сейчас)
🔥21👍1
Также потестил Nano Banana Pro для генерации графики для моего доклада и это тоже просто нечто!

Что уже понял:
— Модель очень чётко следует твоим инструкциям (возможно даже слишком чётко, поэтому порой приходится говорить, чтобы модель проявила немного воображения);
— Сильно улучшилась генерация текста. Пока не заметил ни одного артефакта, даже если просишь Nano Banana переделать изображение, где много различного текста;
— Изображения на выходе совсем не выглядят сгенерированными;
— Модель работает не моментально, но в разы быстрее какой-нибудь генерации в ChatGPT;

Модель уже сейчас доступна как на сайте Google Gemini, так и в Google AI Studio (там требуют API ключ).

В комментариях накидаю что ещё получилось (всё в одном стиле, так как готовлю графиук для доклада).
2🔥2👍1
Эволюция запуска E2E-тестов в нашем проекте

Пора признаться: в нашем проекте есть проблема — мы не успеваем писать E2E-тесты... так как мы не успеваем писать E2E-тесты, за нас их пишут LLM, и они справляются лучше человека!

Также у нас в проекте используется Editor.js, и если вы знаете, то знаете: тестировать Editor.js — боль. Большинство элементов просто не имеют селекторов, их приходится находить по CSS классам, а при запуске в Playwright эти самые элементы ведут самым непредсказуемым образом, отлично от того, как они ведут себя в браузере: могут не появиться, либо появиться с большой задержкой, либо появиться, но Playwright почему-то не будет в упор видеть их и подобных проблем огромное количество. Благо можно дать задачу LLM по-умнее и она за тебя сделает всю грязную работу: потыкает, найдёт почему не работает и исправит (само собой обычных возможностей LLM будет недостаточно, нужно подключать Playwright MCP, чтобы моделька творила свои непотребства в браузере самостоятельно — если нужно раскрыть эту тему подробнее, дайте знать).

Но до выхода Gemini 3 Pro LLM не могли решить одну нашу проблему: корректно написать локальный запуск E2E-тестов с поднятием всех необходимых зависимостей. Да, чего уж греха таить, мы и сами не могли справиться с этой задачей из-за сложности системы и ограниченного количества времени. Теоретически, если бы мы потратили целый спринт на эту задачу, то мы бы с ней разобрались, но в ситуации, где бизнес ожидает от вас продукт ещё вчера эта, ситуация только и остаётся теоретической.

Как мы писали запуск E2E-тестов в хронологическом порядке:
Разработчик и тестировщик (февраль 2025): научились запускать тесты, но только в CI/CD, а данные для запуска тестов подтягивалсь с прода т.е. отследить баг, который возник при разработке можно было только ретроспективно, из-за чего тесты во многом теряли свой смысл;
Claude Sonnet 4 (июнь 2025): LLM дала нам несколько подсказок (но не решение), которое помогло самим реализовать подтягивание данных не с прода, а с конкретного рана в CI/CD. Тесты стали полезнее, но до сих пор оставалась фрустрация в связи с тем, что для написания тестов приходилось постоянно пушить коммиты в ветку;
GPT-5 (8 августа 2025): она позволила создать нам отдельный скрипт, который в свою очередь позволил запускать тесты локально. Да, работало оно криво-косо, руками ничего не поправить, так как в файле было спагетти, но локальный запуск тестов позволил нам сильно увеличить количество покрытых сценариев, а также избавить от фрустрирующих пушей в ветки для запуска тестов;
Gemini 3 Pro (ноябрь 2025): к этому моменту в целом всё уже стабильно работало. Было всего пару претензий: невозможно что-то исправить в скрипте для запуска, так как 100% что-то поломаешь, сам запуск был долгим, а также тесты запускались только в UI-оболочке т.е. LLM не могли нормально их гонять из терминала. Со всем этим можно было жить и мы так бы и жили, но Gemini 3 Pro перевернула игру и всего за один промпт решила все три проблемы. Запуск стал мгновенным, от костыльного скрипта не осталось и следа, а сама конфигурация расползлась по нужным файлам, где изначально и должна была жить.

Мне очень нравится вся эта ситуация, так как она наглядно показывает как то, насколько модели продвинулись за столь короткий промежуток времени, так и то, где LLM показывают себя лучше всего: на стыке, где человек знает, что ему нужно и как это сделать, но при этом задача всё равно никогда не была бы закрыта из-за внешних факторов.
🔥21👍1
Знакомьтесь, Blok!

Blok — это блочный, визуальный open-source редактор типа Notion.

В основу Blok лёг Editor.js — прекрасный визуальный редактор, который в своём развитии остановился где-то в 2018-м году, где было приемлемо иметь средненький UX, плохую документацию и решение не поддерживающее современные фреймворки.

Blok призван решить все эти проблемы и стать тем самым визуальным редактором, который вы искали.

Уже сейчас в Blok, в отличие от Editor.js, исправлены многие баги и проблемы безопасности, повышена стабильность и тестируемость редактора, а также появилась возможность перетаскивать блоки с помощью drag&drop!

В ближайших обновлениях Blok станет React-first для максимально удобной интеграции с вашими приложениями.

Blok доступен бесплатно прямо сейчас!
3🔥3👍2
Забавно, что ещё до всех анонсов репозиторию поставил звёздочку один из core-мэйнтейнеров Summernote — редактора, из-за которого и появился Blok.

Ещё до того, как я попал в Додо, ребята затащили в Базу знаний Summernote, и он настолько не подходил для создания сложных статей для Базы знаний, что первое же, что мы сделали при планировании обновления Базы знаний, — начали искать новую основу для редактора.

Чудеса:)
4😁1🌚1
Да, чо вообще происходит...

Почему Anthropic вдруг выпустили топовую модель и сделали её в 5 раз дешевле, чем их предыдущий Opus... я ещё даже не успел дописать статью про Gemini 3 Pro... АААААА

Чувствую себя буквально как на картинке. Но, да, идите попробуйте Claude 4.5 Opus. Она в моих тестах порвала как GPT-5.1 Codex Max, так и Gemini 3 Pro. А я пока пойду глубже разбираться с новой моделькой.

Я уже даже не знаю, что тут ещё сказать:)
Кажется, что где-то в Калифорнии разбился грузовик с классными большими языковыми моделями)
2😁2😱1
The State of AI в разработке (модели)

С учётом того, как быстро всё движется последнюю неделю, кажется, что нужно сделать какой-то чекпоинт, чтобы уложить всё немного в голове. В списке чем выше цифра у модели, тем она умнее/круче.

1️⃣ GPT-5.1 Codex ($1.25/$10)

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

2️⃣ Gemini 3 Pro ($2/$12)

Прекрасная модель, вероятно, умнее GPT-5.1 Codex Max и Claude Opus 4.5, но какая же она нестабильная... Ни с одной моделью мне не приходилось писать «Continue» по несколько раз за один запрос (особенно больно с этим в Windsurf, но о нём чуть позже). Также модель ужасно быстро тупеет с ростом контекстного окна. Да, в задачах «сгенерируй картинку» или «напиши компонент» она показывает себя, вероятно, лучше любой другой модели прямо сейчас, но в реальных бизнесовых задачах, где запрос выполняется 15+ минут, она быстро начинает теряться.

3️⃣ GPT-5.1 Codex Max ($1.25/$10)

Те задачи, с которыми не мог справиться Gemini 3 Pro, я отдавал GPT-5.1 Codex Max Extra High (господи, OpenAI, какого хера) и со всеми, кроме одной задачи, она справилась. В целом, отличная модель, к которой почти нет претензий, кроме того, что она медленная (хотя она стала быстрее GPT-5.1 Codex за счёт уменьшения количества генерируемых токенов), а также она иногда зарывается в размышления и просто тратит всё контекстное окно на размышления, не выдавая никакого ответа.

4️⃣ Claude Opus 4.5 ($5/$25)

Ту самую задачу, которую не смогла решить GPT-5.1 Codex Max XHigh (надеюсь, мне больше не придётся писать это название), я сегодня отдал Claude Opus 4.5, и она с ней на удивление быстро разобралась! Вообще, Anthropic — короли тул-колов, и с этой моделью они подтвердили это звание и даже превзошли сами себя. Теперь, если у модели не получается сделать тул-кол, она не валится с ошибкой (привет, Gemini 3 Pro), а выполняет ту же операцию, используя возможности LLM. Просто и гениально!

Поэтому прямо сейчас это самая стабильная модель (она стабильна даже в Windsurf, а это о многом, очень о многом говорит). Не буду скрывать: я сильно удивлён тому, что Anthropic выпустили такую умную и, относительно их ценообразования, дешёвую модель. Думаю, что по крайней мере до конца года Claude Opus 4.5 будет лучшей моделью для агентного кодинга, и можно будет немного поработать вместо того, чтобы тестировать новые модели 🙈

🏆 GPT-5.1 Pro ($15/$120)

Фактически GPT-5.1 Pro не в этой гонке, так как она крайне дорогая и доступна только на сайте ChatGPT, но она вышла на прошлой неделе, так что не упомянуть её не могу.

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

Продолжим во второй части, где я расскажу про текущее состояние агентных IDE.
🔥5👏41
Claude Opus 4.5 — лучшая модель для написания кода

Но при этом не самая умная... давайте разбираться как так произошло и почему более умная модель от Google хуже пишет код.

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

Может показаться, в текущей ситуации с моделями всё сложно, но всё до банальности просто: Claude Opus 4.5 просто невероятно хороша в тул-колах, а это самое важное в задаче написания кода (во всяком случае на данный момент).

Вообще, если всё и дальше так пойдёт, то именно Anthropic возглавит AI гонку в ближайшие несколько лет за счёт того, что их модели самые стабильные, а также за счёт их достижений в тул-коле и компьютер-юзе. Уже совсем скоро эти достижения позволят давать задачу не чатику где-то в браузере, самому браузеру или IDE, а сразу операционной системе, которая сама установит весь нужный софт, откроет все нужные программы и не поможет решить задачу вам, а решит её сама.

Anthropic также выпустили большую статью про advanced tool use в Opus 4.5, которая подробнее раскрывает эту тему (если лень читать статью, то можно посмотреть короткий видосик, он наглядно показывает преимущества программного тул-кола).

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

Моя ставка на 2026 год: всем взорвёт мозг модель от Anthropic, которая будет ловко обращаться с компьютером и будет выполнять задачи, которые мы даже не надеялись автоматизировать в ближайшее время.
👍2🔥21
Теперь, когда меня будут спрашивать про то, стоит ли того «вайб-кодинг» я буду показывать им эту картинку.

Месяц работы, 150к строк кода, $2000, 3300+ тестов и полностью переписанный EditorJS, который потихоньку превращается в полноценный open-source клон Notion со всеми его маленькими деталями, которые делают Ноушен Ноушеном.

Очень рад, что события сложились так, что я начал создавать Blok т.к. я жёстко угараю как по редакторам, так и по крутому UX и понимаю как сделать реально крутой и удобный редактор, а в мире вайб-кодинга видение — это основное, что тебе нужно, чтобы воплотить свою идею в жизнь.

P.S.
По факту на весь проект ушло ~$300, оставшиеся $1700 набежали с халявных и полу-халявных подписок.
🔥51👍1
А вам вообще интересно было бы послушать про создание Notion-like редактора?

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

Взять в пример хотя бы то, что вы видите на картинке слева: специально, исключительно для значков маркированных списков в Notion задаётся шрифт Arial, который позволяет рендерить маркеры списков красиво и предсказуемо, вне зависимости от шрифта вашей операционной системы. Иначе маркеры списков рендерились бы как на картинке справа, т.к. оказывается, что в системном шрифте Mac OS нет символа квадрата, из-за чего Chromium рендерит вместо него эмодзи квадрата, лол.

Также на днях мой коллега Дима рассказал мне, что каждая страничка в Notion — это полноценная база данных на SQLite... Ват?! Но, да, это факт, и благодаря такому подходу у Notion получается быть таким гибким.

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

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

Кстати, если номер элемента в списке будет больше границы 64-битного числа, то обычная запись просто превратится в экспоненциальную, а в остальном для списков правда можно использовать любое число (в Blok, кстати, тоже). Остальные ухищрения, на которые пришлось пойти, чтобы создать, казалось бы, банальные списки, можно посмотреть тут (осторожно, 9к строк кода).

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

Из-за всех описанных выше, да и ещё кучи мелких моментов, ни один редактор не может даже близко подойти к уровню Notion. Те же EditorJS и TipTap на первый взгляд выглядят как Notion, но стоит их немного толкнуть, как они тут же разваливаются. Ближе всего к Ноушену удалось подобраться Buildin... и это многое говорит о состоянии всех остальных редакторов на рынке.

Именно поэтому Blok — особенный. В хорошем смысле. Я не обещаю, что у меня получится воспроизвести всю красоту Notion, но уже сейчас могу сказать, что Blok на несколько голов выше всех остальных Notion-like редакторов на рынке, и это при том, что у меня за плечами всего месяц соло-вайбкодинга, и останавливаться на достигнутом я, конечно, не собираюсь.

В общем, как вы могли понять, у меня собралось много интересных подробностей, которыми я хотел бы с вами поделиться, так что, если вам интересен такой формат, то с вас 🐳 под постом.
Please open Telegram to view this post
VIEW IN TELEGRAM
🐳43👍2🔥1
А теперь запомни: ты теперь Иван, ты азиат, ты создал Ноушен, а кругом подражатели.
1🔥1😁1
Чем глубже я погружаюсь в то, как устроен Notion, тем больше мне кажется, что его создал безумный гений.

Есть такая игра Prince of Persia, 1989 года выпуска. Её создал всего один человек, и это технический шедевр, а также игра, которой не должно существовать, во всяком случае не в том виде, в котором она существует.

Джордан Мекнер в свои 25 лет сотворил что-то невозможное и создал сложную игру, которая даже спустя 36 лет с момента создания выглядит неплохо, при том что для её запуска требовались всего 4 килобайта оперативной памяти и 1 мегагерцовый процессор Apple II. Полную историю создания смотрите здесь.

Как связаны Prince of Persia (1989) и Notion (2016)? Оба не должны существовать.

В последний месяц я часто сталкиваюсь с тем, что многие не понимают, насколько Notion — сложный продукт. Notion настолько сложен, что его просто никто не может повторить.

В нашем мире ужасной конкуренции, где есть:
- Десяток «ТикТоков»: Youtube Shorts, Instagram Reels, Snapchat Spotlight, Likee, VK Клипы и другие.
- Миллион дейтингов: Tinder, Badoo, Bumble, Hinge, Pure, Grindr, Mamba, LovePlanet — на любой вкус и цвет.
- Бесконечное количество разных моделей: ChatGPT, Claude, Gemini, Llama, Grok, DeepSeek, Qwen...

При этом Notion будто в отдельной лиге. Кто его конкуренты?
Coda? Слишком урезанная и багованная.
Obsidian? Борется за другой рынок.
Buildin? Поделка на коленке в попытке захватить часть рынка, которая освободилась благодаря санкциям.

У Notion нет конкурентов.

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

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

Это видно даже в таких мелочах, как фейковое выделение.

В чём суть? Редактирование в Notion — это костыль. Когда создатели HTML-спеки давали возможность редактировать стандартные HTML-блоки, то никто не мог предположить, что через 20 лет на основе этой идеи появится Notion, в связи с чем даже самые базовые взаимодействия приходится создавать самостоятельно.

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

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

Как я узнал обо всём этом? Я реализовал почти идентичную логику в Blok. Если сравнивать браузерное выделение и выделение в Blok под лупой, можно увидеть небольшия отличия. А в Notion — нет. Сколько я ни пытался, я не увидел разницы.

Вот именно из-за такого подхода у нас никогда не будет второго Notion. Разве что какой-то другой безумец не доведёт до идеала один свой open-source проект.
🔥52👍1
Как же круто жить в мире, где есть AI

Только что понадобилось сжать 20 гиговый видос, чтобы отправить его в телеге, но открывать Final Cut Pro для такой простой задачи неохота, а закидывать в онлайн-сервисы стрёмно, так ещё и нужно найти тот, в который можно залить 20 гигов видео, да и вообще дождаться пока оно зальётся.

В общем, вместо всего этого скопировал название видео, открыл Claude Code, сказал ему: «найди вот это видео и компресни его, чтобы места так много не занимало». И всё! Через десять минут мои 20 гигов чудесным образом превратились в 300 метров.

Да, я понимаю, что мог также обратиться к доке FFmpeg и ввести простейшую команду для конвертации, но серьезно, я им так редко пользуюсь, что каждый раз смотрю на него как на новые ворота, а тут 30 секунд моего внимания, 10 минут ожидания и видос уже сконвертирован.
🔥3👍21
Как же модели хороши в адаптации текста интерфейсов!

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

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

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

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

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

Ну и, следуя этой же логике, нужно начинать переводить с языков, которые модель знает лучше всего, и идти к тем, которые она знает хуже. А узнать это можно, напрямую задав вопрос модели:
Which natural languages do you, as a model, know best? List them in order.


Для анализа самих переводов использовал вот этот промпт с Claude Opus 4.5 в Plan Mode (но GPT-5.2 не хуже, если не лучше справится с такой задачей):
Use UX-friendly, natural [LANGUAGE] translations suitable for real product interfaces.
Prioritize clarity, brevity, and common UI patterns over literal translation.
Avoid slang, transliteration, and technical jargon.
Adapt wording to context (buttons, tooltips, hints, mobile vs desktop).
Prefer action-oriented, user-centric phrasing.


На картинке пара примеров анализа переводов промптом, где он нашёл точки для улучшения и объяснил, почему те переводы, которые он предлагает подходят лучше.
👍2🔥21