LINUX.ORG.RU

Линус Торвальдс использует AI при написании хобби-проектов

 hobby, ,


0

3

Линус Торвальдс, создатель Linux и Git, во время этих зимних каникул работал над новым хобби-проектом AudioNoise.

Он признался, что часть кода была написана с помощью «vibe coding» и инструмента Google Antigravity. Это примечательно, учитывая его недавние скептические комментарии о необходимости документации для AI-инструментов.

Линус, использует зимние каникулы для отдыха от ядра Linux и работы над личными техническими хобби. Это помогает ему перезагрузиться, например, в прошлом году он мастерил гитарные педали, что он назвал «Lego для взрослых с паяльником».

AudioNoise — это проект с открытым исходным кодом для создания случайных цифровых аудиоэффектов, связанных с гитарными педалями, сам он называет его «еще одним глупым репозиторием».

Вайб-кодинг — это неформальный ироничный термин, описывает стиль программирования, когда:

  • Разработчик не пишет код с нуля, а полагается на AI-ассистента (вроде GitHub Copilot, Cursor, или, как в данном случае, Google Antigravity).
  • Задача ставится на естественном языке (например, «создай график, который визуализирует аудиосигнал»).
  • AI генерирует код, который разработчик затем может редактировать и принять.


Иначе этот метод можно назвать «парное программирование с ИИ».

В файле README проекта AudioNoise Линус пишет, что он не эксперт в Python. Он признается, что знает об аналоговых фильтрах больше, чем о Python.

Сначала он использовал свой старый подход: «делай по принципу „обезьяна видит — обезьяна делает“». То есть искал готовые примеры кода и адаптировал их. Затем он пошел дальше и перестал быть этим «посредником». Вместо того чтобы самому копировать и переделывать код из Google, он поручил эту работу Google Antigravity — AI-инструменту для генерации кода.

В чем же суть?
Незадолго до этого Линус критиковал коллег-разработчиков ядра Linux за то, что они используют AI-инструменты без должной документации и проверки. Он подчеркивал, что ответственность за код всегда лежит на человеке.

Теперь выясняется, что он сам использует похожие AI-инструменты, но для личного хобби-проекта, а не для критического ядра ОС.
Это иллюстрирует, как AI-инструменты становятся полезны даже самым опытным, но узкоспециализированным разработчикам как Линус для решения задач за пределами их основной экспертизы.

>>> Phoronix

★★★★★

Проверено: dataman ()
Последнее исправление: dataman (всего исправлений: 4)
Ответ на: комментарий от liksys

когда в своем словаре нет какого-то слова

Это вот.

Radjah ★★★★★
()
Ответ на: комментарий от liksys

Так не устраивай клоунаду тогда. Smacker более прав чем ты очевидно а ты настырно пытаешься какую-то ерунду ему приписать.

firkax ★★★★★
()
Ответ на: комментарий от lenin386

Со времён бета-тестеров жду, скоро на пенсию пора будет.

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

Например, я прям сегодня могу сказать точно, что в 2012м народ России был богаче, чем сегодня… Также я в январе 2025г. видел как аспиранты/студенты шли работать программистами за 30-35 т.р. Также я помню времена когда много получали юристы и бухгалтеры - сегодня это обычные специалисты с ничем не примечательным доходом, сравнимым, порой, с доходом слесаря. Также я помню заработки большие у сварщиков паспортистов - где они сегодня (те заработки)? Также я помню времена, когда можно было на 3 месяца на «севера» съездить поработать и купить по приезду квартиру (сегодня такого и близко нет). Короче, фундамент рулит…)))

Sm0ke85
()
Ответ на: комментарий от wandrien

Одно дело генерировать типовые задачи на 1-2 тысячи строк на Питоне и JS для работы с СУБД или вебом, совсем другое - реально сложный код.

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

У нас люди сами составляют алгоритмы и пишут код, а вот ИИ применяется же в процессе, когда нужно побыстрому сделать кусок кода. Какую-то простую, но рутинную функцию и так далее. Т.е. ИИ не подменяет человека полностью, а используется ему как помошник, для убыстрения процесса. Код потом, само собой, правится и вставляется в проект уже человеком.

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

DrRulez ★★★★★
()
Последнее исправление: DrRulez (всего исправлений: 1)
Ответ на: комментарий от lenin386

Про девопс-инженеров тоже так говорили.

Ну, откровенно говоря «девопс», это, по сути, нормальный системный администратор, который соображает что делает :)

Но некоторое время назад произошло разделение. Эникеев стали называть системными администраторами, а системных администраторов - деврпс-ами. Ну чтоб не путать квалификацию, грубо говоря :)

