- Подписка на печатную версию:
- Подписка на электронную версию:
- Подшивки старых номеров журнала (печатные версии)
LXF117:Есть ли жизнь в Сети?
Материал из Linuxformat.
Содержание |
Есть ли жизнь в Сети?
- Споры о том, можно ли доверять свои драгоценные данные стороннему сервису, не утихают, но «раз звезды зажигают, значит, это кому-то нужно». Евгений Крестников размышляет, как Linux-пользователь может сделать это с максимальным удобством.
Возможности онлайн-сервисов уже не ограничиваются только поиском информации в Сети. Компании пытаются предложить пользователям как можно более широкий функционал — в Web вы можете хранить свои документы и медиа-контент, ссылки на интересные сайты или короткие заметки, а также вести собственный блог или работать с электронной почтой.
Здесь же есть службы для отправки текстовых сообщений и голосового общения через Интернет. Еще немного, и мощный компьютер будет уже ни к чему: хватит простого абонентского терминала с доступом к сети – прочим функционалом займутся сервис-провайдеры. И если говорить о путях развития Всемирной паутины, в голову приходит одно слово – интеграция. Сегодня она стала основным вектором развития сетевых технологий. Это вполне естественно – если все ваши данные размещены в Интернете, работать с ними удобнее через единую службу. Один из лидеров этого рынка – компания Google. Думаем, в представлении она не нуждается: все знают, что такое Gmail, Google Talk [особенно после «встряски», устроенной пользователям ICQ в начале этого года, – прим. ред.], Google Maps, Google Picasa и т.д. Список онлайнсервисов Google постоянно увеличивается; кроме того, разработчики компании уделяют немало внимания взаимодействию уже существующих служб между собой. Наверное, в обозримом будущем вам предложат некий Google-терминал, который сможет заменить персональный компьютер. Тогда будет уже неважно, откуда и из какой ОС вы входите в Сеть. Но пока этого не произошло, возникает проблема интеграции онлайн-сервисов в рабочее окружение персонального компьютера. Давайте посмотрим, что пред- лагает Google пользователем Linux.
Работа в Сети: миф или реальность?
Для начала поставим задачу. Пусть есть некий человек, который желает максимально использовать возможности Google. Зачем ему это нужно? Наверное, он мобилен и хочет получать доступ к своим данным с различных машин. Кроме того, он не всегда находится онлайн и желает иметь возможность работать с локальными копиями документов. Дополнительное условие: все его компьютеры работают под управлением GNU/Linux.
Итак, проблема ясна. Понятно, что для ее решения придется «подружить» Google и Linux. Возникает вопрос: как это можно сделать? Мы видим несколько способов, и ниже приведем их описание с комментариями Майкла «Chewy» Тревеллы [Michael Trewhella], консультанта Google по вопросам разработок.
Способ первый (традиционный) – доступ к сервисам через браузер. В нем нет моментов, специфичных для Linux, поэтому заострять внимание на этом пути мы не будем. Майкл комментирует ситуацию так: «Наши сервисы ориентированы на Web и доступны из любых платформ, включая мобильные». Если учитывать перспективы развития данного направления, это вполне естественно – тонкие клиенты будут работать в Сети именно при помощи браузера. С приоритетами все ясно, а вот что Майкл говорит о развитии: «Мы стремимся к совершенствованию наших сервисов. Сотрудники Google читают все группы, связанные со страницами помощи по каждому продукту. Они просматривают отклики и комментарии пользователей по поводу возможностей и ошибок. Информация передается разработчикам, которые решают, стоит ли учитывать этот отзыв в стратегии развития сервиса. Во многих случаях, количество отзывов оказывает реальное влияние на улучшение продукта, поэтому, если у вас есть мысли о том, каким образом мы можем добиться улучшений, Google призывает вас принять участие в обсуждении». Единственный существенный недостаток web-сервисов – необходимость постоянного доступа к Сети. Конечно, разработчики пытаются решить и эту проблему, но большая часть функционала оффлайн-пользователям недоступна. По сути, это единственное, что удерживает людей от массовой «миграции» во Всемирную паутину.
Способ второй – доступ к сервисам из стандартных клиентов. Подобным образом вы можете работать с Gmail, Google Talk, адресной книгой или, скажем, Календарем Google. Так можно подключить любые сервисы, применяющие стандартные протоколы. Мы не пытаемся написать очередной HOWTO – на просторах Web есть немало материалов по настройке клиентских программ для работы с сервисами Google. Главным преимуществом данного подхода являются более широкие возможности доступа к информации в режиме оффлайн, недостатком – необходимость устанавливать дополнительное ПО. Кроме того, список сервисов, которые позволяют доступ из стандартных клиентов, сильно ограничен.
Третий способ – использование приложений, разработанных компанией Google. Здесь тоже все непросто: функционал существующих Linux-версий существенно уступает Windows-аналогам. Кроме того, многие программы доступны только под Windows. Но разработчики Google не останавливаются на достигнутом: «Мы хотим предоставлять хорошие продукты и услуги для всех пользователей, независимо от ОС. Google выпускает ряд приложений для Linux, таких как Picasa, Google Earth и Google Desktop. Мы продолжаем совершенствовать их и создавать новые возможности для всех платформ». Кстати, сравнительно недавно был организован собственный репозиторий Google, в котором можно найти ПО для популярных дистрибутивов Linux (http://www.google.com/linuxrepositories/).
Мы же хотим рассказать еще об одном (и, на наш взгляд, самом перспективном) способе интеграции сервисов Google в рабочее окружение Linux. Он основан на использовании открытого API, предоставленного разработчиком. Передадим слово Майклу Тревелле: «API Google Data представляет собой набор интерфейсов чтения и записи данных для широкого спектра онлайн-сервисов Google, используя единый протокол. С его помощью Google позволяет сторонним разработчикам расширять функциональные возможности своих продуктов. Вместо того, чтобы создать API, построенный на разрозненном наборе протоколов, мы решили использовать стандарт AtomPub, основанный на технологиях Atom/XML и HTTP. Это значительно упрощает процесс обучения персонала для сторонних разработчиков. С тех пор, как спецификации AtomPub были утверждены в RFC 5023, многие компании стали создавать API, основанные на этом стандарте. В тех случаях, когда использование подобных интерфейсов не имеет смысла (например, в нашем поиске или Картах), мы предлагаем разработчикам использовать API AJAX».
Почему этот способ кажется наиболее перспективным? Очень просто – при помощи открытого API можно не только расширить функционал web-сайтов, но и обеспечить возможность доступа к онлайн-сервисам Google из различных Linux-приложений. К примеру, мы бы не отказались от возможности работать с Google Docs из OpenOffice.org. Учитывая, что OOo поддерживает расширения в духе Firefox, подобная идея выглядит не так уж фантастично. Разумеется, реализацией таких проектов должны заняться разработчики ПО для Linux, а Google, в свою очередь, должен развивать API. К сожалению, примеры успешной интеграции настольных Linux-приложений с онлайн-сервисами Google через Data API (сокращенно GData) нам пока неизвестны, но определенные шаги в этом направлении уже есть: проекты вроде Goofs (http://code.google.com/p/goofs/) позволяют монтировать сервисы Google через файловую систему FUSE, так что те же Документы Google выглядят в OpenOffice.org как локальные файлы.
Google Data API — шаг в светлое будущее?
Разработка средств оповещения об изменении существующих данных, появлении новых и ретрансляции информации началась в конце 90-х годов прошлого века. Первой ласточкой был RSS, созданный компанией Netscape. Однако его плохая стандартизация (наличие нескольких версий) и постоянные склоки среди разработчиков привели к появлению конкурирующей технологии – Atom. Созданный в Google Data API предлагает разработчикам возможность использовать два формата синдикации на основе XML – Atom 1.0 и RSS 2.0, а также протокол публикации Atom (APP). Безусловно, Atom имеет ряд преимуществ перед RSS – он легко расширяется и обладает большими функциональными возможностями. С помощью APP вы можете отправить HTTP-запрос GET к конкретному ресурсу (например, каналу данных или отдельному сообщению). Ответ от сервера придет в формате синдикации Atom. Кроме того, APP позволяет создавать, редактировать и удалять ресурсы, используя запросы типа POST, PUT или DELETE. К сожалению, ни в одном из стандартов нет возможности отправить серверу запрос на выборку данных по определенному критерию и получить обратно ответ со списком подходящих результатов. Однако у Atom есть механизм расширений, при помощи которого GData может работать с подобными запросами.
Каналы GData поддерживают различные виды служб – блоги, ленты новостей, электронную почту или списки задач. Отправлять запросы и получать их результаты можно с помощью стандартных программ для чтения RSS, через расширения браузера или собственные приложения. Протокол GData нейтрален к языкам программирования – вы можете написать клиент на чем угодно, позволяющем отправлять HTTP-запросы и принимать ответы на основе XML. Есть только одно ограничение: GData не умеет создавать и удалять каналы, это остается прерогативой службы.
Протокол GData поддерживается многими службами Google – на момент написания статьи разработчикам доступны API для доступа к YouTube, Picasa, Blogger, Календарю, Документам и Таблицам Google и другим. Их полный список, а также детальные спецификации протокола можно найти по адресу: http://code.google.com/intl/ru/apis/gdata/
Таким образом, интегрировать, скажем, Документы Google с рабочим столом Gnome или KDE несложно. Проблема состоит в том, что рядовой пользователь вряд ли сможет это сделать.
Ваш выход!
Ваш выход! Итак, мы рассмотрели различные варианты работы с Google из Linux; самое время подвести итоги. К сожалению, в настоящий момент возможности интеграции онлайн-сервисов Google с открытым рабочим столом невелики: доступ через Web не всегда пригоден для полноценной работы, а функционал Linux-приложений в этом смысле весьма ограничен. Что же делать пользователю? Скорее, имеет смысл поставить вопрос иначе: что делать разработчикам сервисов и программного обеспечения? Думаем, им стоит задуматься об интеграции между собой. Ведь решить сформулированную в начале статьи несложную техническую задачу можно уже сегодня, не дожидаясь того «светлого будущего», когда доступ к Интернету станет столь же повсеместным, как сейчас сотовая связь. LXF