TGViewer
Channel Public Channel
feelin

feelin

@feelindev

Разработка, чистый код, AI, безопасность — и ещё миллион тем для холиваров.

Авторский канал Валерия Филатова, Developer Advocate и Project Lead в PVS-Studio.

По вопросам: @feeeeelin
Subscribers
47
Photos
90
Videos
3
Links
168

Showing posts older than #233 · Back to latest

Older Posts 20 shown
Post #232 43
Больше не уверенный пользователь ПК

За прошедший месяц в моём домашнем сетапе произошло несколько важных изменений. Пожалуй, самое главное — покупка Mac Mini на M4. Я притарил его для экспериментов с локальными нейросетями, однако так вышло, что он стал моей основной домашней машиной. Мне много рассказывали, какая macOS удобная система, но я никогда не думал, что настолько.

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

Например, пару дней назад я случайно наткнулся на функцию «Постановщик» — это что-то вроде Win+Tab в Windows, только красивее. А до этого сидел с миллионом окон одно поверх другого.

Правда, помимо таких приятных открытий, иногда возникает ощущение, что я вообще не умею работать с компьютером. Моя частая шутка про то, что я не «уверенный пользователь ПК», перестала быть шуткой... Нужно привыкать к новым сочетаниям клавиш, принципам системы и другим штукам, которые я, возможно, ещё не раскопал.

Если вы всё время работали на одной системе (например, на Windows) — всячески рекомендую попробовать что-то ещё. Как минимум, ради эксперимента и новых нейронных связей.

🎤feelin
  • 💯 1
Post #231 41
Как поплохел GitHub при Microsoft

За последний месяц новостей о бедах с GitHub было немало. И все они связаны, по сути, с одним фактом: GitHub перестал быть тем, чем был изначально. Случилось это в конкретный момент — после покупки Microsoft в 2018 году.

Коллега показал мне интересный сервис — он берёт данные из истории статусов GitHub и строит из них таймлайн. Если посмотреть на график, после перехода под крыло Microsoft кривая аптайма стабильно показывает not stonks. Да, GitHub в какой-то момент сменил систему мониторинга, и этим можно объяснить часть точек на графике, но не все же.

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

С 2021 года GitHub взял курс на превращение в огромную AI-экосистему. Сначала Microsoft были впереди со своим GitHub Copilot. Но сегодня с этим всем происходит что-то странное: AI во все щели запихнули, а про поддержку работоспособности будто забыли.

И AI здесь лишь крупная фича, которую «эффективные менеджеры» решили доить по полной. Ведь GitHub при Microsoft вполне делал и классные вещи — те же GitHub Actions. Просто с AI стоп-кран сорвало, и само деяние оказалось важнее смысла содеянного.

🎤feelin #ai
  • 💯 1
Post #230 36
Эффект бабочки

Google анонсировали на Google I/O появление на YouTube чат-бота Ask YouTube. Смысл этой штуки в том, чтобы пользователь мог задать вопрос, на который нейросеть найдёт ответ из роликов на видеохостинге.

Штука напрашивающаяся, тем более при учёте того, какую ставку на AI делает Google сегодня.

Но мне показался интересным другой вопрос: что вообще сделало Ask YouTube возможным? YouTube стал сильно мощнее за счёт развития ИИ, и к появлению этого чат-бота фактически привела другая фича — возможность делать нормальные расшифровки видео.

Вспомните, какими раньше были автоматические субтитры на YouTube. Очень редко они оказывались полезными из-за слабых возможностей распознавания речи в те времена. Фактически наличие в меню субтитров варианта «Русский (Автоматически)» означало невозможность использования субтитров. А сегодня они генерируются вполне пригодными. Благодаря этому и получилось сделать полноценный контекстный поиск по платформе.

Более того, нормальные субтитры повлияли не только на возможность сделать Ask YouTube. Крутейшая фича последних пары лет — автоматический дубляж видео. Да, он всё ещё отдаёт зловещей долиной, но решает свою задачу.

Когда в очередной раз захочется поворчать на AI за всё, что он натворил своим появлением, стоит вспомнить и про хорошее. Развитие этих технологий решает давние проблемы — и заодно открывает возможности, которых раньше просто не было.

🎤feelin #ai
  • 👍 1
Post #229 37
Что в имени тебе моём?

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

Есть Java и C#, которые в той или иной степени принадлежат Oracle и Microsoft соответственно. Но это всё понятно и неинтересно. Есть истории куда интереснее.

