Что такое Веб 2.0. Данные - это следующий Intel Inside
АрхивМнения<b>Третья часть статьи Тима О'Рейли.</b> Все современные интернет-приложения завязаны на базы данных. Компаниям эпохи Веба 2.0 важно уметь работать с БД.
Третья часть статьи Тима О'Рейли "Что такое Веб 2.0". Чтение лучше начать с начала.
Все современные интернет-приложения завязаны на базы данных: поисковик от Google, каталог (и поисковик) от Yahoo!, склад товаров на Amazon, картотека товаров и продавцов на eBay, карты MapQuest, каталоги Napster... Хэл Вэриан в прошлом году даже сказал, что "SQL - это новый HTML". Компаниям эпохи Веба 2.0 важно уметь работать с БД. Так важно, что порой мы называем новые приложения не software, а infoware.
Все это подводит нас к главному вопросу: кто владеет данными?
Очевидно - и тому есть множество примеров, - что в эпоху интернета тот, кто владеет БД, владеет и рынком, а значит, получает львиную долю прибыли. Монополия на регистрацию доменных имен, предоставленная американским правительством компании Network Solutions (позднее куплена Verisign), была одной из первых по-настоящему денежных сделок в интернете. И если сохранить рыночное преимущество, контролируя API, все труднее, контроль над важными источниками данных обеспечить куда проще. Особенно если эти источники дорого воссоздать (или они были обогащены с помощью пользователей сервиса).
Взгляните на копирайты на картах от MapQuest, maps.yahoo.com, maps.msn.com или maps.google.com. Везде будет пометка "Maps copyright NavTeq, TeleAtlas" или "Images copyright Digital Globe" (это новый поставщик спутниковых изображений). Обе компании изрядно вложились в свои БД. (Только NavTeq, как говорят, потратила на создание БД с названиями улиц и маршрутами 750 млн. долларов. Digital Globe пришлось расстаться с 500 млн. долларов, чтобы запустить собственный спутник, делающий снимки с лучшим разрешением, чем правительственные сателлиты.) NavTeq дошла до того, что стала лепить свое лого на автомобили, оснащенные системами навигации, - почти как когда-то Intel со своим Intel Inside.
Данные, несомненно, и есть единственный важный компонент подобных приложений, тогда как сам софт по большей части поставляется в открытом виде, а даже если и нет - все равно вполне доступен.
Давайте на примере высококонкурентного рынка веб-картографии посмотрим, как непонимание важности владения ключевыми данными может ухудшить конкурентоспособность. Первой на рынке веб-карт была MapQuest в 1995 году, за ней пришла Yahoo!, потом - Microsoft, а недавно к ним присоединился и Google, - при этом все компании, лицензируют у поставщиков информации, по сути, одни и те же данные.
Возьмем обратный пример: Amazon. Изначально его БД была построена на регистре кодов ISBN от R.R.Bowker. Базы конкурентов, соответственно, не имели существенных отличий. Но в отличие от MapQuest, Amazon без устали дополнял данные, добавляя информацию, предоставленную издателем, - обложки, содержание, оглавление и даже фрагменты из книг. Что важнее, Amazon привлек пользователей для написания аннотаций, и теперь именно Amazon - а вовсе не Bowker - является главным источником библиографической информации для филологов и библиотекарей, не говоря уж о простых смертных. Также в Amazon был разработан уникальный идентификатор ASIN, покрытие которого шире, чем у ISBN.
В общем, Amazon догнал и перегнал своих поставщиков информации.
Представьте, что точно так же поступила бы MapQuest: привлекла бы пользователей к аннотированию карт и маршрутов и даже к созданию новых информационных слоев. Бороться с такой компанией конкурентам, у которых в наличии только оригинальные лицензированные данные, было бы куда труднее.
Именно этим сейчас занимается Google. Google Maps - это эксперимент по созданию конкуренции между поставщиками данных и разработчиками приложений. Упрощенная модель программирования от Google привела к появлению множества дополнительных сервисов, которые построены на совмещении функциональности Google Maps с другими данными, доступными в интернете. Так, например, housingmaps.com позволяет накладывать на карты от Google риэлторские объявления от Craigslist. На выходе у нас получается новое интерактивное приложение, превосходный пример смешивания технологий.
В настоящий момент подобные гибриды в основном являются инновационными экспериментами, уделом хакеров. Но и предпринимательская активность не за горами. Да уже можно видеть как минимум один класс таких разработчиков - ведь сам Google "увел" роль источника данных от Navteq, превратив себя в популярного посредника. В ближайшие несколько лет мы станем свидетелями самых настоящих битв между поставщиками данных и поставщиками приложений - когда обе стороны осознают, что определенная информация может быть ключевой для построения блоков приложений Веба 2.0.
За определенные классы ключевых данных - местоположение, личную информацию о пользователях, календари общественно-значимых событий, идентификаторы товаров и пространства имен - битва уже началась. Если воссоздать набор информации - удовольствие не из дешевых, то компания, у которой эти данные уже есть, может попытаться воспользоваться своим положением и разыграть карту Intel Inside. В других случаях победит та фирма, чья база данных первой наберет критическую массу с помощью пользователей, - если, конечно, компания сможет обратить эти аггрегированные данные в системный сервис.
К примеру, если мы говорим о сетевой идентификации пользователей, то Paypal, Amazon 1-Click и миллионы пользователей систем связи вполне могут считаться соперниками. (В этом смысле последняя инициатива Google, разрешившего подтверждать аккаунты на Google с телефона, выглядит как попытка расширить свою базу за счет телефонных систем.) С другой стороны, есть такие стартапы, как Sxip, сделавшие ставку на интегрированную личность и пытающиеся создать распределенное и простое решение, на основе которого можно будет построить единую подсистему для всего Веба 2.0. На рынке календарных справочников есть EVDB, пытающийся на базе wiki-подобной архитектуры построить крупнейший совместно пополняемый календарь. И хотя сегодня еще рано делать прогнозы, очевидно, что к появлению приложений нового поколения приведут те стандарты и решения, которые позволят эффективно обратить определенные классы данных в надежные подсистемы "операционной системы интернета".
Прежде чем идти дальше, скажем пару слов о пользователях, берегущих свое privacy и право на владение информацией как зеницу ока. Во многих ранних веб-приложениях копирайт учитывался лишь номинально. Так, права на все обзоры, опубликованные на Amazon, принадлежат Amazon, но компания никого еще не преследовала за их републикацию. Однако как только компании поймут, что контроль над данными и есть их главное конкурентное преимущество, то станут стеречь свои данные куда ревностней.
Как успех проприетарного софта привел к рождению движения Free Software, так и усиление роли проприетарных БД уже в следующем десятилетии приведет к рождению движения за Свободную Информацию. Ранние проявления этой тенденции можно увидеть уже сейчас, в таких проектах, как Wikipedia, лицензии Creative Commons, или в программистских проектах типа Greasemonkey (дает пользователям возможность определять, как именно будут отображаться данные на их компьютерах).
Конец цикла разработки ПО
Одной из главных характеристик современных интернет-приложений является то, что они распространяются в виде сервиса, а не товара. Это, в свою очередь, ведет к фундаментальным изменениям в бизнес-моделях компаний-разработчиков.
Компания должна уметь управлять процессами. Искусству разработки приложений должно сопутствовать умение организовать ежедневные операции для поддержки работы этих приложений. Разрыв между софтом-артефактом и софтом-сервисом так велик, что уже сейчас нельзя написать хороший продукт и забыть о нем - его нужно поддерживать ежедневно. Google каждый день прочесывает веб, чтобы обновлять свои индексы, отсекая поисковый спам. Google должен каждый день обслуживать сотни миллионов запросов, поставляя пользователю не только качественные результаты поиска, но и контекстную рекламу. И неслучайно информация о системном администрировании, обслуживании сетей, балансировке нагрузки и т. п. охраняется Google, пожалуй, даже лучше, чем сами поисковые алгоритмы. Google научился автоматизировать упомянутые процессы, а это - ключевая часть его ценового преимущества перед конкурентами.
Также не случайно, что скриптовые языки - Perl, Python, PHP, а теперь еще и Ruby - играют в жизни компаний Веба 2.0 столь важную роль. Первый вебмастер Sun Microsystems Хасан Шрёдер (Hassan Schroeder) как-то назвал Perl "скотчем интернета".
Скриптовые языки (презираемые программистами эры софтверных артефактов) - это естественный выбор для системных и сетевых администраторов, поскольку разработчики создают динамические системы, требующие постоянного изменения.
Пользователей нужно воспринимать как соразработчиков - как, например, принято при разработке открытого софта (даже если само ПО вряд ли будет выпущено под открытой лицензией). Максима открытого софта - "выпускай релизы раньше и чаще" - теперь формулируется еще жестче: "бесконечная бета-версия". Программы обновляются ежемесячно, еженедельно и даже ежедневно.
Не случайно на логотипах таких проектов, как Gmail, Google Maps, Flickr, del.icio.us и т. п., словечко "beta" может висеть годами.
Отслеживание поведения пользователей в реальном времени позволяет видеть, какие новые свойства используются и как они используются - и это еще одна ключевая составляющая успеха технологии. Веб-разработчик одного из раскрученных сетевых сервисов отмечает: "мы добавляем два-три новых свойства в разные части сайта каждый день, и если пользователям они не нравятся - мы отказываемся от этих нововведений. Если нравятся - внедряем на всем сайте".
Кэл Хендерсон (Cal Henderson), главный разработчик Flickr, недавно рассказал, что новый билд Flickr появляется каждые полчаса. Это совершенно другая модель разработки! И хотя пока не все веб-приложения разрабатываются с такой экстремальной скоростью, почти у всех цикл разработки радикально отличается от всего, что было в эпоху ПК или клиент-серверов. По этой причине редакторы Zdnet даже пришли к выводу, что Microsoft не удастся победить Google: "бизнес-модель Microsoft построена на предположении, что пользователь обновляет свое компьютерное окружение раз в два или три года. Google же зависит от того, что новенького обнаружит пользователь в своем компьютерном окружении сегодня".
Несмотря на то что Microsoft уже продемонстрировала невероятную способность учиться и в конце концов превосходить своих конкурентов, нет сомнений, что конкуренция заставит Microsoft (и - шире - любую современную софтверную компанию) превратиться в компанию совершенно другого типа. Истинным компаниям Веба 2.0 будет проще, поскольку их не тянут назад старые подходы (а также сопутствующие бизнес-модели и источники прибыли).
Упрощенные модели программирования
Как только идея веб-сервисов стала au courant, в схватку вступили большие компании, выкатившие сложные наборы веб-сервисов, позволяющих разрабатывать надежные среды программирования для распределенных приложений.
Успех веба во многом обязан тому, что большая часть теоретических построений, посвященных гипертексту, была отброшена в пользу простых прагматичных решений, которые и послужили основой идеальной конструкции. RSS стал, возможно, единственным широко распространенным веб-сервисом именно потому, что он прост. А сложные корпоративные наборы все еще ждут своего часа.
Amazon предоставляет два типа веб-сервисов. Первый не отступает от формализма SOAP (Simple Object Access Protocol), тогда как второй просто осуществляет передачу XML через HTTP с помощью упрощенного подхода, известного как REST (Representational State Transfer). Веб-сервисы первого типа используются для B2B-транзакций (например, между Amazon и розничными партнерами), но 95 процентов всех операций проводится с помощью REST.
То же стремление к простоте наблюдается и у других "настоящих" веб-компаний. Возьмем Google Maps. Простой AJAX-интерфейс был быстро "разобран" хакерами, которые затем сумели использовать поставляемые данные для организации новых сервисов.
Картографические веб-сервисы были доступны и раньше: от GIS-вендоров (ESRI, например) и таких компаний, как MapQuest и Microsoft MapPoint. Однако Google Maps завоевал мир, благодаря своей простоте. И если экспериментирование с данными веб-сервисов от "настоящих" вендоров требовало заключения контракта, то Google Maps был спроектирован так, что данные можно было сразу использовать в своих целях - и хакеры очень скоро научились это делать.
Отсюда можно вынести несколько важных уроков:
- Поддерживайте упрощенные модели программирования и вы получите свободно-связанных партнеров. Проблема корпоративных веб-сервисов в том, что они предполагают жестко оговоренное партнерство. Во многих случаях это оправданно, но зачастую самые интересные приложения могут быть построены на весьма хрупкой основе.
- Думайте о синдикации, а не о координации. Простые веб-сервисы - как RSS или сервисы на базе REST - занимаются синдикацией данных, не пытаясь контролировать, что происходит с информацией на другом конце цепочки. Идея сквозной передачи данных является одной из базовых идей самого интернета.
- Проектируйте с учетом возможных переделок и улучшений. Системы, подобные вебу, RSS и AJAX, сходны тем, что особых помех для их повторного использования не существует. Большая часть полезного софта находится в открытых исходниках, а если и нет, то имеется не так уж много способов защитить свою интеллектуальную собственность. Стандартная браузерная функция "посмотреть исходник" позволяет любому человеку скопировать любую веб-страницу. RSS был спроектирован для того, чтобы пользователь мог читать контент тогда, когда это удобно ему, а не поставщику информации. Самые успешные веб-сервисы - это, как правило, такие службы, которые могут быть изменены неожиданным для их создателей образом (some rights reserved).
Читайте окончание: Еще одна особенность Веба 2.0, которая заслуживает упоминания, это то, что теперь веб не привязан к платформе ПК.
- Из журнала "Компьютерра". Перевод Натальи Казаковой. Публикуется с любезного разрешения автора. Источник.