Техдиректор Microsoft Azure с помощью ИИ за два дня портировал на macOS старую утилиту для Windows. macOS.. macOS. microsoft.. macOS. microsoft. windows.. macOS. microsoft. windows. zoomit.. macOS. microsoft. windows. zoomit. искусственный интеллект.. macOS. microsoft. windows. zoomit. искусственный интеллект. искуственный интеллект.. macOS. microsoft. windows. zoomit. искусственный интеллект. искуственный интеллект. марк руссинович.. macOS. microsoft. windows. zoomit. искусственный интеллект. искуственный интеллект. марк руссинович. портирование.. macOS. microsoft. windows. zoomit. искусственный интеллект. искуственный интеллект. марк руссинович. портирование. программа.. macOS. microsoft. windows. zoomit. искусственный интеллект. искуственный интеллект. марк руссинович. портирование. программа. Софт.. macOS. microsoft. windows. zoomit. искусственный интеллект. искуственный интеллект. марк руссинович. портирование. программа. Софт. Управление разработкой.

Программист Microsoft Марк Руссинович, который в настоящее время является техническим директором Microsoft Azure, использовал искусственный интеллект, чтобы перенести инструмент Windows ZoomIt, который он поддерживает более 20 лет, на macOS за выходные.

Техдиректор Microsoft Azure с помощью ИИ за два дня портировал на macOS старую утилиту для Windows - 1

ZoomIt предназначается для масштабирования экрана, записи и аннотирования. Первоначально Руссинович создал его, потому что ему нужен был лучший способ объяснять работу Windows аудитории. За прошедшие годы ZoomIt приобрёл такие функции, как запись экрана, наложение веб‑камеры и редактирование видео.

С помощью ИИ Руссинович создал практически работающую версию ZoomIt для macOS всего за два дня. «Не сказать, что в нём не было нескольких ошибок, но я прошёл 90 с лишним процентов пути. Я был ошеломлён», — сказал он.

Прежде чем создать ZoomIt, он и его соавтор Дэвид Соломон опробовали инструмент, поставляемый с ноутбуками Toshiba: «Мы наткнулись на встроенный инструмент, который поставлялся с ноутбуками Toshiba, которые Дэвид использовал для этого, и я начал его использовать, и он показался мне невероятно неуклюжим. У него была неудобная комбинация клавиш для его запуска. Он был ограничен в типах рисунков, которые он мог делать, и, как правило, его было немного сложно использовать».

Руссинович создал ZoomIt, который позволял ему рисовать линии, стрелки и рамки вокруг того, что он объяснял. По его словам, сотрудники, демонстрировавшие Git, GitHub, Copilot и Visual Studio Code на ноутбуках MacOS, просили именно комбинацию инструментов масштабирования и рисования ZoomIt.

Техдиректор Microsoft Azure с помощью ИИ за два дня портировал на macOS старую утилиту для Windows - 2

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

ZoomIt не похож на Snipping Tool, ShareX или встроенный в macOS инструмент для создания снимков экрана, который просто захватывает экран и позволяет рисовать. Он буквально работает в реальном времени поверх приложений и даже записывает экран. Чтобы создать что‑то подобное для macOS, Руссиновичу нужно было узнать, как на самом деле устроена эта ОС, в том числе как она работает со звуком, видео и захватом экрана.

«До появления ИИ я бы никогда даже не подумал об этом», — объяснил Руссинович, охарактеризовав процесс обучения как «очень утомительный».

В конце концов он решил сделать что‑нибудь с ZoomIt на macOS и купил себе Mac. В субботу программист потратил около часа на настройку его в корпоративной среде Microsoft и начал использовать ИИ для создания основы для ZoomIt.

«Я начал постепенно создавать версию для Mac… На всё это ушло около получаса и примерно дюжина запросов к нейросети. Это оказалось гораздо быстрее и проще, чем я ожидал», — признал он.

Руссинович продолжал работать над версией ZoomIt для macOS все выходные, добавляя функции одну за другой. Помимо исправления найденных ошибок, он решил не включать функцию DemoType, позволявшую преподавателям вводить заранее подготовленный текст во время демонстраций или учебных занятий, поскольку полагал, что ею никто не пользуется. Однако позже выяснилось, что пользователям ZoomIt эта функция всё же важна, поэтому он попросил ИИ добавить её и в версию для macOS.

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

Техдиректор Microsoft Azure с помощью ИИ за два дня портировал на macOS старую утилиту для Windows - 3

Однако это решило лишь половину задачи: ИИ предстояло ещё понять, как воспроизвести поведение, характерное для Windows, в среде macOS. Что ещё важнее, самому Руссиновичу пришлось бы вникать в принципы работы соответствующих систем macOS. Хотя он сам создал ZoomIt, а в распоряжении ИИ был эталонный код, понимание того, что программа записывает изображение с экрана и звук с микрофона, не дает готового ответа на вопрос, как именно реализовать этот функционал в macOS.

Техдиректор Microsoft Azure с помощью ИИ за два дня портировал на macOS старую утилиту для Windows - 4

«Мне не пришлось ничего изучать — система сделала всё сама», — отметил Руссинович, говоря о специфических для платформы механизмах, с которыми он ожидал столкнуться при разработке.

Он также продемонстрировал утилиту Demo Mirror, позволяющую выводить изображение всего экрана или его части на второй монитор, не выходя из режима показа презентации в PowerPoint: «Я подключил внешний монитор и смог показать полностью готовый, работающий инструмент. Вот, собственно, и всё, что потребовалось для запуска Demo Mirror. Жаль, конечно, что я не создал эту программу давным‑давно, но теперь она у нас есть». 

ZoomIt для Mac — это бесплатная программа с открытым исходным кодом; для ее работы требуется macOS 14 Sonoma или более новая версия системы. Программу можно скачать напрямую с GitHub‑репозитория Microsoft. Последнее обновление ZoomIt для macOS вышло месяц назад, а размер файла составляет всего 1,4 МБ. Для начала работы используются следующие сочетания клавиш: Control+1 — для масштабирования, Control+2 — для рисования, Control+5 — для записи экрана, Control+6 — для копирования выделенной области экрана в буфер обмена. Их можно изменить в настройках. 

Ранее к Руссинович рассказал об успешной реконструкции и поиске уязвимостей в старом коде с помощью ИИ. Он привёл в качестве примера собственный код Apple II 40-летней давности. Руссинович поручил Claude Opus 4.6 проверить код. Программа декомпилировала машинный язык и обнаружила несколько проблем безопасности, включая случай «скрытого некорректного поведения», когда, если целевая строка не была найдена, программа устанавливала указатель на следующую строку или за конец программы, вместо того чтобы сообщать об ошибке. Решением могло бы стать проверка флага переноса, который устанавливается, если строка не найдена, и переход к ошибке.

Автор: maybe_elf

Источник