Недавно Антон написал статью об облачных технологиях, которая породила активную дискуссию, причем не только в блоге. И я подумала, что может быть интересно продолжить эту тему, но не в плане обсуждения технологии, а в плане ее прикладного использования в программном обеспечении.

Мне кажется, что есть немалая доля правды в утверждении, что облачность сейчас модна и этот термин часто используют не к месту, сбивая с толку пользователей. Сколько паники было, когда Adobe объявил, что Photoshop теперь будет идти в пакете Creative Cloud, а старые версии со временем перестанут поддерживать. «Это что же, нет интернета — нет фотошопа?!» Представителей Adobe даже спрашивали на презентациях: «А какая версия браузера нужна для нового Photoshop?» На самом деле, конечно, браузер не нужен: Photoshop CC (как и другие программы пакета) устанавливается на компьютер и запускается с жесткого диска. Облачного там — только хранение рабочих файлов и настроек в облаке и, конечно, бизнес-модель, по которой осуществляется продажа программного обеспечения.

Эволюция способов распространения ПО

Когда-то давно (хотя что такое давно — большинство из нас, думаю, застали эти времена) программы продавались на дисках. Помните, надо было ехать куда-то в на Горбушку, в ДК Крупской, на Петровку — в каждом городе было свое культовое место — там бродить по рядам и выискивать нужные диски. И потом дома с диска уже устанавливать программу на компьютер. Если мы говорим о лицензионных программах, при установке надо было еще вводить лицензионный ключ, напечатанный на обратной стороне диска, правильность которого проверялась на программном уровне.

Все это было сложно, муторно и неудобно и для пользователей, и для производителей ПО. Пользователи тратили кучу времени и сил на покупку нужно программы, а производители несли убытки из-за пиратства.

Со временем интернет становился доступнее и быстрее, и программы стали продавать в интернет-магазинах. Покупатель находил, что ему нужно, платил деньги по карточке и получал ссылку для скачивания. Как вариант, скачивание могло быть бесплатным, а после оплаты на почту присылали ключ. Покупателям стало гораздо удобнее, но авторы программного обеспечения по-прежнему не могли гарантировать себе получение оплаты за свои разработки.

А не могли они этого гарантировать, потому что отдавали ПО полностью в руки пользователей и теряли контроль над его дальнейшей судьбой. Программа физически находилась на жестком диске пользователя (или на сервере пользователя, если это ПО, предназначенное для сетевого использования). Все издержки, связанные с использованием ПО — установка, техническое обслуживание, регулярные обновления, содержание оборудования и обслуживающего персонала — ложились на плечи пользователей. Конечно, для корпоративных пользователей эти издержки были существенней, но даже обычным людям приходилось тратиться на вызов специалиста, если сами они не умели установить нужные программы.

Облачные программы

Но ведь на самом деле пользователю нужна не программа, а ее функции — то, что эта программа умеет делать. Что если бы можно было установить программу один раз — желательно на сервере, который бы контролировался разработчиком, — и давать пользователям доступ к ней? Это получается удобно и выгодно со всех сторон:

  • пользователь не имеет проблем с установкой, обслуживанием, обновлением;
  • пользоваться программой можно прямо сразу, потому что разработчик ее уже заранее настроил;
  • для разработчика это автоматом решает проблему с нелицензионным использованием, потому что использование таких программ оформляется в виде подписки: заплатил за месяц использования — пользуешься месяц, оплата закончилась — доступа нет;
  • еще один плюс для разработчика — пользователь оказывается привязан к его продукту и не может просто так отказаться от его услуг;
  • зарабатывать на такой схеме могут и сторонние разработчики, что, в конечном итоге выгодно и авторам ПО, и пользователям: пользователи получают дополнительные возможности использования программы, а авторы — большие доходы от более популярного продукта.

Такая бизнес-модель ПО называется SaaS (от англ. software as a service — программное обеспечение как услуга). По этой модели работают все онлайновые почтовые сервисы, Google Docs и другие приложения Google, Dropbox, социальные сети, некоторые современные системы управления сайтом, например, InSales. Главная идея такой схемы в том, что программное обеспечение находится полностью на сервере разработчика (поставщика), и на сервере же производятся все вычисления. Такие веб-приложения действительно являются облачными.

Не совсем облачные

Но есть и другие приложения, которые облачными можно назвать с большой натяжкой — это вышеупомянутые программы из пакета Adobe Creative Cloud, программы 1С, последние версии MS Office. Они состоят из клиентской части — приложения, которое устанавливается на компьютер конечного пользователя — и серверной, которая и дает возможность называть их облачными. Облако тут используется для хранения пользовательской информации или в качестве базы данных, на сервере может производиться часть вычислений, но все равно клиентская часть необходима, и без нее программой пользоваться нельзя.

От SaaS в таких программах часто берут и модель монетизации: оплату взимают помесячно за каждую учетную запись. Что добавляет путаницы в терминах.

Сравнение на примере

Возьмем две аналогичные по назначению программы: текстовый процессор Google Docs и MS Word 2013.

Google Docs — облачный полностью:

  • работает в браузере,
  • хранит данные в облаке,
  • под хранение пользовательских файлов выделяется определенный объем пространства на сервере,
  • обрабатываются данные тоже на сервере,
  • каждый пользователь работает под своей учетной записью,
  • разрешает совместную работу над документом (причем в режиме реального времени — по-моему, самая потрясающая возможность Google Docs),
  • позволяет раздавать доступ к своим файлам другим пользователям (ограниченному кругу или всем).

MS Word 2013 — с отдельными облачными возможностями:

  • пользователи могут работать под своими учетными записями,
  • позволяет сохранять свои файлы на сервере (в SkyDrive),
  • позволяет раздавать доступ к своим файлам другим пользователям (ограниченному кругу или всем),
  • разрешает работать с документом в браузере (через Word Web App), но при этом доступны не все возможности Word,
  • возможно одновременное редактирование документа (опять же через Word Web App), только изменения становятся видны другим пользователям лишь после сохранения.

При этом Word (в отличие от Google Docs) прекрасно и полноценно работает сам по себе, с жесткого диска. Вся его облачность — это дополнительные полезные возможности, без которых многие пользователи прекрасно обходятся, а не главная идея.

 

Наверное, со временем терминология устоится, и не будут скопом все приложения называть облачными, если они только могут обмениваться данными через сервер. Но в конце концов, не так важно, как называется, главное понимать, какие возможности программа дает, и использовать их по полной.