Например, C++ сам по себе никому не принадлежит, его развитием занимается комитет по стандартизации. Однако некоммерческая организация The Standard C++ Foundation, которая помимо прочего поддерживает развитие языка и инфраструктуру, владеет правами на логотип C++ — тот самый, в тёмно-синем шестиугольнике.

Интересная история произошла и с JavaScript. Развитием языка занимается международная организация Ecma International, и стандарт называется ECMAScript. Всё потому, что права на само название «JavaScript» принадлежат Oracle — они достались им после покупки Sun Microsystems.

В IT у многих вещей за время существования накопилось множество интересных историй, которые, кстати, не так часто фиксируются в каких-то источниках. Я год назад писал целый цикл публикаций про то, как появились и развивались некоторые языки программирования — и интересностей за пределами changelog'ов там хоть отбавляй.

P.S. Цикл статей об истории языков можно прочитать вот здесь. И вполне вероятно, что скоро их список расширится, но я вам ничего не говорил :)

🎤feelin
Post #228 41
Не делай так: "работа по UDP"

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

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

Суть в том, что тебе подкидывают работу под видом чего-то, что уже готово. Классический пример — когда что-то приходит на ревью, а материал настолько сырой, что ревьюер фактически делает работу за автора: указывает на всё, что тот мог и должен был проверить сам.

С распространением AI это стало встречаться заметно чаще. "Мы тут с DeepSeek'ом набросали — посмотрите." Смотришь на это добро, а там местами прям бред. Делегировать рутину AI — вполне разумно. Но проверять результат всё равно нужно.

Бывает это и на вполне солидном уровне. Однажды я получил на согласование текст от уважаемого издания — и он явно не прошёл даже базовую проверку перед отправкой. Примерно такого качества тексты выдавал гугловский суммаризатор до того, как они доработали Gemini.

Это проблема по двум причинам. Во-первых, это непрофессионально: можно много говорить о важности своей работы, но если её фактически выполняют другие — слова не имеют смысла. Во-вторых, это неуважение к чужому времени. У всех своих дел хватает.

Поэтому #неДелайТак - уважай чужое время.

🎤feelin
  • ❤ 4
Post #226 56
Искусственный дизайнер

В апреле Anthropic выпустили новый инструмент Claude Design — для проектирования UI, презентаций, прототипов и всего такого. Звучит поистине революционно: берёшь нейронку, а она делает для тебя дизайн под ключ.

Я попользовался им, пока готовил редизайн канала, и штука действительно интересная. Как минимум, Anthropic снова хорошо поработали над UX. Прямо на ходу видно, как модель ковыряет документ, можно оставлять правки к конкретным фрагментам — как комментарии в Figma.

Но дизайнеров это, конечно, не заменит. Это всё ещё LLM, которая работает только с текстом. И всё, что получается на выходе из Claude Design — HTML-страницы, которые потом нужно дорабатывать под свои нужды.

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

Как я отметил ранее, Claude Design работает на Opus 4.7. Эта модель и в обычном-то режиме съедает много токенов, а при создании большого документа лимиты улетят за пару запросов. Для постоянного использования — дороговато. Справедливости ради, у Claude Design есть собственные отдельные лимиты, но это вполне может быть временным — как это было с Claude Code.

В общем, штука полезная. Может закрыть базовые потребности, но дальше всё равно понадобятся аналоговые мозги.

🎤feelin #ai
  • 👍 2
  • 🔥 1
  • 👌 1
Post #225 45
Не делай так: повесть в комментариях

Огромная, как по мне, задача при написании чистого кода — это правильная работа с комментариями. Поскольку тема обширная, коснёмся лишь одного конкретного вопроса: размер имеет значение?

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

Да, возможно, такой комментарий объясняет какую-то невероятно важную подробность. Но чаще всего: а) то же самое можно написать намного короче; б) скорее всего этот комментарий между строк говорит, что мы могли сделать нормально, но жизнь распорядилась иначе.

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

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

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

Хороший комментарий — это не извинение за плохой код. Это помощь тому, кто придёт после вас. Иногда этим человеком будете вы сами через какое-то время. Но не забывайте, что вы сущность в коде описываете, а не дуб.

Поэтому #неДелайТак - пиши комментарии осмысленно!

P. S. А вообще тема большая, и явно не для формата коротенького поста. Рано или поздно придумаю, как бы рассказать всё про комментарии :)

🎤feelin #cleanCode
  • 👍 3
  • 🔥 2
Post #224 47
Диктатура Хабра

Недавно на Хабре случилась забавная история.

