Артур Думчев
Статистика‣ Техлид бекенда SberDevices ‣ Рекордсмен России в запоминании числа Пи ‣ Автор книги "Помнить все" ‣ Кофаундер souz.app Для связи @dumch
- Последний пост
- 13:54
- Последнее чтение
- 15:20
- Постов за неделю
- 4
- Всего постов
- 23
- Тип
- открытый
- Язык
- русский
- Категория
- Книги
- В каталоге с
- 12 авг.
- 1/24сутки в ленте
- 532
- 1/48двое суток
- 609
- 1/72трое суток
- 657
Оценка по просмотрам недавних постов: пост набирает почти всё за первые сутки.
Посты
Наконец дошли руки поразбираться с https://codespeak.dev/ Удивило, что Бреслав взялся за проект с настолько очевидно слабой сутью. Вкратце, CodeSpeak о том, чтобы писать спеки, которые, как ожидается, будут в 5-10 раз короче, чем код. А их “фреймворк” позаботится, чтобы ”скомпилировать” из этого исходный код, да еще и тестами покроет. Фактически это просто перенос сложности из кода в спеку. Если спека на естественном языке учитывает всё, она будет даже больше, чем код, потому что естественный язык двусмысленный в отличие от ЯП. Если спека короче, остаётся пространство для решений LLM. Эти решения будут неявны и неоднозначны, т.е. повторный запуск может сгенерировать семантически не эквивалентный код. Давайте возьмём простой пример с использованием piggy backing: @Volatile var a = 1 var b = 2 @ThreadSafe fun change() { b = 3 a = 4 } Чтобы пост не превратился в книгу, приведу в комментариях спеку, явно описывающую этот код. Пример скорее шуточный, но шутка хорошо раскрывает идею. Идею того, что точнее и короче именно кодом выражать идеи для компьютера.
Моменты истинного величия маркетологов, которые даже не нужно фальсифицировать на скриншотах
Сейчас легко решить задачу, написав много-много кода с неадекватным подбором абстракций, как в примерах из предыдущего поста. Но кодовая база разрастается и поддерживать ее становится дорого и по времени, и по когнитивной нагрузке, и — как следствие — по токенам. Моя личная гордость за сегодня ☺️: ‣ удаление бесполезных абстракций (+44 -715) ‣ рефакторинг скиллов на бэкенде (+1643 -2275) Над рефакторингом работал гранулярно, шаг за шагом. И даже на ревью от кодекса ничего не нашлось. Что интересно, попытки сделать тот же рефакторинг в несколько промптов, с GPT Sol Ultra, обернулись потерей времени и токенов на неудачные PR. ‣ https://github.com/D00mch/souz/pull/613 (+449 -287) ‣ https://github.com/D00mch/souz/pull/622 (+689 -276) Хотя с одним из ПР-ов предварительно просидел полдня, готовя промпт в режиме планирования. Что не так с этими ПР-ами? И подбор абстракций плохой, и упрощения как такового не получилось. А вот еще один “плохой” пример: реализация публичного контракта для бэкенда (+7210 -2096). Над контрактом поработал сам, а вот реализацию доверил LLM. Понадобился 101 комментарий ревью от самого же кодекса, прежде чем получилось влить ПР. Кстати, Codex иногда ошибается с подсчетом добавленных и удалённых строк, поэтому добавил alias в zshrc, может, кому пригодится: alias lines="git add -N -- . && git diff HEAD --numstat | awk '{a+=\$1; d+=\$2} END {printf \"+%d -%d\\n\", a, d}'" Резюмируя. LLM удешевляет производство кода, но делает дороже его сопровождение. Сложно ответить, когда это действительно выгодно. Но до сих пор имеет смысл работать гранулярно над важными участками кода. Например, над core-функциональностью.
Не могу не поделиться эссе Рича Хикки, автора Clojure. Ниже перевод: Спасибо, ИИ! Мне пришло вот такое письмо: Рич, Ваше создание Clojure ... льстивый трёп, достойный письма третьеклассника “домашнее задание: написать письмо публичной персоне, которую ты…
Мобильные разработчики поймут :) Кстати, если кто не знал, codex может через adb запускать приложения, читать логи, делать скрины и анализировать, что на экране, нажимать на кнопки и т.п. Сейчас раздебажил мне проблему логина в кодекс на андроиде, составил…
http://www.palo-alto.ai Но у них сайт перестал отвечать...
Уволили последнего программиста
видео или голосовое, без подписи
видео или голосовое, без подписи
видео или голосовое, без подписи
С выходом Fable и 5.6 Sol мне почему-то показалось, что эта статья уже устарела, но вот я решил активно повайбкодить, разбираясь с каждым предложенным решением LLM, и смело могу заверить, что если не контролировать выбор абстракций, получается раздутый из пальца пустопорожний код. Прикладываю запечатленные скрины диалогов с LLM по ее предложениям. Буквально всегда создаются бесполезные классы и интерфейсы, которые уже были. Или потому что LLM так легче, или она обучалась на больших кодовых базах, где куча людей пересоздают одни и те же сущности из-за плохой коммуникации, текучки, спешки или чего-то еще. И вот пример ПР на 5к строк кода на задачу, где 1к было бы подозрительно много. Sol 5.6 Ultra зачем-то созадала ручки, которые уже были, но немного иначе назывались. Метафора, что LLM позволяет получить легаси не за несколько лет, а за неделю, по-прежнему актуальна.
видео или голосовое, без подписи
Решил почистить старый мак. Лень было этим заниматься, откладывал 3 года, а теперь попросил кодекс найти весь мусор, оставшийся после удаленных приложений. Итерация за итерацией, удалось избавиться от ~100gb. Из интересного, нашлось несколько десятков гигабайт от удаленного клиента ТГ — огромный красный квадрат на скрине (визуализация сделана тулзой grandperspective). Вспомнил, что в далеком прошлом, еще на винде, качал для подобного CCleaner, и только сейчас задумался, сколько сотен или даже тысяч утилит морально устарели с появлением агентов. В пределе вообще все.
Попался любопытный продукт (youtube), который позволяет удобно располагать предметы на клавиатуре ноутбука — например, портативный монитор или механическую клавиатуру. Но есть нюанс — пластиковые палочки и противоскользящие наклейки обойдутся в ~10к рублей…
видео или голосовое, без подписи
видео или голосовое, без подписи
видео или голосовое, без подписи
видео или голосовое, без подписи
видео или голосовое, без подписи
Попался любопытный продукт (youtube), который позволяет удобно располагать предметы на клавиатуре ноутбука — например, портативный монитор или механическую клавиатуру. Но есть нюанс — пластиковые палочки и противоскользящие наклейки обойдутся в ~10к рублей на алиэкспрессе ‣ https://ali.click/hhmeg1f ‣ https://ali.click/kgmeg1x На амазон выйдет ~2к рублей, но ведь надо еще как-то доставить в Россию. ‣ https://amzn.to/4ofDG5h ‣ https://amzn.to/4ulxTwr Есть еще одна опция: распечатать на 3d принтере. Авито-мастера за такое возьмут 200-300 рублей. Писать: «30 или 100% infill, PETG или Abs». Прикладываю 3d модельки в комментариях. А наклейки можно найти на маркетплейсах по запросу «грипсы для мыши и клавиатуры универсальные». Попробовал ozon1 и ozon2, не скользили только ozon3 (они же на фото).