DrRulez ★★★★★
()
Ответ на: комментарий от DrRulez

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

Тоже имеет место, да.

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

wandrien ★★★
()
Ответ на: комментарий от DrRulez

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

lenin386 ★★★★
()
Ответ на: комментарий от Smacker

Я смотрю ты осваиваешь новое амплуа.

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

zabbal ★★★★☆
()

Он практически повторяет за мной. Моя новость была раньше.

jura12 ★★
()
Ответ на: комментарий от mamina_radost

Если кому-то его сказать, то на тебя недоумённо посмотрят, а вот вайб-кодинг (как написано вначале новости) действительно уже говорят.

Посмотрел недоуменно...

Somebody ★★★★
()
Ответ на: комментарий от mamina_radost

машинопись

Не! Давай по новой. Я думаю даже слово письмо не русское, не то что машина.

На:

Большой толковый словарь русского языка:

МАШИ́НОПИСЬ, -и; ж. 1. Печатание на пишущей машинке. Курсы машинописи. 2. Текст, напечатанный на пишущей машинке. Двенадцать страниц машинописи. Читать м. Машинопи́сный, -ая, -ое. М. текст. М-ое бюро. М-ые работы.

https://gramota.ru/poisk?query=%D0%BC%D0%B0%D1%88%D0%B8%D0%BD%D0%BE%D0%BF%D0%...

Somebody ★★★★
()
Ответ на: комментарий от vbr

Да, отличие, конечно, есть. Но 99% индустрии это «генерировать типовые задачи». Радуйся, если останешься в 1%, где ИИ спасует.

Вот не верится в 1%, я как то ИИ предложил сгенерировать код на стмке (конкретной) для реализации модбас, так он нагенерил такой мрак, что «мама не горюй» (он может и рабочий, но это велосипед на велосипеде с диким расходованием ресурсов). Далее я намекнул ИИ про наличие некой встроенной функции, которая может сильно упростить реализацию и сделать ее эффективной по ресурсам, и в результате ИИ вдруг начал расписывать да как круто можно на ней реализовать все задуманное и насколько все сильно лучше будет, а на вопрос «зачем нагородил первоначальный хлам», он начал фантазировать о том, что хотел показать принцип и чему-то кого-то научить, но по-любому он ни в чем не виноват)))) Короче, ИИ не годится для задач, подразумевающих хоть какой-то вменяемый уровень абстракции и претензии к качеству…

Максимум ИИ можно использовать только в задачах смакетировать что-то или идейку проверить… (на моей памяти он даже неоднократно буквально в двух-трех командах баша терялся, когда я его юзал просто как генератор нужной команды для быстрой конфигурации)

Sm0ke85
()
Ответ на: комментарий от Sm0ke85

а вопрос «зачем нагородил первоначальный хлам»

Лол. Ты бы еще у ветра спросил, зачем он дует.

Кто-то еще не знает, что у LLM нет внутреннего потока мыслей?

wandrien ★★★
()
Ответ на: комментарий от wandrien

Кто-то еще не знает, что у LLM нет внутреннего потока мыслей?

Так он начал отвечать и там в такие фантазии зарылся, что и смешно, и грустно стало))) Меня больше всего поразило то, что это чудо ищет проблему во «вне», но не пытается разобраться что у Него пошло не так, короче до громкого именования ИИ - там далеко, это просто языковая модель имитации школьника с функцией поиска и комбинирования информации)))

Sm0ke85
()

Это иллюстрирует, как AI-инструменты становятся полезны даже самым опытным, но узкоспециализированным разработчикам как Линус для решения задач за пределами их основной экспертизы.

или по простому:

навалил на AI скучную тупую работу по накидыванию питоноговна

water_closed
()
Ответ на: комментарий от Sm0ke85

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

Какой вопрос, такой ответ))

ИИ точно так же не имеет доступа к своему внутреннему состоянию, как и человек, наблюдающий за ним. Поэтому мы наблюдаем галлюцинацию.

Если ИИ сначала не написал причины и цели, то потом его спрашивать уже бесполезно. Он не знает, почему он что-то делал, он просто «так чувствует».

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

Меня больше всего поразило то, что это чудо ищет проблему во «вне», но не пытается разобраться что у Него пошло не так

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

GPT-5 при всех своих возможностях аналитика «любит» тоже перекладывать с больной головы на здоровую. Чтобы этого не было, надо жестко ограничивать его стиль.

Попробуй GLM-4.7 еще. У него лучше с «рефлексией». Он обучен размышлять над своими предыдущими шагами и искать них ошибки. Прям по пунктам раскладывает.

Какая модель была, кстати?

wandrien ★★★
()
Последнее исправление: wandrien (всего исправлений: 2)
Ответ на: комментарий от wandrien