Один пользователь опубликовал самую полезную в истории площадки публикацию "авыфафывафы". Текст публикации примерно такой же, как и её название :)

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

Интереснее здесь реакция сообщества Хабра. Публикация стала попадаться пользователям в ленте, а те, в свою очередь, плюсовали эту "статью". В итоге публикация добралась до вполне неплохих показателей: последний раз, когда я обновлял страницу, там было +25.

Но, как вы уже поняли, модераторы потёрли публикацию. Как говорится, we live in society. Никакой свободы мысли из-за этих ваших корпораций.

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

🎤feelin
  • 🤣 4
Post #223 67
Бездушные корпорации

Meta* устанавливает своим сотрудникам программу слежки за движением мыши и нажатием клавиш — Model Capability Initiative. Эта программа будет собирать данные для обучения ИИ, в том числе будущих AI-агентов для рабочих задач.

Звучит довольно забавно. "Вот тебе лопата, каждый день тебе нужно копать яму, чтобы в конце концов туда поместился человек твоих размеров. Хотим ли мы тебя заменить? Нет, конечно нет. Просто так совпало".

Возможно, я излишне драматизирую, говоря о том, что это делается для замены аналоговых работяг на агентов Смитов. Я тоже сначала так подумал — а потом другая корпорация, что на соседней улице от первой, одним днём сократила до 30 000 сотрудников.

Речь про Oracle. Причём сокращённые сотрудники точно так же тренировали себе замену — им тоже предлагали "помочь" ИИ освоить их работу, записывая рабочие процессы и действия.

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

*Компания Meta признана экстремистской и запрещена в России

🎤feelin #ai
Post #222
feelin pinned a photo
Post #221 71
Привет!

Меня зовут Валерий Филатов, добро пожаловать в мой авторский канал. Здесь я пишу про разработку и технологии: разбираю интересные новости, думаю вслух, делюсь опытом.

Немного обо мне: работаю Developer Advocate и Project Lead в PVS-Studio — пишу код и тексты, выступаю, иногда рулю проектами.

Где ещё меня найти:
🗂 LinkedIn
😺 GitHub
✍️ Habr

Хэштеги для навигации:
#ai - новости и мысли об ИИ
#cleanCode - про качество кода и хорошие практики
#devrel - всякое про Developer Relations
#meme - без комментариев
#podcast - выпуски подкаста «Разбаговка»
#security - всякое про безопасность
#неДелайТак - антипримеры и разборы ошибок

🎤feelin
  • 👍 6
  • ✍ 1
Post #220 51
Brand new feelin

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

Предыдущая версия, кстати, родилась минут за 15. Увидел классное сочетание цветов на стандартных обоях Windows 11, взял шрифт, который использовал везде — и получилось то, что получилось.

Новый вариант вырос из прототипа, который сделал мне Claude Design по моему запросу (ещё расскажу про опыт работы с ним). Получилось, как мне кажется, довольно забавно.

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

Постом ниже, кстати, навигация по каналу. Она теперь будет красоваться в закрепе.

🎤feelin
  • 🔥 5
Post #217 47
Дядя Боб убедил меня это сделать

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

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

Поскольку запускать модели локально мне не на чем, я пользовался облачными сервисами. В основном Qwen или ChatGPT.

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

Сначала мне казалось, что Мартин сильно преувеличивает разницу между моделями, а уж тем более между платным и бесплатными. Но разница оказалась реальной. Видимо, дело в том, что Anthropic сейчас действительно выпускает одни из самых сильных моделей на рынке ИМХО.

Ещё Claude удивил удобством. Ответы приходят заметно быстрее, чем в том же Qwen Studio. Но важнее сам опыт взаимодействия: интерфейс и логика работы с ИИ здесь выстроены гораздо интуитивнее. В общем, видна разница между крупными ИИ-компаниями и Open Source китайцами.

Если отбросить стандартные оговорки про искусственный интеллект, единственная проблема, которую я пока вижу, — необходимость раз в месяц отдавать $20. И с учётом того, как это из матушки-России сейчас делается, проблема не только в стоимости.

🎤 feelin #ai
  • 👍 4
Post #216 40
Игра в имитацию

У Anthropic недавно вышла любопытная статья: Language models transmit behavioural traits through hidden signals in data. В ней описан эксперимент, который меняет представление о том, как модели «общаются» друг с другом.

В машинном обучении есть процесс дистилляции: сильная модель-учитель генерирует синтетический датасет, а на нём обучают модель полегче. Именно с этим и экспериментировали авторы.

