Интернет снова доказал, что из скучного железа можно сделать мем.
Один энтузиаст выложил проект, который использует встроенный акселерометр Mac: при ударе или резком касании ноутбук воспроизводит звук. Причём сила звука зависит от интенсивности удара — чем сильнее толчок, тем эмоциональнее реакция.
Да, по сути Mac начинает «стонать» при контакте.
Как это вообще работает
Внутри ноутбуков есть датчики движения — они нужны для защиты жёсткого диска или отслеживания положения устройства.
Разработчик просто подключился к этим данным и связал силу удара с воспроизведением аудиофайла.
Технически это простой, но эффектный трюк — немного кода, немного звука, и обычный ноутбук превращается в интернет-аттракцион.
Это бессмысленно? Немного. Весело? Да.
С практической точки зрения пользы ноль. С точки зрения мем-культуры — сто из ста.
Такие проекты напоминают, что технологии — это не только про серьёзные задачи, но и про абсурдное творчество.
Ребят, если хотите краткие и необычные новости про технологии и интернет, публикую такие посты у себя в Telegram Там всё коротко и по делу.
OpenAI совершает тихую революцию в разработке ПО: компания выпустила десктопное приложение Codex для macOS, превратив ИИ из помощника-одиночки в полноценную команду автономных агентов, которые могут параллельно писать код, тестировать его и даже проектировать интерфейсы, пока вы не спеша пьёте кофе, управляя их работой из центра управления.
Codex для Mac — запускайте несколько ИИ-агентов параллельно, создавайте навыки и настраивайте автоматизации в центре управления для агентного программирования.
Что изменилось: от «напиши функцию» к «построй игру за меня»
Раньше ИИ-кодеры работали как стажёры: получали задачу, выполняли, ждали новой от вас. Теперь Codex управляет целой бригадой специалистов:
Один агент генерирует спрайты через GPT Image
Второй пишет игровую логику на JavaScript
Третий тестирует результат, играя в собственноручно собранную игру
Четвёртый деплоит сборку на Vercel
Всё это по одному промпту. В демонстрации от OpenAI система за несколько минут собрала гоночную игру в стиле Mario Kart: 8 треков, коллекция машин, система бонусов. При этом ИИ самостоятельно «примерил» роли дизайнера, разработчика и QA-инженера и даже протестировал геймплей, управляя машиной.
Ключевые фишки приложения
«Рабочие деревья» без конфликтов Несколько агентов могут одновременно править один репозиторий, не ломая друг другу ветки. Каждый работает с изолированной копией кода, как будто у вас в команде трудятся дублёры, которые никогда не переписывают чужие коммиты.
Навыки (Skills) позволяют ИИ выходит за рамки только кодирования Codex теперь умеет не только писать код, но и вытаскивать дизайн из Figma, заводить задачи в Linear, генерировать отчёты в PDF и Excel, деплоить в облака (Cloudflare, Vercel), собирать данные из веба.
Всё это упаковано в навыки (папки с инструкциями, скриптами и ресурсами для ИИ), которые можно вызывать по имени или позволить ИИ выбирать автоматически.
Автоматизации на автопилоте Настройте рутинные задачи: приоритизацию и исправление ошибок, анализ логов, подготовку заметок к выпуску — и пусть Codex выполняет их по расписанию. Результат работы целой команды поступит к вам на проверку. Вам останется только проконтролировать его в удобное для вас время и управлять работой коллектива ваших ИИ-агентов.
Выбери характер ассистента Хотите лаконичного исполнителя, который молча делает дело? Или общительного напарника, который объясняет каждый шаг? В Codex можно переключать «личность» агента командой /personality без потери функционала.
Безопасность «из коробки»
Агенты по умолчанию работают в песочнице: редактируют файлы только в указанной папке, используют кэшированный веб-поиск и спрашивают разрешения перед запуском команд с повышенными привилегиями (доступ к сети, системные вызовы).
Как может попробовать?
На ограниченное время доступ к Codex открыт для пользователей тарифов ChatGPT Free и Go. Владельцы платных тарифов (Plus, Pro, Business, Enterprise и Edu) получают постоянный доступ с удвоенными лимитами запросов в честь запуска.
Codex перестал быть просто ИИ-агентом и превратился в центр управления для агентного программирования. Теперь разработчик это не тот, кто пишет код, а тот, кто управляет командой ИИ, ставя цели и принимая архитектурные решения. Эпоха «кодинга в одиночку» подходит к концу — добро пожаловать в эру цифровых коллективов.
Всем привет. Делюсь своими изысканиями по запуску виртуальных машин MacOS на процессорах AMD. Возможно кому-то будет полезным: Предыстория: в наличии несколько виртуалок, с которыми долгое время не было никаких проблем. Версии - от Mojave до Monterey, они даже обновлялись штатно. Далее, при апдейте на Ventura/Sonoma ловим кернел панику - никакие рекомендации из интернета не помогли. Глаз пал в сторону хакинтоша, но как его конфигурировать под вмварь тоже оказалось не совсем понятным, поэтому и напишу этот гайд: вводные - Ryzen 5950X, Windows 10, VMware Workstation 16.2 (была версия 16.0, пока не столкнулись в проблемой апдейта макоси).
Что понадобится (чем пользовался лично я): OCAT - графический редактор plist ProperTree - еще одна редачилка plist'a, мне через нее было удобно копипастить блок с патчем для AMD (удобно открыть patches.plist из репы, и выдернуть оттуда весь блок patch, чтоб вставить его в наш конфиг) Рекомендация по настройке конфига под амуде Готовые SSDT для нубасов вроде меня (насколько я понял это таблицы с ID оборудования, которое инициализируется при старте ОС. Что-то подобное можно создавать самому уже на конкретном железе. У меня стоял вопрос - а каким оно должно быть и как его создать на VMware, возможно кто-то из шарящих в теме пояснит в комментах, как это работает, и как это связано с DSDT таблицами) Гайд по EFI драйверам и кекстам - по кекстам я ниже еще отпишу. А драйвера я оставил все, которые идут с редакцией OpenCore, но не все они обязательны. Ну и загрузчик OpenCore собственной персоной Кастомный .vmdk диск, с которого мы будем бутаться. (создаем сами) Выкладываю свою версию EFI - для ЛЛ, но не факт, что именно с ней у вас все взлетит.
Теперь по OpenCore, что он из себя представляет: Нас интересует версия X64, внутри есть папка EFI, ее в дальнейшем нужно будет закинуть на наш загрузочный раздел. При включении нашей виртуалки первым делом бутается /EFI/BOOT/BOOTx64.efi, который затем запускает /EFI/OpenCore.efi (если вы будете в firmware виртуалки указывать файл загрузчика, указывайте путь к BOOTx64.efi) Что еще внутри папки EFI : EFI/OC/ACPI - тут лежат SSDT/DSDT таблицы оборудования. Если удалять лишнюю, обязательно нужно проверить, чтоб не было ссылок на нее в config.plist иначе будет краш. EFI/OC/Drivers - тут лежал драйверы .efi. OpenRuntime.efi и HfsPlus.efi обязательны, я не стал удалять лишние драйвера, но ради интереса поигрался и выяснил, что без OpenCanopy.efi, OpenLinuxBoot.efi, OpenLegacyBoot.efi - загрузчик не взлетал. Насколько я понял, эти драйвера не влияют на дальнейшую работу макоси, а сугубо отвечают за работоспособность загрузчика и его возможности. EFI/OC/Kexts - тут валяются расширения ядра (kext - kernel extension), нужны для успешного запуска самой макоси, а так же для корректной инициализации и работы устройств. Любой хакинтош начинается с Lilu.kext, затем должен идти фейковый SMC (я заводил тачку с VirtualSMC.kext), потом уже все остальное. Их последовательность определяется конфигом config.plist, в каком порядке они указаны, в таком они и будут инжектиться при загрузке ОС. Экспериментальным путем выяснено, что система не бутается без: AppleMCEReporterDisabler.kext - Required on macOS 12.3 and later on AMD systems, and on macOS 10.15 and later on dual-socket Intel systems. *из доки по OpenCore CryptexFixup.kext - Я так понял, что это обязательный кекст не только для AMD, но и для Intel до Haswell NoAVXFSCompressionTypeZlib-AVXpel.kext - возможно избыточно, без него тоже бутается. На всякий случай оставил: VoodooHDA.kext - инициализация звука в MacOS HibernationFixup.kext - на виртуалке проще отключить сон, но если что, возможно это будет фиксить. Дело в том, что под хакинтошами у макоси есть проблемы со сном, вернее с выходом из него) Whatevergreen.kext - фикс инициализации графики, по идее он не нужен, т.к. есть VMWARE tools
Создаем свой .vmdk: Для его создания я создавал новую виртуалку, "установлю потом", тип системы other, диск 0.2GB, но вмварь тогда создает диск IDE, поэтому я его удалил, и пересоздал уже как SATA. Размер выбрал с потолка, сам EFI весит около 10-15 МБ. Поэтому можете назначить меньше. Из доп. настроек нужно выбрать store virtual disk as a single file Далее монтируем этот диск через Daemon Tools. Теперь открываем оснастку управления дисками, для этого жмем WIN+R, вводим diskmgmt.msc и enter, система тут предложит проинициализировать новый диск. Выбираем GPT, жмем ОК. Далее создаем том и форматируем в FAT32, в Label вписываем любой удобный и понятный, я так и назвал OpenCore. Все, теперь осталось закинуть на диск папку EFI, размонтировать диск и можно с него бутаться.
Несовместимость виртуалки и vmdk диска (если подкидываем к уже готовой машине)
При попытке подсунуть загрузочный vmdk в виртуалку, которая была создана в более старой версии VMware скорее всего вылезет ошибка:
Варианта 2: либо пересоздавать новый vmdk для этой виртуалки, форматить его и засовывать туда EFI либо конвертнуть виртуалку: жмем по ней правой кнопкой мыши → manage → Change Hardware Compatibility Мой первый EFI был создан в версии 16.2.x, поэтому выбираю ее, чтоб версия совпадала с той, в которой он создавался. Далее вмварь спросит, хотите склонировать или конвертировать текущую билд-тачку. Тут уже на ваше усмотрение, у меня с конвертацией проблем не возникло, но я не уверен, что их точно не будет. После конвертации диск подцепится без ошибок)
Что дальше? Отныне любая макось, будь то инсталлер или уже установленная версия - должны запускаться только через наш кастомный EFI. Иначе в дальнейшем у них будет паника ядра. С чистой установкой все просто: (не буду останавливаться на том, как создать новую ВМ, как пропатчить ее unlocker'ом, как создать диск, выделить ресурсы и т.д.) Добавляем в виртуалку наш EFI, в настройках смотрим на какой порт сата он добавился (можно сделать SATA 0:0, а можно забить - на ваше усмотрение. В виртуальный CD добавляем .iso образ установщика макоси (можно взять с торрента, либо зашить самому, но для этого нужен отдельный гайд). Далее в VMware выбрать Power on firmware
После этого у нас будет возможность бутануться с нужного диска, тут нам и понадобиться номер порта SATA
мой пример: 0:0 это EFI, 2:0 это целевой диск с макосью, 1:0 CD дисковод с инсталлером.
Выбираем диск, жмем Enter. Далее мы попадаем в меню OpenCore:
Скрин для примера, тут конфиг с уже установленной системой
Если нажать пробел, появятся дополнительные опции загрузки
OpenCore делает ВЖЖ ВЖЖ
Бутаем установщик и далее штатно проходим установку (не забываем запустить дисковую утилиту в установщике и отформатировать наш целевой vmdk в формат APFS).
Для тех, кто хочет обновить свой старенький Monterey У вас варианта два, либо обновляться штатно, через Software Update, либо обновляться с iso (точно так же, как чистая установка в абзаце выше, но без форматирования целевого диска) Правило одно в обоих случаях - перед апдейтом, вы должны обязательно бутаться с кастомного загрузчика. Если макось словит Kernel Panic в процессе обновления (она несколько раз рестартится пока идет процесс обновления), то ее попердолит так, что даже с подсунутым EFI она не будет бутаться. Перед апдейтом можете снять снапшот, откат поможет в случае если что-то пойдет не так.
Какие могут быть проблемы
Если макось в процессе рестартов установщика загрузится не через OpenCore, а напрямую, и словит панику - ее уже будет не восстановить. (выше уже писал об этом, но лучше задублирую - это важно!)
Если после успешной загрузки макоси не работает мышь/клава, либо у мыши очень высокая чувствительность, что невозможно ею пользоваться - нужно проверить в настройках виртуалки версию USB контроллера. Должна быть 3.1. доп. может понадобиться VoodooPS2Controller.kext
Проброс Bluetooth лучше убрать (там же, где настройки USB)
Перед изменением количества ядер, выделенных виртуалке, лучше править патчи в config.plist на EFI разделе. Иначе тачка будет вставать в фриз: Патчи для AMD Без них будут проблемы. У меня зависало, если выделял больше 4х ядер. "C:\Program Files (x86)\VMware Workstation\vmrun.exe" -T ws stop "путь к виртуалке.vmx"
UPD: вынесу отдельно: из непофикшеного есть проблема с рестартами виртуалки. Она успешно останавливает систему и повисает
При этом кнопки Power OFF в VMware неактивны
Прибить ее можно из командной строки (путь до vmrun.exe может отличаться: "C:\Program Files (x86)\VMware Workstation\vmrun.exe" -T ws stop "путь к виртуалке.vmx"
Сегодня я расскажу о трех приложениях, позволяющих интегрировать Chat GPT в Mac OS, VS Code и Терминал
Первым приложением будет Raycast, это аналог Spotlight для вашей Mac OS. Это приложение с широкими возможностями и множеством плагинов, например Jira, Notion, Obsidian, Google Translator и множеством других расширений, которые можно бесплатно установить из встроенного магазина, а так же расширения можно писать самому. Raycast имеет плагин Chat GPT, позволяющий интегрировать этого помощника прямо в ваш новый Spotlight с полными возможностями GPT. Все, что вам нужно - установить его через home brew и иметь API токен, который можно купить например за 75 рублей в интернете, если вы из России
Второе приложение - AI Shell, позволяющее писать команды в терминал своими словами. Приложение преобразует их в скрипт, который выполняется в терминале, а так же AI Shell имеет встроенный чат. Гайд по установке есть в Readme репозитория
Третье приложение - расширение для VS Code CodeGPT, данное расширение позволяет автоматически писать тесты, комментарии, искать и исправлять ошибки, а так же свободно общаться с GPT в чате внутри редактора кода