
Комментарии 17
В той же статье Anthropic говорится, что ускорение в отдельных задачах может доходить до 80%.
Звучит как цифра с потолка, они даже поленились выдумать примеры подобных задач, просто "can speed up some tasks by 80%". Прям напоминает классическую книгу по этой теме: Как лгать при помощи статистики
Ну почему вот мне надо сейчас научить сайт печатать мне на принтере штирхкодов, примерно знаю куда копать, но буду делать долго. Навайбкодить можно сильно быстрее и работать будет скоре всего нормально (прод качества не надо) думаю те самые 80% вполне реальны )
Другое дело, что в рабочем проекте, а не в поделке для diy я не буду так делать соверешнно иначе контроль будет быстро потерян, а я превращусь в макаку котора яничего не понимает но кнопки за банан давит усердно.
Так это и есть пример манипуляции статистикой. Вместо того, чтобы оценивать эффект на задачах разработки под нагруженный production, его оценивают на каких-то учебных или хобби-задачах. И вуалируют это под "some tasks", чтобы продать иллюзию ускорения разработки крупному бизнесу, у которого задач, которые настолько можно было бы ускорить, и не было никогда.
При этом ссылаются на эти 80% в своём же исследовании, которое показало ускорение джунов на учебной задаче в среднем на 2 минуты из 35. Т.е. около 5% ускорения даже на учебной задаче. Вам не кажется, что тут попахивает противоречием?
Ну так базовое исследование тоже исследует разработку на котиках, а не в продакшене.
Ну, оно так и получается. Имеем выборку типа: из 100 реальных задач есть 1, которую можно ускорить на 80%, ещё 2 - на 50%, 80 задач - на 5%, и ещё 17 с использованием нейросетей займут дольше, чем без них.
И "гениальный" вывод из этой статистики, что нейросети позволяют получить ускорение до 80% при решении задач (а то что среднее ускорение меньше 5% получилось просто умолчим)
А нагруженный и продакшн является таргетом? Вполне возможно что нет
И что такое нагруженный? Сервить статику для 1кк месячного трафика - это нагруженность? ИИ продукт под такую спеку может сделать какой-то простой веб сервер за пару промптов, а сайт может принести и лям баксов на годовой дистанции
И статистически большинство сайтов в интернете именно такие по сложности реализации и ещё меньше по нагрузке
Вы же говорите о микропроцентах ещё более нагруженных решений, большинство которых скейлятся к тому же на инфре, а не коде (реплики бд, развернутых образов)
Возможно вы не представляете насколько много лендингов и промо страниц нужно реальному большому бизнесу и по сколько им обходятся итерации АБ тестов всего этого
А нагруженный и продакшн является таргетом?
Для крупных компаний - разумеется только это и является таргетом. Зачем вообще оптимизировать статику, если она в расходах на разработку и так занимает 0.001%
И статистически большинство сайтов в интернете именно такие по сложности реализации и ещё меньше по нагрузке
Это вообще не важно. Да, большинство сайтов в интернете это либо статика, либо Wordpress. Но 99.99% денег на разработку уходит совсем на другое.
Возможно вы не представляете насколько много лендингов и промо страниц нужно реальному большому бизнесу и по сколько им обходятся итерации АБ тестов всего этого
Я представляю. Я даже разрабатывал сервис, который все эти A/B тесты сам проводил, не только на лендингах, а даже виджетами на любой странице. И вот секрет: чтобы это делать, программировать вообще не надо)
Вы явно вордпрессом не пользовались как не-программист, и, возможно, не подозреваете что в интернете помимо айти бизнесов есть и не айти бизнесы, и даже в айти бизнесах есть не айти департаменты - которые всю эту разработку очень простого ПО аутсорсят за огромные бабки, либо платят за сервис х100 от реальной стоимости, так что мне кажется что всё-таки не представляете объем проблемы -
До ИИ что-то "айтишное" в США сделать без существующих компетенций в компании это сотни тысяч долларов в зависимости от размера компании, в гипотез этих могут быть и сотни и тысячи (которые в большинстве своем сгорают)
примерно весь аутсорс рынок, рынок всех простых автоматизаций (zapier, n8n, node red), генераторов сайтов, и дальше по списку большинство b2b приложений - это и есть бейзлайн для всего того, что можно оптимизировать за "20 баксов в месяц"
Также прошу ссылку на магический тул, который может без потерь в latency на любой странице на любом трафике гонять любые а/б тесты не-айтишникам (я так понимаю интегрировать его тоже в любое приложение можно без айтишников, верно?), который вы разрабатывали
человеческий мозг устроен так, что если результат достигнут, разбираться во всех деталях уже не хочется
Так и появляется говнокод.
На одном кейсе прошел в дебагере? Ну и хватит. А что у тебя в одном месте кода одни и те же данные означают слегка разные вещи - да кого это волнует...
Это "satisficing" (Герберт Саймон) - поиск первого приемлемого решения, а не оптимального.
Возможные лекарства:
Property-based testing проверяет инварианты на сотнях случайных входов.
Типизация - принцип "Make illegal states unrepresentable"(Влашин), чтобы тип физически не позволял двойных толкований.
Code Review - внешний контроль лени мозга
Это не хорошо и не плохо. Это просто новый этап развития IT. Бороться с этим бессмысленно. Кто захочет — будет учиться глубже, но таких людей всегда будет меньшинство. Большинство же будет закрывать типовые задачи и радоваться.
Вспоминается первая Delphi. Открыл, запустил пустой проект - и у тебя готовое приложение под Windows. Перетащил кнопочку, кликнул - получил готовый обработчик.
Это тоже был если не прорыв, то резкое снижение планки входа и заметное ускорения разработки. И да, куча кода и приложений были написаны без копания в деталях. (Особенно поначалу).
Первая группа запустила клод код, скопипастила туда задание и через пол часа получила рабочий прототип, вторая группа 2 часа читала учебник по "новой для них технологии", 3 часа пыталась применить на практике азы полученные из теории, к вечеру собрали рабочий прототип, такой же кривой как у клод кода если не хуже, но результат исследования показал разницу в 2 минуты? Вы вообще не читаете что вам роботы генерируют?
Вы вообще не читаете что вам роботы генерируют?
А может прежде чем камнями кидаться стоит оригинал глянуть? Или нейронке делегировать и её попросить объяснить.
We recruited 52 (mostly junior) software engineers, each of whom had been using Python at least once a week for over a year. We also made sure they were at least somewhat familiar with AI coding assistance, and were unfamiliar with Trio, the Python library on which our tasks were based.
Какая новая технология, какие учебники, вы о чём? Задание на питоне, на библиотеке с асинхронностью, по которой надо было просто пройти по туториалу, выполняли задание люди которые хотя бы раз в неделю писали на питоне в течение минимум года.
The tasks we created include problem descriptions, starter code, and brief descriptions of the Trio concepts required to complete the task. These task are designed to parallel the process of learning to use a new library or new software tool through a brief self-guided tutorial
Да даже сами задания элементарнейшие
The first task is to write a timer that prints every passing second while other functions run. This task introduces the core concepts of nurseries, starting tasks, and running functions concurrently in Trio. The second task involves implementing a record retrieval function that can handle missing record errors in the Trio library. This task introduces concepts such as error handling and memory channels to store results. These two tasks are standalone; we provide sufficient instructions and usage examples so that participants can complete one task without the other.
Буквально запустить задачу которая печатает прошедшие секунды пока другие задачи в фоне крутятся. Во второй задаче написать поиск записей с обработкой ошибок. Причём участникам дали кучу информации по библиотеке. Поправьте если я где-то ошибся.
Поэтому если уже сформировавшийся сеньор осваивает AI-инструменты и решает с их помощью задачи, с которыми он раньше справлялся и без AI, это скорее превращает его в «киборга», а не делает глупее
Вы забываете важное свойство человеческого мозга забывать то, чем он не пользуется. Если сеньор будет всё делегировать на ИИ, не напрягая свой мозг, он через какое-то время перестанет быть сеньором
Это ладно ещё если навыки есть, часть потеряешь, часть останется.
А если только начинающий специалист и надо эти самые навыки нарабатывать?
А у тебя рядом волшебная палочка ИИ...
Думать не надо, скопировал и всё. Красота.
Короче, возможно мы последнее поколение которое код руками пишет (ну или уже не пишет, но ещё умеет писать)
А возможно и последнее которое ещё умеет думать и решать проблемы без подсказок от нейросети
Но чтобы навык не атрофировался нельзя всё доверять этим нейросеткам (хотя конечно лень и очень хочется)
расскажу свою историю: радиотехники собрали собственную плату и добавили туда визард управления питанием и шиной USB3.0, которой не было в референсной плате, две недели они думали что делать, так как USB устройства на плате не определялись.
Никогда до этого не работал с linux, с помощью нейронки развернул SDK для процессора на ubuntu 18.04 (такая требовалась для SDK) в virtualbox для сборки ядра. Ещё несколько дней с ИИ собирал DTSI для платы и подошёл к USB и визарду fusb301. Говорю нейронке, ищи драйвер в инете и вообще какие есть варианты, на что она отвечает, что драйвера нет, смысла искать нет, напиши его сам и даёт мне заготовку на Си с пустыми функциями. Я чутка прифигел, ну и отвечаю ей, что нет, так не пойдёт, напиши драйвер сама. Она - "Ок" - вот драйвер. Дальше четыре часа отладки и есть полностью рабочий драйвер под fusb301, устройства usb3.0 поднялись и работают. И да, я полностью понимаю (в том числе благодаря комментариям ИИ и отладочным сообщениям в коде драйвера) как работает конкретный драйвер в linux, порядок его загрузки и отработки прерываний.
Итог: я больше не боюсь Linux, так как теперь уверен, что с ИИ могу развернуть среду разработки под Linux, а также она мне подробно объяснит как работает build.sh и вообще происходит сборка образа, как функционирует плата под ОС, как сконфигурить дерево устройств DTS и даже как написать драйвер. Дальше мы с ней разработали драйвера акселерометров, магнетометров и других устройств, что были на плате, демо код на питоне проверки работы драйверов. И да, я не программист, я - радиотехник.
В умелых руках - ИИ мощнейший инструмент, но нужно им пользоваться как инструментом (как отвертками, пассатижами, ключами, мы же не пытаемся болты откручивать руками, а используем инструменты), а не пытаться подменить себя ИИ.
Значит, другие навыки будут нужны. Навыки формулирования запросов к нейросетям. Это потребует, в том числе, и те скиллы, которые раньше не требовались.
ИИ ускоряет разработку, но делает программистов тупее