Здравствуйте, Shmj, Вы писали:
S>Пишет что все вовсе не так как вы подумали. Оно не заменит джунов — а наоборот, из джуна сделает сеньора — т.е. заменит сеньоров.
Мой опыт использования ИИ говорит о том, что без хорошего сеньора ИИ — игрушка. Самое неприятное, что она может сделать, это сгенерить что-то визуально рабочее. Это даст автору надежду на разработку и он может осознать масштаб проблемы довольно поздно. И диаграмма джуна с ИИ непонятная, скорость кодинга у джуна чаще всего высокая, это сеньор умудряется иногда стереть кода больше чем добавить при реализации новой фичи.
С архитектурой у ИИ сейчас достаточно проблем. Употребление названий паттернов в классах, даже по назначению, скорее напоминает джуна, прочитавшего GoF. В примере как раз все ошибки джуна перечислены, сеньоры на такие грабли наступают на порядки реже.
Я вижу у бизнеса надежду, что наконец всех заменят, но это вишфул синкинг.
Уверенность в ответе вообще странный показатель. Джуны часто уверены, а с ИИ непонятно как оценить.
Re[2]: Джун наоборот или разоблачение вайб-кодинга...
bnk>Всё ровно наоборот — ИИ хорошо пишет довольно сложные вещи и достает важную информацию,
bnk>которую самостоятельно трудно найти. Но путается как раз таки в элементарных вещах.
bnk>Это джун наоборот.
У меня, как раз, полуается, что на сложных задачах, где немного лень и хотелось напрячь болванчика — он не справлялся, а элементарые вещи сам достаточно бодро пишу.
Разве что накидать по быстрому какой-нибудь известный алгоритм можно запросить, но его надо 300 раз перепроверять.
bnk>Симуляция полета баллистической ракеты с помощью Клода — это прямо огонь
Ха, дочитал сообщение, и сразу-же подтверждение моего второго предложения.
Здравствуйте, Hоmunculus, Вы писали:
H>Все рассматривают программирование, как какую-то фишнифлюшку в самой себе.
Во-первых, не все.
Во-вторых, иногда это именно так. Например, если брать какой-то инфраструктурный код (библиотеки/фреймворки) без которого сейчас практически ничего не делается.
H>Нет такого в жизни! Всегда есть ПРЕДМЕТНАЯ ОБЛАСТЬ.
Можно примеры этих самых предметных областей?
H>Нафиг никому не надо человека, который просто сядет и начнет фигачить тонны кода.
Хорошая аналогия -- "литературные негры". Берут историю какого-то человека, который, возможно, и трех абзацев связного текста самостоятельно написать не сможет, и облекают это в литературную форму.
Re[3]: Джун наоборот или разоблачение вайб-кодинга...
Здравствуйте, so5team, Вы писали:
S>Можно примеры этих самых предметных областей?
Ммм. Мне сложно привести обратный пример, вне какой-то предметной области.
Что, знаешь программистов, работа которых просто лабать гигабайты кода без всякого смысла? Я — нет
Re[4]: Джун наоборот или разоблачение вайб-кодинга...
Здравствуйте, Hоmunculus, Вы писали:
H>Ммм. Мне сложно привести обратный пример, вне какой-то предметной области.
Это странно.
Мне, вот, например, приходилось сталкиваться с людьми, которые собаку съели на специфических предметных областях: расчет прочности конструкций (в частности фундаментов зданий), радиолокация, финансовый консалтинг. Чтобы разговаривать с ними на одном языке в их предметной области нужно иметь не просто высшее профильное образование, а еще и ученую степень в этой же области.
У них у всех была одна общая черта: даже в рамках своей предметной облати они писали код "как курица лапой". А за пределами оной -- вообще ни бум-бум.
H>Что, знаешь программистов, работа которых просто лабать гигабайты кода
Я такого каждый день в зеркале вижу.
H>без всякого смысла?
Вот до маразма доводить не надо. Смысл есть. Только этот смысл определяю не я, а заказчик, который как раз в своей предметной области собаку съел. Но, скажем, mutex-а от spinlock-а отличить не может, а про приоритеты тредов в ОС вообще никогда не слышал.
Re: Джун наоборот или разоблачение вайб-кодинга...
Здравствуйте, Shmj, Вы писали:
S>Пишет что все вовсе не так как вы подумали. Оно не заменит джунов — а наоборот, из джуна сделает сеньора — т.е. заменит сеньоров.
Статья прекрасно иллюстрирует мою давнюю мысль: не надо имень много ума, чтобы архитектурить в стиле ИИ: произносить правильные слова и делать архитектуру "по паттернам".
Понятно, что этих долбодятлов ИИ легко заменит.
Re[7]: Джун наоборот или разоблачение вайб-кодинга...
Здравствуйте, Shmj, Вы писали:
S>В этом и проблема — как раз для такого чела с еще работающим молодым мозгом, натренированным на олимпиадных задачах — будет проще понять, если есть говорилка в виде ИИ, которая имеет широкий взгляд.
Широкий взгляд — это когда ты понимаешь связи между вещами на широком спектре.
Умение сыпать цитатами из википедии, которые ты держишь в голове в изобилии, но толком не понимаешь, про что это вообще, никакого отношения к широте взгляда не имеет.
Re: Джун наоборот или разоблачение вайб-кодинга...
Здравствуйте, Shmj, Вы писали:
S>Интересная сатья: https://habr.com/ru/articles/971226/
S>Толковый чел, препод МФТИ (причем не формальный а именно увлеченный своим делом, что достойно уважения) оценил возможности LLM.
S>Пишет что все вовсе не так как вы подумали. Оно не заменит джунов — а наоборот, из джуна сделает сеньора — т.е. заменит сеньоров.
Прочитал, почему "джун наоборот" не понял. Джуны с профильным образованием вполне пишут рабочий код с использованием ООП паттернов, при этом косяча в предметной области и изобретая велосипеды, то есть то же самое что и получили в эксперименте.
Re[2]: Джун наоборот или разоблачение вайб-кодинга...
Здравствуйте, Hоmunculus, Вы писали:
H>Блин. Все рассматривают программирование, как какую-то фишнифлюшку в самой себе. Нет такого в жизни! Всегда есть ПРЕДМЕТНАЯ ОБЛАСТЬ. Нафиг никому не надо человека, который просто сядет и начнет фигачить тонны кода. Нужно всегда писать код для чего-то. И тут уже и джун синьора не заменит, и ИИ толком ничего сделать не сможет
Чёйто вдруг. Это человеку чтобы стать каким-нибудь HVAC инженером надо четыре года в ВУЗе учиться, а потом ещё несколько лет работать в поле. И всё это время НЕ заниматься изучением OOAD, реляционной алгебры, теории формальных языков, и так далее.
А ИИ-шечка надрочена примерно на всё. Разговаривать с ней о гуманитарщине занятие бессмысленное, а вот примерно в любой предметной области она точно такой же сениор, как и в программировании.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re: Джун наоборот или разоблачение вайб-кодинга...
Здравствуйте, Shmj, Вы писали:
S>Интересная сатья: https://habr.com/ru/articles/971226/
S>Толковый чел, препод МФТИ (причем не формальный а именно увлеченный своим делом, что достойно уважения) оценил возможности LLM.
S>Пишет что все вовсе не так как вы подумали. Оно не заменит джунов — а наоборот, из джуна сделает сеньора — т.е. заменит сеньоров.
Выводы в статье (целиком не читал) несколько иные:
На практике для меня из этого следуют четыре простых вывода.
Во-первых, ИИ нельзя считать автором кода. Он — генератор черновика. Каркас архитектуры, обвязка вокруг библиотек, мёртво скучный boilerplate — да.
Всё, в чём замешана математика, физика, дискретная логика, — проверяется ровно так же, как если бы это писал совершенно неграмотный во всех этих вещах человек.
Во-вторых, нельзя делегировать ИИ «простые» вещи.
Наоборот, именно простые вещи — шаги, индексы, типы, инварианты — придётся проверять особенно тщательно. Архитектуру он нарисует за вас. А вот dt посчитает через int() от деления и уедет на 0.03 секунды в сторону.
В-третьих, джунам по-прежнему надо учить матчасть, а не только «как правильно сформулировать запрос к нейросети». Если человек не понимает, чем явный метод Эйлера отличается от Рунге–Кутты и что такое численная устойчивость, он не увидит проблемы ни в схеме интегрирования, ни в расхождении временных сеток, ни в кусках отключенной аэродинамики. При этом матчасти нужно учить особенно хорошо, начиная с самых базовых вещей, таких как ошибки из-за особенностей машинной арифметики.
В-четвёртых, то, что ИИ иногда способен найти свои же ошибки, не делает его безопасным. Это полезный инструмент для второго взгляда. Но ответственность за то, что ракета в вашей модели не превращается в численный фейерверк, всё равно на вас.
Архитектуру ИИ действительно набросает. Но dt в интеграле потеряет, шаг посчитает странно, угол перепутает, а float сравнит через ==. Проверяйте «простое». Именно там теперь живут самые дорогие баги.
Вроде все по делу. Джун для джуна, по сути. Лично мне он скорее кое-какие идеи может дать или что-то уточнить. Пока так.
Улучшатель, а не заменитель.
Кодом людям нужно помогать!
Re: Джун наоборот или разоблачение вайб-кодинга...
Здравствуйте, Shmj, Вы писали:
S>Толковый чел, препод МФТИ (причем не формальный а именно увлеченный своим делом, что достойно уважения) оценил возможности LLM.
S>Пишет что все вовсе не так как вы подумали.
Окак. А он не продает шапочки для защиты от его телепатии?
S>Оно не заменит джунов — а наоборот, из джуна сделает сеньора — т.е. заменит сеньоров.
Первым делом стоило бы определиться с терминами — кто есть джун, а кто сеньор?
Внезапно, это очень размытые градации и разные люди понимают их по-разному.
Я лично предпочитаю такое деление, где деление проходит по степени уверенности в решении поставленной задачи.
— джун — его коду нельзя доверять. Что бы он ни сделал, другой более опытный разработчик должен внимательно проверить и, с большой вероятностью, внести правки а то и переделать начисто. Вероятность, что джун что-то сделает сразу правильно — классическая "или сделает, или не сделает", чисто лотерея. Самое ужасное, что джуны часто переоценивают свои силы и уверенно делают задачи вне их компетенции — либо потому что стесняются спросить уточнения, либо потому что излишне уверены в себе. Получается — плохо. Часто получаются огромные объемы монструозного кода, который вроде правильный и даже "красивый", только совершенно излишний.
— миддл — есть уверенность, что если он взял типовую задачу — то он ее или нормально сделает, или придет с вопросами и уточнения. Сделанную работу тоже стоит проверить, как и в случае любой работы, но, скорее всего, задача будет сделана вполне нормально. В незнакомых задачах может теряться, но хотя бы осознает свою зону компетенции.
— сеньор — может решать всякие задачи и простые, и сложные, типовые и нетиповые и наиболее вероятно что задачи будут или решены или он четко скажет, что справиться с этим — не может.
Джун легко может уверенно браться решать сеньорские задачи — просто скорее всего на выходе будет ерунда. Он может знать массу умных слов и "правильных подходов", только не иметь достаточно опыта для понимания, стоит ли в данном конкретном случае применять конкретный вот этот "правильный подход" или лучше не стоит.
И вот в таком определении ИИ сейчас — это как раз именно джун. Он может шикарный код налабать, но при этом всегда надо очень внимательно проверять — а решает ли этот прекрасный код именно поставленную задачу, или очень красиво делает что-то другое. И запросто может оказаться именно второе.
И так же как джуну надо очень четко описывать, что ты хочешь получить. И это еще мелочи. А вот в случае, когда он делает код, который сильно не тот, что ожидалось — нужно еще дольше объяснять, чем это плохо, и как надо правильно. Только в случае джуна это время на объяснение идет в его обучение, а в случае ЛЛМ просто теряется.
Re[2]: Джун наоборот или разоблачение вайб-кодинга...
Здравствуйте, Sharov, Вы писали:
S>Архитектуру ИИ действительно набросает. Но dt в интеграле потеряет, шаг посчитает странно, угол перепутает, а float сравнит через ==. Проверяйте «простое». Именно там теперь живут самые дорогие баги.
Вероятнее всего автор не имеет большого опыта в архитектуре крупных приложений и не понимает, что это такое. Мои опыты говорят, что даже структуру данных ИИ делает посредственно, что уж говорить про слои абстракции и дизайн классов — обработчиков этих данных.