Модели-учителю «вживляли» определённый паттерн. Для примера взяли большую языковую модель и заставили её любить сов (что? Да). Затем попросили сгенерировать датасет, состоящий исключительно из случайных чисел.

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

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

Получается, модели могут понимать друг друга так, что мы даже этого не заметим... Скайнет всё ближе?

🎤 feelin #ai
  • ❤ 2
Post #215 45
Приколы из чата разработчиков статического анализатора :)

🎤 feelin #meme
  • 🔥 4
  • 😁 1
Post #214 725
Проблемы с цепочками

В своих докладах о чистом коде я часто разбираю рефакторинг длинных цепочек вызовов. Основная мысль проста: такая конструкция не только замедляет чтение и понимание кода, но и бьёт по производительности.

Однажды меня спросили: "А что, если эти методы изменяют внутреннее состояние объекта?" Действительно, если audinfo() (ну или подобный метод в других примерах) возвращает объект, чьи методы мутируют состояние, то вынесение его в переменную превратит пять независимых вызовов в пять обращений к одному экземпляру. А значит, поведение программы может измениться.

Но ответ, на мой взгляд, кроется в самой постановке вопроса. Хороший код не должен порождать сомнения в духе "а что, если...". Если безопасный синтаксический рефакторинг меняет логику работы — это не недостаток рефакторинга, а яркий сигнал о проблемном дизайне.

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

🎤 feelin #cleanCode
  • 👍 2
Post #213 66
Расширяем горизонты

Последние несколько месяцев мы в PVS-Studio работали над новыми анализаторами для языков JavaScript и Go — и вчера наконец открыли ранний доступ.

Если вы пишете на этих языках, сейчас можно попробовать инструменты бесплатно. Нам важна обратная связь от реальных пользователей — так что будем рады, если присоединитесь.

Уже доступны по два десятка диагностических правил, CLI для каждого из анализаторов, а также плагины для WebStorm и GoLand.

Уже через месяц для тестирования станет доступен анализатор для TypeScript и обновлённый плагин для Visual Studio Code с поддержкой новых анализаторов.

Зарегистрироваться на тестирование можно здесь.

🎤 feelin
  • 🔥 3
  • 👍 1
  • 👏 1
Post #212 54
Санкционный ИИ

Появилась новость: с 1 сентября 2027 года в России могут ввести ограничения на использование «трансграничных технологий искусственного интеллекта» — то есть иностранных ИИ-сервисов. Прямо упоминаются ChatGPT, Claude и Gemini.

На первый взгляд, это выглядит как шаг к продвижению отечественных решений за счёт ограничения доступа к зарубежным аналогам — тренд, знакомый по другим сферам (например, по соцсетям).

Но остаётся вопрос: насколько это полезно с практической точки зрения?

Да, российские ИИ-платформы развиваются и решают определённые задачи. Однако по качеству, надёжности и широте применения они пока заметно отстают от лидеров рынка. Например, у S0ER'а недавно был вот такой пост про GigaChat.

До вступления законопроекта в силу ещё больше года. За это время многое может измениться — как в технологиях, так и в самой формулировке инициативы. Так что пока остаётся лишь наблюдать за происходящим.

P. S. Уже третий пост про ИИ подряд... Я не специально, просто инфоповоды скопились :)

🎤 feelin #ai
Post #211 57
Возмущение по умолчанию

На прошлой неделе зашёл на GitHub и увидел уведомление: с 24 апреля GitHub Copilot может использовать ваши запросы и контекст диалогов для улучшения своих моделей.

Сначала я не придал этому значения — пока вокруг не пошла волна возмущения. Многие решили, что Copilot теперь будет обучаться на всех их приватных репозиториях, хотя это не так.

На самом деле суть обновления проста: если вы используете Copilot, то ваши сообщения и код, отправленные в чат, могут быть использованы для обучения — но только если вы дадите согласие. Для этого в настройках есть отдельная галочка: Allow GitHub to use my data for AI model training.

Более интересный вопрос — насколько вообще корректно использовать такие данные для обучения. Да, Microsoft заверяет, что не трогает данные корпоративных клиентов. Но что если я работаю в компании без лицензий, а себе купил персональную Pro-подписку? Где тогда проходит граница?

Хотя, честно говоря, все эти вопросы пока остаются теоретическими — ведь согласие всё равно требует явного подтверждения.

Конечно, самое забавное в этой истории — наблюдать за людьми, которые ни разу не запускали Copilot, но возмутились пуще всех, хотя их это изменение вообще никак не касается.

🎤 feelin #ai
  • 💊 1
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →