ИНТЕРНЕТ: Братство сетей: две башни
Автор: Илья Щуров
Человечество уже много тысячелетий строит здание цивилизации, возводя этаж за этажом и постепенно переселяясь
все выше и выше. Мы делаем это без генерального плана и каких-либо чертежей, зачастую следуя лишь интуиции - так что в
результате получается не типовое панельное строение, а витиеватый замок со множеством башен, балконов и переходов.
Некоторые башни этого замка оказываются интересны лишь их строителям и со временем пустеют, другие обваливаются под
собственной тяжестью, третьи же, напротив, приобретают огромное значение в нашей жизни - и становятся фундаментом
дальнейшего развития.
Стройка века
В мире информационных технологий многоэтажная
"башня"обычно называется стеком технологий. Включая компьютер, чтобы зайти на какой-нибудь сайт, мы как раз и
имеем дело с таким стеком: веб-браузер, работающий на базе операционной системы, которая, в свою очередь, работает на
каком-то железе. Со стороны же сервера работает другой стек (например, LAMP - Linux+Apache+MySQL+Perl/PHP). Мы будем
говорить о том, как развиваются и конкурируют такие стеки: зачастую это происходит по одной и той же схеме.
Сценарий таков. В какой-то момент на базе существующего верхнего технологического "этажа"происходит
Инновация, позволяющая создать продукт с невиданными доселе свойствами. Обычно за его реализацию берется сразу несколько
разработчиков, и появляется несколько различных конкурирующих продуктов, обладающих близкими потребительскими
качествами. (Пользуясь приведенной аналогией, это можно представить себе как строительство нескольких похожих
"башенок"на одном фундаменте.) Конкурируя, продукты совершенствуются, усложняются, и в какой-то момент
становится ясно, что некоторые из этих "башен"уже достаточно широки, чтобы открыть простор для творчества и
самим стать фундаментом для новых инновационных решений, которые неведомы даже их "архитекторам", - достаточно
впустить "независимых строителей" (ISV) и снабдить их необходимыми инструментами (API, SDK). Когда это
происходит, компании собирают журналистов и выпускают гордые пресс-релизы, в которых сообщают, что их продукт уже не
просто продукт, а платформа. И тут начинается самое интересное.
Тот разработчик, которому первым удается
правильным образом использовать платформообразующий потенциал своего решения, получает огромное конкурентное
преимущество: положительную обратную связь, коими столь богат наш мир. Новые независимые разработчики выпускают новые
приложения, которые повышают популярность платформы и делают ее более привлекательной для разработчиков… дальше вы
знаете.
Если появляется несколько конкурирующих платформ, каждая из них пытается выжать из этого эффекта
максимум - то есть какая-либо совместимость им противопоказана. Напротив, они всеми силами пытаются привязать к себе как
можно больше пользователей и разработчиков, переманивая их у конкурентов всеми правдами, а то и неправдами. Действовать
иначе означает заведомо проиграть. Как правило, чья-то платформа становится доминирующей (по крайней мере, в своей
рыночной нише), и реальная конкуренция замирает - а с нею прекращается и развитие. На какое-то время.

Конкурентам, а порой и собственным клиентам, которых не устраивает стагнация, ничего
не остается, кроме как объединить силы, а для этого - договориться об общих подходах (открытые стандарты), а иногда и
просто начать совместную разработку альтернативного решения (свободное и открытое ПО). Не всегда это приводит к быстрому
изменению баланса сил, но обычно позволяет сдвинуть ситуацию с мертвой точки и вынудить компанию-монополиста мало-помалу
открывать свою платформу, двигаясь навстречу принятым стандартам и интегрируясь в строящуюся открытую инфраструктуру.
Виток развития заканчивается тем, что появляется новая стандартизованная платформа, которая становится новым
верхним уровнем стека технологий. В этот момент компании, долгое время ориентировавшиеся на захват и удержание
"власти платформы", вынуждены переориентировать свой бизнес, чтобы играть на этаже выше. Именно здесь
появляются свои инновационные продукты, часть которых со временем вырастает в новые платформы, и круг замыкается.
Мы видели, как это было с архитектурой ПК (читатели со стажем, вероятно, помнят формулировку "IBM
PC-совместимый компьютер"), с различными коммуникационными сетями (когда-то было невозможно отправить e-mail из
одной сети в другую); на наших глазах происходит стандартизация операционных систем, офисных пакетов (см. тему номера
"КТ" #723), IM-протоколов, веб-браузеров…
Можно предложить простой эмпирический критерий того, что
некоторый набор технологий стал открытой и стандартизованной платформой: это происходит тогда, когда большинство людей
перестает ожесточенно спорить о том, какая из реализаций лучше. Сам по себе веб, по-видимому, ему уже удовлетворяет -
браузерные войны давно позади, и период доминирования "HTML от MSIE"сменился какой-никакой поддержкой
стандартов - никто не будет всерьез рассматривать "вебдванольный"сайт, который откажется работать хотя бы в
Firefox. Девиз "веб как платформа", о котором так долго говорил Тим О’Рейли со товарищи, воплотился в жизнь.
Эта битва окончена. Что ждет нас дальше?
В ожидании веб-ОС
Развитие на протяжении всего
минувшего года нескольких инициатив, начало которым было положено еще в 2007-м, показывает, что претендент на роль новой
единой и стандартной платформы, решающей задачи "простых пользователей" (назовем ее веб-ОС), наконец, найден.
Речь идет о социальных сетях, таких как Facebook и MySpace, и порожденных ими платформах для разработки социальных
приложений. И, конечно, не обошлось без Google - которого так долго боялись, но который, однако, пока не слишком
уверенно чувствует себя на этом поле, хоть и имеет поистине наполеоновские планы. Впрочем, обо всем по порядку.