"Microsoft и Apple не намерены открывать все свои продукты. Но создаваемые ими программы так или иначе работают с пикселами на экране. И если мы можем менять эти пикселы, то можем изменить и видимое поведение программ", - заметил Джеймс Фогерти, доцент Вашингтонского университета.
Почти все, что мы видим на экране, создано из готовых блоков кода, а инструментарий, получивший название Prefab, ищет эти блоки с частотой 20 раз в секунду и меняет их поведение. Фогарти сравнивает свою идею с HTML. Стандартная веб-страница может отображать карту из Google, встроенное видео YouTube и постоянно обновлять поток RSS, делая все это одновременно, но добиться чего-то подобного с помощью обычных программ для ПК крайне сложно.
Фогарти работает над Prefab почти два года вместе со своим аспирантом Морганом Диксоном. Тот описывает возможности Prefab следующим образом: "Я использую некую программу и добавляю какие-то возможности из других программ, так чтобы у меня был более унифицированный интерфейс".
Несмотря на то что основная часть инструментария готова, Диксон и Фогарти продолжают совершенствовать Prefab и изучают возможность доведения его до коммерческого продукта. Prefab не открывает доступ к исходному коду программ - если речь идет о коммерческом программном обеспечении, у него просто нет такой возможности. Предлагаемый инструментарий в состоянии работать только с тем, что можно просматривать на экране компьютера. "Даже если что-то спрятано в меню на шестом уровне вложенности, если вы это видите, то это может делать и Prefab", - подчеркнул Фогарти.
Он продемонстрировал, как Prefab работает с видео, используя "пузырьковый" курсор, размер которого динамически меняется так, что он всегда указывает на ближайшую цель. При использовании такого курсора вовсе не обязательно точно указывать на кнопку для того, чтобы ее нажать. Пузырьковый курсор дает пользователю возможность нажать кнопку в тот момент, когда курсор находится в ее окрестностях. Это может быть очень удобно для людей с ограниченными физическими возможностями. Пузырьковый курсор с помощью Prefab можно добавить к любому приложению. В этом случае Prefab сначала скопирует пикселы из исходного окна. Затем он интерпретирует пикселы и добавляет дополнения – в данном случае пузырьковый курсор. Потом в окно, которое будет видеть пользователь, выводится окончательный результат, то есть пикселы исходного окна и добавленные дополнения.
Возможность менять программное обеспечение Microsoft, Apple и других компаний может в принципе привести к юридическим проблемам, но Фогерти утверждает: "Мы можем принести огромную пользу этим компаниям".
Фогарти планирует использовать возможности "общественной разработки" и создать онлайновое сообщество для обмена идеями относительно Prefab. "Мы видим, как в Сети расцветает культура коллажей приложений (mashup), и нельзя сказать, что они по своей природе кардинально отличаются от того, что мы делаем", - заметил он.
Фогарти продемонстрировал свою разработку на конференции Computer Human Interface в Атланте. В одном из примеров он, использовав Adobe Photoshop, создал несколько представлений одного файла с изображением. На заднем плане видно, как Prefab перемещается по элементам управления, для того чтобы настроить цвета, контрастность и прочие показатели, собирает получающиеся изображения и показывает их все на одном экране. Таким образом можно сэкономить время при редактировании изображений.