Лол. Ты бы еще у ветра спросил, зачем он дует.

Ветер дует, потому, что деревья качаются, а деревья качаются, потому, что за них - пьяные держатся :)

Вот примерно по такой логике ллм на больших задачах и генерирует :)

DrRulez ★★★★★
()
Ответ на: комментарий от Sm0ke85

Gemini больше по части про «понимать живой язык с мемами и игрой смыслов», он хорошо подходит для перевода текстов и объяснения гуманитарных вещей. Если технических вещей - то на уровне «общей идеи». Также он относительно неплохо знает географию.

На коде он хуже себя показывает.

Сколько раз я им давл код на ревью, очень часто GPT находил проблемы, которые Gemini пропускал.

wandrien ★★★
()
Ответ на: комментарий от zabbal

Правильно. Пусть люди решают, как правильно. Ло́жить там или ложи́ть, например. А кремниевую долину пусть называют силиконовой. Ну а что, людям же зашло, а язык живой, нельзя критиковать, только сиди-наблюдай. Не удивительно, что с таким подходом к жизни тебя даже на свободную кассу не взяли, отчего и сформировался давний и устойчивый комплекс неполноценности, который заставляет тебя постоянно пытаться всех убедить, что ты чем-то лучше работников фастфуда.

Smacker ★★★★★
()
Ответ на: комментарий от Smacker

Ло́жить там или ложи́ть

Класть ;) Напр. «класть на мнение обслуги из макдачной про языковые нормы».

ты чем-то лучше работников фастфуда

Ну что ты, у меня никаких претензий к форумным филологам нет - каждый выбирает образование и занятость по душе :-D

zabbal ★★★★☆
()

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

Те кто тут хейтят нейросети - или просто с ними особо не работали или уже просто хейтят по привычке, по инерции, в силу говнистости характера.

Про раст, впрочем, то же самое. Ничего нового.

Я сам буквально недавно пошел этот же этап, когда весьма негадивно отзывался о всех этих «ИИ». Пока сам не пообщался с ними на практике.

LightDiver ★★★★★
()
Ответ на: комментарий от zabbal

Класть ;)

Это с чего ты взял? Народ вот считает иначе, а решать ему — язык-то живой!

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

Ну вот опять! Понимаешь, тут никто кроме тебя в принципе не интересуется вопросом, лучше ты или хуже работников макдональдса. Это ты с упорством, достойным лучшего применения, пытаешься навязчиво всем объяснить при каждом случае, что ты (почему-то) лучше, выше их. Тут уже чем-то фрейдистским повеяло, на манер «зависть к Большой Картошке».

Smacker ★★★★★
()
Ответ на: комментарий от Smacker

пытаешься навязчиво всем объяснить

Где? Процитируй, брехло.

Тут уже чем-то фрейдистским повеяло

Это да - иначе бы у тебя так долго не полыхало на ровном месте :)

zabbal ★★★★☆
()
Ответ на: комментарий от zabbal

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

Smacker ★★★★★
()
Ответ на: комментарий от Smacker

и как всегда был прав

То есть ты опять обтрухался, трепло, и ссылку подтверждающую твоё враньё привести не смог. Впрочем ожидаемо. Иди подносы убери, филолог мамкин.

zabbal ★★★★☆
()
Последнее исправление: zabbal (всего исправлений: 1)
Ответ на: комментарий от wandrien

У меня вот лежит библиотека на 30 тысяч строк многопоточного кода на Си с кучей средств межпоточных синхронизаций и IO. Мне нужно отрефакторить код, распределённый в 4 разных файлах и убедиться, что это нигде не нарушило никакого другого кода.

Как там твой ИИ, справится?

Не являюсь фанатиком использования ИИ везде где только можно, но добавлю немного контекста и раскидаю так сказать на пальцах текущую ситуацию.

С 30К кода на С с первого раза и без ошибок и человек не справится. Человек будет делать эту задачу итеративно, в кучу подходов. Также и с нейронками.

Нормальная, не кастрированная LLM (>=fp16) на 24-30B спокойно справиться с задачей до ~2К кода на Python, PHP или JS и примерно до 1К строк на C/C++.

Для рефакторинга 30К+ строк нужно будет формировать качественный системный промт, а затем итеративно, правильно сформированными промтами делать лоскутный рефакторинг.

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

Именно использование этого знания особенностей конкретной сети и называют vibe-кодингом. Vibe-кодинг это способность передать сети весь контекст условий задачи.

