Я занимался вайб-кодингом (vibe coding) как одержимый сорок дней и сорок ночей. Это долгая история, поэтому я резюмирую её в этих трех картинках.
Слева, 3 недели назад: я вайб-кожу на пляже за ужином в Кабо-Сан-Лукас, Мексика, с неподражаемым Торстеном Боллом, нашим приятелем Мэттом Манелой и другими коллегами из Sourcegraph на корпоративном выезде. Кто-то сделал это фото, потому что я отказывался убрать компьютер.
В центре, 2 недели назад: фотография, на которой я фотографирую сам себя, пока еду на скорости 100 км/ч (60 миль/ч) по шоссе в Беллингем, чтобы забрать гитары, занимаясь голосовым вайб-кодингом всю дорогу туда и обратно. Глупо и чертовски опасно. Мне было плевать. Застрял в пробке на несколько часов. Всё равно плевать. Я упоминал, что это вызывает привыкание? Вайб-кодинг вызывает привыкание.
На последнем кадре: мы с женой в торговом центре на прошлой неделе, наслаждаемся приятным днем с кофе, наблюдаем за людьми и вайб-кодим вместе с Моцартом (на фото он в своей любимой сумке). Лин прячется за компьютером - так я получил разрешение руководства на публикацию снимка.
Я никуда не хожу и не делаю ничего, даже не сплю, без своего ноутбука. Ну, разве что когда бегаю - там я ещё не совсем раскусил, как вайб-кодить. Но я близок. Это тема для отдельного поста, но у меня наконец-то работают агенты на GCP с Terraform и Tailscale. Так что скоро я смогу вайб-кодить и с телефона.
Агенты никогда не должны отдыхать.
Читать далееТе, кто хоть раз пробовал что-то сделать на Flutter, обычно начинали с того, что создавали новый Dart-файл и писали stfl, что сразу создавало шаблонный StatefulWidget с указанным именем для виджета и его состояния. В среде Flutter это называется Live Templates, но по сути — это сниппеты.
Помимо стандартных сниппетов stfl и stls, существуют и другие базовые шаблоны, которые уже установлены по умолчанию. А именно:
Читать далееПредставь, что мир — это огромная комната, заваленная игрушками. Игрушек так много, что ты не знаешь, во что играть. Раньше игрушек было мало, и взрослые показывали, какие из них важные. А теперь игрушек слишком много, и все кричат: «Возьми меня!».
У человека в голове есть своя картина мира — как личная карта того, что он уже видел и понял. Новые знания — это как новые игрушки. Но чтобы взять новую игрушку и понять, как с ней играть, нужно внимание. А внимание — как батарейка: оно быстро садится.
Когда мы читаем или слушаем, мы платим вниманием. Если устали, слова превращаются в шум. Поэтому важно, чтобы знания подавались маленькими кусочками: сначала название, потом короткий рассказ, а уже потом — длинное объяснение.
Умные машины умеют сжимать большие тексты и помогать находить похожие идеи. Так люди могут находить друг друга, делиться мыслями и вместе понимать мир, не уставая слишком сильно.
P.S.
Меня зовут Алекс Гусев. Я попросил LLM пересказать текст своей публикации на уровне 5-летнего. Получилось вот это :-) Но там, дальше, всё не так просто. Там всё сложно. Там даже мне сложно.
Читать далееАнимация смены темы в Android-версии Telegram на протяжении долгого времени вдохновляет разработчиков на попытки реверс-инжениринга этого красивого трюка: в сети немало подробных гайдов, как сделать подобную анимацию при помощи традиционных XML View и даже Flutter. Но реализаций этой элегантной (хоть и совершенно бесполезной) анимации на Jetpack Compose мне найти так и не удалось, что привело к созданию маленькой библиотеки для анимирования смены темы.
Вера в будущее KMP также подтолкнула меня к тому, чтобы сделать ее из коробки готовой к установке в Compose-Multiplatform проекты, с поддержкой всех основных платформ (Android, iOS, Desktop JVM, Web WASM+JS).
Хотя сама библиотека вышла крайне компактной, ее реализация оказалась довольно нетривиальной на мой субъективный взгляд и может быть интересна каждому, кто изучает Compose или ищет подобные решения для своего проекта.
На старте написания библиотеки сами собой возникли ряд требований, которым она должна была отвечать:
Читать далееАстрология и сопутствующие эзотерические практики не имеют научного обоснования. С позиции доказательного подхода это форма шарлатанства, основанная на вере в корреляцию между положением небесных тел и человеческой судьбой. Несмотря на это, рынок подобных услуг существует и оценивается в миллиарды долларов ежегодно. По статистике, каждый третий взрослый человек на планете обращался к астрологии в той или иной форме.
До появления мощных языковых моделей цифровые инструменты в этой области были примитивны — генераторы общих гороскопов, простые расклады карт. Они не могли конкурировать с живыми консультантами по глубине анализа и персонализации. Профессиональные астрологи используют сложные расчеты эфемерид, систем домов, аспектов. Их услуги стоят дорого, так как требуют времени и определенной экспертизы, даже если сама экспертиза построена на непроверяемых предпосылках.
ИИ-ассистенты астрологи, бесплатный разбор нейросетями натальных карт меняют эту экономику. Они способны выполнять точные астрологические расчеты за секунды и генерировать развернутые текстовые трактовки, не уступающие по формальным признакам человеческим. Ключевое отличие — себестоимость такой консультации близка к нулю. Модель не «верит» в астрологию, она лишь обрабатывает данные по заданным алгоритмам и шаблонам, извлеченным из корпуса эзотерической литературы.
В общем, мы по-своему воюем с шарлатанами, обесцениваем их труд. Если сложный расчет натальной карты можно получить бесплатно за несколько кликов, мотивация платить крупные суммы живому астрологу снижается. Это сокращает финансовые потоки в индустрии, оставляя в ней только тех, кто готов платить за ритуал общения с человеком, а не за сам результат вычислений.
Читать далееМожно получить идеальные 60 FPS и зелёные метрики — и всё равно услышать от пользователей «невозможно работать». Потому что мозг прощает “мыло”, но не прощает задержку: курсор начинает жить своей жизнью, клики “не туда”, печать с запозданием.
В этой части разбираю Input Channel, Cursor Channel и round-trip latency: почему SPICE таскает курсор отдельным каналом, откуда берётся эффект «курсор на резинке», чем отличается server mouse mode от client mouse mode, и почему без usb-tablet / vdagent всё быстро превращается в квест.
Третья статья серии — про то, что реально определяет UX в VDI: не картинка, а отклик.
Читать далее2025 год стал для ИИ временем отрезвления. Эпоха масштабирования подходит к концу. Эксперты сходятся во мнении, что простым увеличением данных и вычислительной мощности следующий качественный скачок не совершить. На первый план выходят новые архитектуры, компактные модели и принципиально иные подходы к обучению.
В 2026 году индустрия, похоже, даст ответ на вопрос, что ИИ может дать нам здесь и сейчас. Мы вступаем в эпоху прагматичного ИИ.
Попробуем разобраться, какие именно тенденции определят лицо ИИ в наступающем 2026-м году.
Читать далееВсем привет!
Идея LensDB родилась с простого поста моего друга. он делился своим опытом создания Shared Memory кэша для своего пет-проекта на C#. В этом посте он написал:
Читать далееQ65 — цифровой протокол, разработанный Джо Тейлором (K1JT) и его командой в 2021 году для проведения минимальных связей в условиях сложных трасс прохождения радиосигнала.
В предыдущей части части были рассмотрены общая структура протокола и алгоритмы формирования сигнала. В этой части статьи рассматриваются принципы цифровой обработки сигналов и синхронизации в протоколе Q65.
Статья может быть интересна радиолюбителям и людям, интересующимся темой цифровой обработки сигналов.
Читать далееКак я летом собирал игровой ПК с запасом на пару лет, а теперь, благодаря «Кризису памяти» он стоит в 1,5 раза дороже.
Читать далееТак уж случилось, что из разработки железа и встроенного ПО я постепенно ушел в безопасность. А в дальнейшем и в пентест. Мой первый заказ по чтению залоченной прошивки.
«Нет никакой защиты, есть только количество времени и знаний, необходимых для достижения цели.»
Читать далееКак вы знаете в STM32 много 16 битных таймеров. При этом их разрядности порой не достаточно для получения тайм штампов.
Проблема в том, что в STM32 таймеры обладают очень низкой разрядностью. Большинство таймеров 16 битные. Есть только два 32 битных таймера и они обычно чем-то заняты.
При этом большинство прошивок требуют возможности получать микросекундные тайм штампы. Это нужно для выдерживания пауз, для планировщика, для подписывания логов и прочего. То есть нужен таймер, который увеличивается на 1 каждую 1 микросекунду и не переполняется в обозримой перспективе.
В случае 16 битного таймера такой таймер будет переполняться каждые 65 ms. Это плохо.
Попробуем разобраться, что делать в этой ситуации.
Читать далееСтандарт ISO 7816 состоит из 15 частей и главным образом нацелен на приведение к общему виду тех отраслей, что используют смарт-карты. Четвертая часть документа описывает логическую структуру файловой системы, получившую широкое распространение: ее можно встретить в идентификационных документах, средствах криптографической защиты информации, в банковском секторе и телекоме.
Читать далееПривет, студент! (а может, уже и не студент)
Я уже больше 5 лет учусь в университете, 4 года из которых эффективно совмещаю с работой. Чтобы успевать по учёбе, я использовал собственный способ отслеживания прогресса по ней. Благодаря методу я всегда сдавал все предметы вовремя и ни разу не был на допсе.
Мой метод совмещает в себе некоторые элементы гибких методологий и обычного «списка задач». Метод оказался для меня настоящим спасением в университете! Я делился им со знакомыми, а теперь хочу поделиться им со всеми.
Читать далееПроснулись, потянулись, зашли в новости, а там за ночь вышло пять новых нейросетей, две из которых уже успели устареть, пока вы чистили зубы. Добро пожаловать в реальность, где вчерашний прорыв сегодня годится только для мемов. Бедный Уил Смит и спагетти. Мы тут только-только привыкли к 2025-му, а индустрия уже вовсю пакует чемоданы в 2026-й.
Кажется, если моргнуть чуть дольше обычного, можно пропустить момент, когда ваш холодильник начнет писать код на Python.
Чтобы не потеряться в этом бесконечном параде релизов и не пытались гуглить ответы в Яндексе, мы собрали «Арсенал 2026». Это те инструменты, которые помогут не просто разобраться в мире ИИ, но и заставить его работать на вас, пока остальные всё еще пытаются правильно составить промпт для генерации котиков.
Разминайте пальцы и готовьтесь - сейчас будем смотреть на то, с чем мы влетаем в этот год.
Приятного прочтения!
Читать далееАвтор: Денис Аветисян
Обзор посвящен стремительно развивающейся области применения больших языковых моделей для оптимизации, трансляции и конструирования компиляторов.
Читать далееВ детстве, которое пришлось на 90-е, мне очень хотелось иметь Интернет. Родители не собирались его подключать, поэтому я позвонил провайдеру и сказал, что хочу создать аккаунт. У меня спросили фамилию, я назвал вымышленную. Потом у меня спросили номер кредитной карты, я сказал, что мне нужно найти бумажник, после чего я перезвоню.
Из книги Big Secrets и нескольких выпусков журнала 2600 я знал пару фактов о кредитных картах. Номера карт American Express всегда состояли из 15 цифр и начинались с тройки, а номера карт Visa состояли из 16 цифр и начинались с четвёрки. Первая пара цифр обозначала банк-эмитент, затем шёл номер счёта; последняя цифра вычислялась при помощи алгоритма Луна и использовалась как контрольная сумма всех предыдущих цифр.
Читать далееСамый частый вопрос к тезису о том, что языковые модели не думают - чисто практический.
В предыдущей публикации я выдвинул тезис, который многих заставил почувствовать себя неуютно: большие языковые модели не мыслят. Они не рассуждают так, как это делает человек. Они лишь предсказывают следующий токен.
Самым частым возражением было не философское, а практическое:
«Если это правда, то как ИИ удается заниматься арифметикой?»
Сложение, вычитание, умножение - эти процессы кажутся точными, механическими и основанными на строгих правилах. Они выглядят полной противоположностью «размытому» предсказанию языка. Поэтому естественно предположить, что где-то внутри модели спрятан калькулятор или нечто очень на него похожее.
Но его там нет. Однако происходит кое-что весьма любопытное.
Читать далееБольшинство гайдов по C# в Интернете или давно утратили актуальность, или содержат лишь небольшие вкрапления новых возможностей, но лишены последовательности. Есть и другая крайность - ИИ простыни сгенерированного текста под видом статей, которые очень тяжело читать. Я хочу сделать свою попытку изменить ситуацию.
Читать далееРазвивая идею доверенного языка программирования я пришел к выводу, что за счет ограничений синтаксиса и создания соответствующих проверок в статическом анализаторе кода, можно защититься практически ото всех технических ошибок, кроме двух - контроль динамически выделяемой памяти и переполнения стека.
Причем, если для подсчета ссылок в рантайме, решения существуют, то контроль переполнения стека невозможно сделать не только во время анализа исходного текста программы, но это практически невозможно и во время выполнения приложения! Ведь ошибка переполнение стека (stack overflow) - это всегда фатально, так как не существует способа поймать и обработать эту ошибку изнутри выполняемой программы, чтобы потом продолжить её выполнение как ни в чем не бывало.
Существует ли хотя бы теоретическая возможность защититься от ошибок переполнения стека и сделать из нее обычную ошибку (исключение), которую можно поймать (обработать) в самом приложении, чтобы была возможность продолжить выполнение программы без боязни последующей ошибки сегментации (segmentation fault) или повреждения стека (stack smashing)?
Читать далее