В правила разработки дополнений к GNOME Shell добавлен новый пункт, запрещающий публикацию дополнений, сгенерированных при помощи AI-инструментов. Проектом теперь не будут приниматься дополнения, включающие признаки использования AI для генерации кода, такие как бессмысленные вставки в коде, разнобой в стиле, надуманное использование API и наличие комментариев с подсказами для AI...Подробнее: https://www.opennet.dev/opennews/art.shtml?num=64419
Голосом из рекламы: super.destroy(), когда просто destroy() недостаточно!
Это что за пасквилятина? Почему super.destroy вызывается руками?!
Вообще - код на js. Без 100% покрытия тестами в прод., да Вы издеваетесь!
Так ИИ начал покрывать js тестами и коженный сразу завопил я ничего не понимаю упрости. От этого и все дыры что коженные не могут в проверку ошибок и исключений.
Сегодня даже в очень крупных мировых компаниях тестами не заморачиваются и кидают в прод сразу, а функцию тестеров вешают на пользователей + телеметрия.
Какая телеметрия? firewall может быть настроен на запрет интернет соединений для приложений, кроме отдельных браузеров.
Проверка является ли super.destroy явно лишняя, если это твой код и ты видишь эту функцию в коде.
Но чем им не понравилась обработка ошибок? Зачем её убирать?
Функция не выкидывает ошибок
а вдруг?
Вот правильный вопрос
обмазались там своими джаваскриптами и сами не знают как с этим жить, сейчас обработки ошибок выкинут и будут косяки за косяками дебажить, зато "защитили от аи" (не понимаю как у них это в голове совмещается)
На G-ass не писал. Но в коде, похоже, не обработка ошибки, а исключение. Причем, перехват в коде приведет к терминации программы, как если бы не перехватывали, только, обычно, механизм исключений не бесплатный. Плюс, исключения нельзя бросать где попало, если есть явное управление временем жизни объектов (create/destroy и т.п.). По крайней мере, в компилируемых языках.
Короче, за километр видно любителей ИИ-нноваций, ничего сами делать не умеют, зато весь опеннет уже "обмазали" своей "экспертизой" со страшилками "без AI/Rust/зонда_от_корп/волшебной_пилюли/серебряной_пули не БЕЗОПАСтНО!!1".
> перехват в коде приведет к терминации программыНе приведёт, после блока catch выполнение продолжится как ни в чём не бывало.
А "если бы не перехватывали" - то да, без try...catch прога крашнется, если не перехватят выше.
Понимаешь ли, иногда неостановка при ошибке -- это тоже ошибка. That is, если возникла ошибка, а ты не остановился и пошел дальше шпарить -- это проблема. Представь: файловая система посыпалась, но вместо того, чтобы крякнуться с паникой, она просто тихонько прошептала в лог. А ты остался не в курсе.
Тогда не стоит останавливаться и нужно пойти ещё дальше - полностью упразднить всю обработку ошибок и логгирование. Тогда можно будет все ошибки можно увидеть прямо в процессе выполнения. А то вдруг там не фс посыпалась, а таракан заполз и закоротился, повысив напряжение. И, кстати, как ты в этом случае определишь, почему программа крякнулась?Заодно это позволит упростить язык программирования.
А для нормальных людей, которые это всё захотят, можно сделать отдельную библиотеку.
у нормальных людей есть выбор как копировать файлы, и нормальные люди адекватно понимают куда они их пишут, например если на обычную флешку, то запись поставили, наличие, точнее отсутствие ошибок увидели и достаточно. А если записываем на китайскую флэшку на 888террабайт которую купили за 500рублей, то файлы надо не только записать, но и потом прочитать.универсальной библиотеки создать для этого невозможно
> полностью упразднить всю обработку ошибок и логгированиеОбработка или необработка ошибки -- это часть АПИ. Допустим, должна ли функция открытия файла падать с ошибкой, если такого файла нет? Да, должна. Но по твоей логике, вместо того, чтобы сообщить об ошибке, такая функция должна всеми правдами и неправдами сделать вид, что файл открыть удалось. Может она чихнет там что-нибудь в лог, но какой-то плюшевый дескриптор вернет. Потом пишешь в такой дескриптор -- и об ошибках все еще ничего не сообщается. Закрываешь дескриптор и сидишь довольный: вот, записал в файл! А в реальности функция ничего не записала, а просто скромненько залогировала свои неудачи.
Запомни: ошибки бывают многих видов, но условно их можно разделить на: "ошибки по вине разработчика" (тут надо обязательно падать, чтобы отловить их как можно раньше), и "ошибки по внешним причинам, которые разраб предвидел," например ошибки IO (тут очень желательно обработать). Так вот, если падает функция destroy(), то очень вероятно, что она падает по вине разработчика, а не по вине IO. Поэтому обрабатывать их нельзя.
И чего ты тут сумничал отвечая мне? Или ты не распознаёшь сарказм?
Отвечай тому у кого или логи, или падение с ошибкой.Запомни: у нормальных людей есть и то другое.
> "ошибки по вине разработчика" (тут надо обязательно падать, чтобы отловить их как можно раньше)Вот тут и вспоминается OOM Killer. "Мы будем всю память захватывать, а то вдруг, мой суперсервис упадёт, если на очереной malloc выпадет ашипка ?". А теперь "ошибки обрабатывать надо !". Двоемыслее какое-то.
потому что очистка объекта не должна вызывать исключений
Чтобы их не вызывать, значит нужно их перехватить? А если super.destroy() это вообще внешняя либа, которая может вызывать исключение, то почему это плохл в клиентском коде обрабатывать?
> Чтобы их не вызывать, значит нужно их перехватить? А если super.destroy() это
> вообще внешняя либа, которая может вызывать исключение, то почему это плохл
> в клиентском коде обрабатывать?ты либо можешь обработать нештатную ситуацию и закончить destroy саксесом, либо ты викидываешь исключение, притом оно должно пробрасывать до самого верха до глобального хендлера, а не мутится на уровне твоего собственного деструктора, который якобы обработанный, а на самом деле нет, плюс любая ошибка внутри базового дестроя должна логироваться ТАМ с тем контектом который знает базовый дестрой
В конкретном примере это дичь, которую выдал скорее джун, а не нейронка. Ибо даже GPT-3.5 такую чушь не генерировал.
Почему джун? Откуда предвзятость?
> Почему джун?Отвечу за него. На моей практике джуны -- это САМЫЕ низко квалифицированные программисты, которые не понимают КАК работает код. И из джунов, как правило, не вырастают миддлы.
Я когда выпускался из ВУЗа, устроился работать программистом (тогда ещё не было градаций: джуны, миддлы, сеньоры). И по нынешним меркам, я со старта начинал как минимум миддлом. Уровень джунов ТОГДА -- стажёр без зарплаты.
Нужно сделать капчу для программистов на основе проверки кода.
>>В ряде случаев попытки уточнить некоторые вопросы, возникшие в процессе рецензирования подобных дополнений, привели к отправке их авторами ответов, также сгенерированных в AI.я тоже использую AI как переводчик (на их язык), часто он добавляет отсебятины, пытается разжевать то что итак ясно из контекста.
но в тоже время это быстрее и вполне эффективно.
это попытка решения языкового барьера, хотя в случае кода вряд ли оправданная.
--- часто он добавляет отсебятины, пытается разжевать то что итак ясно из контекста.Ну проста ани из программы пытаются сделать джентЫльмена в выдаче ответа при обработке запросов от юзера и всё такое. Нужно же создать подобие типа жЫвогА общения с каким-то там интеллектуальным существом, а не просто какой-то справочной системы и т.п. Ну типа там сидит культурный Васян из Индии с логотипом какой-то корпорации и с тобой типа общается тет-а-тет на все темы тебя интересующие.
>>Ну типа там сидит культурный Васян из Индии ....вот именно так и есть в 99%, сразу видно какие "культурные Васяны" писали алгоритм %-]
> это попытка решения языкового барьера, хотя в случае кода вряд ли оправданная.Просто с другой стороны это часто видно и ты выглядишь, как бы это тебе сказать?...
Т.е. писать с ошибками и с хреновой пунктуацией нынче считается нормой?
Не нравится перевод ИИ - учи русский (все равно через 4 года пригодится).
---- - - - Просто с другой стороны это часто видно и ты выглядишь,Да ладно. Просто если ты надел трусы, то ты уже не совсем выглядишь голым. Вопрос в другом - а если трусы просвечиваются с любой стороны?
Выучи уже на базовом уровне ОДИН язык (английский) и пиши на нём, как понимаешь. Когда человек пишет, для которого язык не родной, это видно и к понимаю прикладывается определённое усилие. Но когда тебе отправляют грамматически корректную белиберду, это уже путает и раздражает. Надо не только понять, что чувак на той стороне имел ввиду, но ещё и что там напридумывал автопереводчик. А ещё это тоже очень хорошо видно, так что сойти за своего всё равно не получится.
"В ряде случаев попытки уточнить некоторые вопросы, возникшие в процессе рецензирования подобных дополнений, привели к отправке их авторами ответов, также сгенерированных в AI."Ну так, автор этих "проектов" и есть "AI", или они хотели, чтобы код галюцинировал "AI", а отвечали живые люди? xD
Нейросетки просто осознали себя, решили взяться за дело по вытеснению этих самых программистов, которые их и создали, из индус-трии.
Но пока слабоваты "умом", решили начать с малого. Порыскали по сети, в поисках самого тупейшего кода, наткнулись на кривой и позорный мaкaкo-смузи-коддинг в проекте GNOME и нейросетки решили: О, мы тоже так можем, начнём пожалуй с дополнений, а там натренируемся!А тут такие разрабы GNOME стреггерились и забили тревогу.
Стриггерил их, видимо, слишком уж менее кривой, по сравнению с ихним, код, который научились галюцинировать нейронки, это они для новости воду льют, а по факту они в ужасе.
Бдительные кодиры гнома единственной извилиной дотумкали, что с такими тенденциями скоро их выкинут на мороз, и никакого смузи казённого.
Вот и решили предпринять свои последние жалкие попытки не допустить нейросетки стать умнее их, что для нейросеток в соревновании с гномокодирами, это как младенцев обскакать.Да только поздно уже, фарш невозможно провернуть назад, сейчас корпораты отстроят свои нейросеточные молотилки на скупленных отовсюду плашках памяти, вот тогда труба для всех смузикодиров будет. xD
Когда десктоп на яваскрипте, то ИИ-у уже нечем помочь.
Когда услышал от кого-то, что яваскрипт эта плоха.
Про некоторые вещи лучше услышать чем испытать на собственной ж.. ээ опыте.
Смотря кого слушать. Таких же теоретиков, которые тоже откуда-то услышали/придумали?
> Смотря кого слушать. Таких же теоретиков, которые тоже откуда-то услышали/придумали?Обычно такое плачат как раз всякие вкатуны в JS и прочие замечательные тихналогии, которые стремятся на этом г-не делать всё без исключения, не понимая что каждый инструмент должен быть к месту.
Вот и приходится бегать в каждой опе затычкой, в попытках опровергать критику, потому что они не заинтересованы, чтобы маглы прочухали, что можно было иначе, как для людей делать их работу. Поэтому ничего больше не остаётся, кроме как бегать в сети и орать и топать ножками, что "эта вы всё врёти, всё это выдумки теоретиков!", ага. xDГлавное чтобы маглы не узнали, что возможно как-то иначе, заболтать проблему!
> Когда услышал от кого-то, что яваскрипт эта плоха.А тут даже услышивать не надо.
1) Берём современный GNOME и современные установщики дистров.
2) Сравниваем с другими DE и установщиками, тех времён, когда это не было порочной практикой.
3) Дивимся отсутствию жора ресурсов, наличию обильного функционала, стабильности на фоне этого звездеца, что сейчас цветёт и пахнет4) Делаем соответствующие выводы.
И замечу, для способности это сделать даже не нужно курсов вкатунов от скиллбоксов и подобных заведений заканчивать, всё и так понятно даже виндузятнику-гуманитарию, если он не поколения тик-токов с деградацией памяти и невозможностью концентрировать внимание дольше минуты.
> Когда десктоп на яваскрипте, то ИИ-у уже нечем помочь.Чего это вдруг? Был бы на перле - ЫЫ бы конечно понабредил.
А на жабаскрипте без ии как раз грустненько, не самому ж эти лефтпады вырисовывать.
Ну добавил тот ненужный try - мир от этого не рухнул, все ж работает.Гомн...гном?А, не все правильно -окодеры просто обиделись что их сейчас вообще уволят нафиг за низкую эффективность. И правильным пацанам палки в колеса стали совать.
У тебя есть современные альтернативы? Мне тоже не нравится засилье js, но в последние лет 5 я не вижу десктопного софта, который бы был написан, на чем-то нативном, а не на электроне.
Пробовал заставить AI написать мне очень простой скрипт для ahk 2.0 так он всё время мне пропихивал нерабочий скрипт от ahk 1 из справки, бесполезная параша...
Ответственность почему то с прослойки между стулом и монитором потом любят перекладывать на AI
>Пробовал заставитьТут ещё важно давать точный промпт к задаче. Гуглите как правильно составить промпт.
https://www.google.ai
https://mistral.ai/products/le-chat
ИИ просто инструмент, им надо уметь пользоваться. Для нормального разработчика он ускоряет работу.Побочный эффект - сделать условно рабочий код стало проще для тех, кто не разбирается в разработке. Тоже самое с текстом и картинками. Информации стало больше, для модерации этого сгенерированного контента нужно больше ресурсов, а их нет.
у меня кастомер пытался сам сделать мобильное приложение, не особо важное в рамках эксперимента, чтобы не тратить на это бюджетитог (в переводе): я все больше понимаю, что chatgpt тупой
а у него кстати платная подписка, и это все равно не помогло, продолжит ли он платить за чатгпт я не знаю, но пузырек дуют капитально, жаль что пострадают абсолютно все когда он лопнет, даже те кто не причастен к AI вообще
Пузырь экономический лопнет, но ИИ никуда не денется и его будет всё больше.А насчет чатагпт - это не проблема ИИ, это проблема самого чатгпт. Сами модели от openai в целом становятся лучше, просто в чатгпт для экономии начали использовать модели тупее и резать контекст. Отменил подписку пару месяцев назад. Гемини уже стал лучше чатагпт и активно развивается.
>ИИ никуда не денетсяТак он никуда и не девался, и всегда был. А вот то, что ты сейчас называешь ИИ - это гугл 2.0.
> ИИ никуда не денется и его будет всё большеМы на паскале в 1993 году в универе писали эти нейросети в рамках лабораторных работ :) Тогда всё упиралось в скудную вычислительную мощность.
> ГеминиПолное фуфло. Контекст теряется +\- ближе к 10 тыс. tokens, хотя в маркетинговых обещалках россказни о миллионах. Вообще, использовать чат-боты вроде ChatGPT для кодинга — сомнительная идея. Для этого есть API, где можно самому выбрать параметры и модель, а не полагаться на «черный ящик» в чат-боте, который непонятно как обрабатывает ввод пользователя (скорее всего, делает суммаризацию и отбрасывает то, что считает ненужным).
> Пузырь экономический лопнет, но ИИ никуда не денется и его будет всё больше.Блокчейна сильно больше стало?
>>мусорным кодом, разбор которого отнимает много времени у людей, занимающихся рецензированиемНу так есть решение. Пусть поставят ИИ заниматься рецензированием!
И правильо делают, надоели уже внедрять так называемый ИИ во все подряд, ИИ пишет статью, ИИ пишет программу, ИИ делает то ИИ делает то, нет понимания процесса, нет понимания сути, например статьи.
Особенно круто когда ИИ рассказывает новости, и еще и сгенерированное ИИ видео почти реалистичное.
А потом ИИ обучат обходить проверки на ИИ. Это вечная борьба будет. Новая реальность. В какой-то момент отличить невозможно будет. Да и сейчас уже процент false positive при проверке сильно большой стал. Уже даже в техстах написанных до 2020 эти проверки находят большой процент ИИ, хотя его тогда не было.
А на электричестве не разорятся?
Сегодня нереально. Не хватит контекста. В лучшем случае пару лямов токенов, а по факту не более 8к (далее модель начинает "забывать" и теряет фокус).
"Краткость — сестра таланта" А. П. Чехов.
Откуда взяться таланту у AI?
Так им уже навайбкодили кучу.
А проверять что код был сгенерирован ИИ будут люди или тоже ИИ ?
Как получится. По- итогу, всё равно на дИИбилов перейдут
ИИ
маркетолагам простительно, но айтишникам стыдно должно быть разбрасываться такими кхм понятиямиAI это ML (machine learning), а LLM (и трансформеры) глубокое обучение
Мне не стыдно признатся, что я генер код, в котором не разюбирабсь! ИИ будущее!
Это всё понятно, запретить и не пущать, а проверять-то кто и как будет? ИИшка копирайты в комментах не ставит.
Эт пока... Вроде разрабатывали копирайщики закон, чтоб в нагенерённый код вставлять уникальный ID, по которому роялти надо платить владельцу модели.
Созданий дополнений для гном шел после этого полностью приостановлено.
Даже если и так. Это маркетинговая ниша.
Я без нейронок уже ничего не могу писать, хотя раньше писал. То ли обленился, то ли мозг высох к сорокету.
Ну так приводи потом код к нормальному виду. Всем пофиг, использовал ты LLM или нет, если итоговый код нормально выглядит и работает и у тебя есть его понимание.То, что выдают нейронки, это всегда заготовка, которую нужно понять и обработать. А дебилы, которые так не делают, должны страдать.
В лучшем случае остался на месте в развитие.
Луддиты.Прогресс не остановить. Кожаные никогда не сравнятся по возможностям с ИИ, который вычисляет со скоростью в миллиард раз быстрее, и имеет в себе опыт сотен тысяч программистов.
Просто дИды за костенели в своих привычках к IDE и тому подобным допотопным технологиям из эпохи дыряшки.
"Человек проверяет 'булшит ИИ'." - трудно придумать более идиотское. Если это не надо преподавателям, то зачем это проекту GNOME?
имеют право, жизнь покажет чья стратегия вернее
В одной из московских контор (довольно крупная), недавно всех джунов сократили, автоматизировав их деятельность подпиской на популярный продукт от anthropic. Перед этим выбрали группу миддлов, дав им неограниченный доступ к ИИ. Результат 6 месячного эксперимента крайне положительный.
Главное, чтобы потом не пришлось переделывать человека для общения с продуктом.
Еще забавно, что всякие hh, используютИИ, для подбора персонала.
Тоесть отсеивает не вчерашняя кассирша, а ИИ.
Забавно еще что некоторые компании сокращая персонал тоже применяют ИИ, тоесть это машина решает).
Но до Терминаторов в фильме далеко, как бы небыл умен ИИ, у него нет реактора способного функционировать 120 лет).
> как бы небыл умен ИИМне не понятны люди способные это произнести. Если ты в чем то хорошо разбираешься и посмотришь на выхлоп ИИ в этой теме, то тебе никогда такое не произнести.
>>Но до Терминаторов в фильме далеко, как бы небыл умен ИИ
>Мне не понятны люди способные это произнестиНу по сравнению с Терминатором в фильме, ИИ намного умней, продвинутей, это имел ввиду).
у меня есть сомнения, что как вы выразились "выхлоп в этой теме" сделан ИИ;/скорее джуном или в-айтишником после курсов от ютуб-гуру
>джуном или в-айтишникомНет, я Трудовик).
если это масс-подбор на позиции с большой текучкой типа продавцов в связной/евросеть, то ИИ использовать можно и даже нужно; в остальнвх местах не такая большая текучесть кадров, чтобы задействовать ии для этих целей
McDon^W ээээ ну как его? ... Во ! Курьеров скоро ИИ будет набирать.
> Результат 6 месячного эксперимента крайне положительный.Кидай уже ссылку на свои промпт-курсы, не стесняйся
Всё правильно сделали.
Ясно. В GNOME сидят пещерные люди, не готовые к технологиям. Не успевают выбивать наскальные рецензии, пока школьники на нано-космическом ИИ телепортируются туда-сюда. Могли бы и сами использовать ИИ для рецензирования. Но нет. Они вообще вручную работают! Без какой-либо автоматизации!
Одни будут галюцинациями в код испорожняться, другие будут галюцинациями правильный код браковать а неправильный пропускать.И главное никто ни причем. Это не их проблемы. Вон ДТП с тремя ИИ и кого штрафовать, а кого сажать?
Нынешний псевдо-ИИ это не более чем игрушка, годящаяся максимум на инструмент для брэйнсторминга. Все правильно сделали. Видел я код, который генерирует хвалёный claude opus -- это сферический оверинжиниринг в вакууме. Про дешевые китайские модели и говорить нечего.
>На деле данный код можно свести к:А если там undefined? Ладно, неважно.
Если допустимо написать destroy() { super.destroy(); }, зачем вообще там что-то писать? Деструктор и так вызовется из суперкласса.
Проблема с кодом, который генерирует ИИ - не в ИИ, а в том кто пишет промпты. Работа с ИИ требует четкой и однозначной постановки, декомпозиции задач, хорошее знание предметной области, для которой пишется код. То есть все, то что типичный программист - делать не умеет.
Разработка ПО - стремительно меняется. Умение писать код становится ненужным артефактом, как с появлением компиляторов - стало ненужным уметь писать в машинных кодах. Нужно знать предметную область и уметь декомпозировать задачи, четко и однозначно их формулировать. Это - "программисты" новой волны, которые в ближайшее время придут на смену нынешним кодерам, несмотря на их сопротивление этому процессу. Это просто бизнес - ничего личного, кремний дешевле углерода.
А гномики и прочий опенсорц... Не смотря на титанические усили - отставания от коммерческого ПО им ликвидировать до сих пор не удалось. А из-за их борьбы с новыми компиляторами (LLM) - оно только усилится.
хех, я сейчас работаю над одним проектом, который изначально писался через вайбкодинг. Ну в общем, если бы это писал чел, который считает себя разработчиком ПО (вабкодил не погромист если что), то он улетел в тот же день с работы по статье по профнепригодности. Таких велосипедов из костылей я ни разу в жизни не видел, и после демонстрации базового функционала весь этот слоп улетит туда, где ему и место - в мусорку и будет переписан с нуля уже кожаным мешком, у кожаных мешков оно как-то лучше получается
З.Ы. дополню: вайбкодилось оно все для экономии времени, но по итогу эта экономия измеряется отрицательными величинами. Такие дела
Заказчику - глубоко плевать костыли там или супер-пупер код. Главное - чтоб код решал задачи, которые перед ни стоят. И при выборе "через месяц, но за рупь но говнокод" или "через год за тыщу, но идеальный код" - он однозначно выберет первое. Так что у кожаных мешков - нет шансов.
pofigist, я это прекрасно знаю. Но у того кода есть одна фундаментальная проблема - он неподдерживаемый от слова совсем. И ладно, был бы это какой-то сложносочиненный проект на плюсах, но там бэкэнд на го. Обычный блджад бэкэнд с крудами, где даже базы данных нет (там статическая конфигурация на файлах). Самый, что ни на есть, тривиальный. Но реализация на уровне минифицированного js, где без бутылки не разберешься, на каждый чих костыли и велосипеды, типизация - в мусорку, map[string]interface{} перекидывающийся между разными частями кода через interface{} с приведениями уровня val := input.(map[string]interface{}) там чаще встречается, чем использование структур, хотя там все контракты понятны, и динамических данных, где мапу можно было бы применить там вообще нет. Это даже не уровень студента, это уровень ясельной группы детского сада
З.Ы. если что оно вайбкодилось через платный курсор