Vibe-кодинг подходит не для всех. Действительно полезный выхлоп от него получают две категории:

  1. Джуны, на примитивных задачах сети показывают отличный результат. Там даже своими словами можно задачу написать сеть поймет.
  2. Синьоры/Лиды - те кто разобрались с тем что называют хайповым термином «промт инженеринг» и имеют такую насмотренность кода что взглянув на выхлоп сети понимают стоит исправить промт и выполнить заново или взять что есть и подправить самому в двух местах. Для таких специалистов Vibe-кодинг стал просто еще одним инструментом используемым в работе при необходимости.

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

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

Из личного опыта, сеть справилась с реализацией GLV метода (Gallant-Lambert-Vanstone) на CUDA С++ для вычислений на GPU. Получились те самые 1К строк. Это реализация с нуля, не рефакторинг. Пример показателен потому что в открытом доступе подобных реализаций данного метода не существует.

Резюмируя, перефразирую Фоменко:

Нейронки — это вам не просто так… Ими надо заниматься!

Obezyan
()
Ответ на: комментарий от zabbal

Иди подносы убери, филолог мамкин.

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

Smacker ★★★★★
()
Ответ на: комментарий от Obezyan

Для рефакторинга 30К+ строк нужно будет формировать качественный системный промт, а затем итеративно, правильно сформированными промтами делать лоскутный рефакторинг.

Это практический опыт? У меня есть сильные сомнения, что современная LLM удержит 30K строк контекста с достаточной детализацией. + еще её процесс рассуждения, который очень сильно сверху накинет токенов.

В моих экспериментах Claude Opus уже на 2K строк начинает перевирать отдельные места кода, то есть не может найти и воспроизвести цепочку токенов дословно и начинает путать места, где нужно вносить правку, а где надо оставить как есть.

Что касается ИИ как инструмента для анализа сложного кода - да.

Для ревью изменений - да.

Для написания простых классов или утилит целиком - да.

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

wandrien ★★★
()
Последнее исправление: wandrien (всего исправлений: 3)
Ответ на: комментарий от CrX

Тут как раз нормально. Слово computer тоже было в английском до изобретения вычислительных машин.

ugoday ★★★★★
()
Ответ на: комментарий от mamina_radost

Я обычно не люблю когда великий и могучий засоряется без нужды. Но тут мерзотное слово «вайбкодинг» подходит мерзотному же явлению.

ugoday ★★★★★
()
Ответ на: комментарий от Obezyan

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

Если у нас промпт на 3 абзаца, и модель сразу пишет код, то в выводе будет всё очень подробно расписано, все частные случаи обработаны и грамотно прокомментированы.

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

wandrien ★★★
()
Ответ на: комментарий от wandrien

Это практический опыт?

Да, там было 20К+ и делался поиск по предварительно созданной вектороной БД с эмбеддингами. Сеть вытаскивала сама по контексту то что реально относится к текущему этапу рефакторинга. У сети было контекстное окно в в 131К токенов те она за раз вытаскивала примрено до 10к строк кода (половина проекта) файлов относящихся к текущим сущностям которые рефакторятся. После каждого этапа эмбеддинги перестраиваются, но это быстро. Я еще пробовал срезать углы на повороте дав сети через MCP возможность использовать grep, но успеха не достиг. Это подход не для всех, мы GPT-OSS 120B использовали.

У меня есть сильные сомнения, что современная LLM удержит 30K строк контекста с достаточной детализацией.

Нужен контекст примерно в ~400К, современные сети для кодинга имеют не больше 262К (про 1М мусор говорить не будем) поэтому пока только итеративно как я описал выше.

Но вот засунуть весь проект в контекстное окно - такое пока нет.

Так и есть. Также как и не засунуть весь проект в контекстное окно в голове программиста. Пройдет еще полгода-год, освоят Manifold-Constrained Hyper-Connections (mHC) метод предложенный дипсиком и сети смогут засовывать весь проект.

Obezyan
()
Ответ на: комментарий от wandrien

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

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

Obezyan
()
Ответ на: комментарий от Obezyan

Это подход не для всех, мы GPT-OSS 120B использовали.

Ну это успех, конечно.

Не ожидал от этой модели такого качества.

wandrien ★★★
()
Ответ на: комментарий от wandrien

До этого отличные результаты показывала mistral архитектура (французы в кои то веки смогли), потом ее обошла qwen архитектура, все это время в реальных задачах gpt пасла задних и вот - выстрелила.

Рекомендую попробовать GPT-OSS 20B (на ниже fp8!), если еще не пробовали. Это младшая версия которая тоже вполне достойно себя показывает, зачастую лучше более объемных моделей Qwen 3 архитектуры.

Это ситуация «на сейчас», через неделю (условно) выйдет новая сеть и таблица лидеров поменяется.

Obezyan
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.