Софт працює поверх пристроїв

Опубліковано 21.10.2005 р. (джерело)


Збираємо по-новому


Спрощення бізнес-моделі — це природний супутник спрощенного програмування і вільного партнерства. У Вебі 2.0 повторне використання не засуджується. Нові сервіси, такі як housingmaps.com, є простим поєднанням двох існуючих служб. У Housingmaps.com немає бізнес-моделі (поки), але безліч невеликих сервісів живе за рахунок Google Adsense (або, можливо, амазонівських програм, або — і тих, і інших).

Ці приклади ілюструють ще один ключовий принцип Веба 2.0 — те, що ми називаємо «збірка по-новому». Коли навколо стільки дешевих компонентів, ви можете створювати щось цінне, просто збираючи з них несподівані або ефективні комбінації. Точно так, як і ПК-революція дала «путівку в життя» компаніям що збирає комп'ютери із звичайних комплектуючих, Веб-2.0 надає можливість компаніям, що збирають свої застосування з чужих компонент.


Софт працює поверх пристроїв


Ще одна особливість Веба 2.0, яка заслуговує на увагу, це те, що тепер веб не прив'язаний до платформи ПК. Перед відходом з Microsoft розробник Дейв Стац (Dave Stutz) дав своєму колишньому працедавцеві пораду: «забезпечити високий прибуток здатне програмне забезпечення, що працює поверх пристроїв».

Звичайно, так можна охарактеризувати практично всі веб-додатки. В кінці кінців, просте застосування вимагає для своєї роботи принаймні два комп'ютера: один — для хостингу сервера, другий — для браузера. І як ми вже обговорювали, розвиток веба як платформи розширює цю ідею до синтетичних додатків, складених з сервісів, які надаються множиною комп'ютерів.

Але — з Вебом 2.0 таке трапляється частенько — «2.0» означає не щось абсолютно нове, а розвиток і поглиблення існуючих концепцій. І фраза Стаца пояснює, як потрібно проектувати додатки для нової платформи.

На даний момент часу кращим прикладом нового підходу є iTunes. Цей додаток без проблем сполучає кишеньковий пристрій з грандіозною веб-базою, залишаючи ПК роль локального кеш-сервера і контролюючої станції. Спроби донести веб-контент мобільних пристроїв, зрозуміло, робилися і раніше, але зв'язка ipod/itunes є одною з перших стосовно застосувань, які сполучають в єдиний ланцюжок відразу декілька пристроїв. Інший хороший приклад подібного підходу — цифровий відеомагнітофон TiVo.

itunes і Tivo також демонструють інші ключові принципи Веба 2.0. Вони не є веб-додатками самі по собі, проте використовують потужність веб-платформи, перетворюючи веб на непомітну, практично невидиму частину своєї інфраструктури. Tivo і iTunes — сервіси, а не коробкові застосування (хоча у випадку з iTunes це не зовсім вірно — програма цілком може використовуватися і як коробковий софтвер для управління призначеними для користувача даними). Більш того, і Tivo, і iТunes намагаються використовувати колективний розум, хоча в обох випадках ці експерименти натикаються на опір з боку лобі власників інтелектуальної власності. У iТunes архітектура взаємодії користувачів досить обмежена, хоча останні нововведення в області підтримки підкастінга дещо змінили положення справ у кращий бік.

Все це одна з областей Веба 2.0, в якій ми чекаємо тим більших змін, чим більше пристроїв підключено. Які застосування з'являться, коли всі наші телефони і автомобілі будуть не тільки споживачами інформації, але й її постачальниками? Моніторинг транспортних корків в реальному часі, флеш-мобі, любительська журналістика — ось тільки декілька перших ластівок, що натякають нам на можливості нової платформи.


Багаті інтерфейси призначені для користувача


Ще з часів браузера Viola (1992) у всіх на вустах слово «аплети» та інші способи доставки активного контента через браузер. Поява в 1995 році Java теж супроводилося згадкою аплетів. Javascript — а потім і DHTML — були представлені публіці як прості шляхи для виконання додатків на боці клієнта і збагачення призначених для користувача інтерфейсів. Декілька років опісля Macromedia використовувала термін Rich Internet Applications (втім, ним не гребувала і Laszlo Systems — розробник флеш-рішень у відкритих вихідниках), щоб підкреслити можливості Flash не тільки в області доставки мультимедіа-контента, але і як основи для побудови GUI-інтерфейсів.

Проте потенціал веба для побудови повномасштабних додатків не приймали серйозно до появи Gmail, за якою послідував Google Maps. В обох випадках веб-додатку пропонували багаті призначені для користувача інтерфейси і майже невідрізниму від ПК-додатків інтерактивність. В одному зі своїх есе Джес Джеймс Гаррет з веб-студії Adaptive Path «охрестив» використані для цієї мети технології Ajax. Він писав:

Сам AJAX не є технологією. Це декілька цілком самостійних технологій, що працюють разом. AJAX включає в себе:

• обробку стандартів XHTML і CSS;

• динамічне відображення та інтерактивне використання DOM (Document Object Model);

• взаємний обмін і управління даними за допомогою XML і XSLT;

• асинхронне витягання даних за допомогою Xmlhttprequest;

• і JavaScript, що об'єднує все це разом.

AJAX також є ключовим компонентом таких застосувань, як Flickr, додатків від 37signals, Gmail і Orkut (Google). Ми вступаємо в безпрецедентний період нововведень в призначених для користувача інтерфейсах, раз вже розробники, нарешті, навчилися створювати веб-додатки, які нічим не поступаються в цьому аспекті ПК-додаткам.

Цікаво, що багато з нових можливостей, насправді, немають ніякої новизни. Ще в кінці 90-х р. і Microsoft, і Netscape розуміли, що це є досяжним, але їх битва привела до несумісності стандартів. І лише після того, як Microsoft виграла «браузерні війни» і у нас де-факто залишився один-єдиний стандарт браузера, створення таких застосувань стало реальним. Firefox, звичайно, відродив конкуренцію на ринку браузерів, але поки що ми не бачимо руйнівної війни стандартів, яка затримала наш розвиток в кінці XX століття.

У найближчі декілька років з'явиться безліч нових веб-додатків — як абсолютно нових, так і переробок старих ПК-додатків під веб-сервер. Будь-яка зміна платформи створює нові можливості для захоплення лідируючого положення на ринку навіть якщо цей ринок здавався повністю стабільним.

Gmail вже продемонстрував декілька цікавих нововведень в області електронної пошти, комбінуючи сильні сторони веба (доступність з будь-якої точки нетривіальні можливості роботи з даними, можливість пошуку) з призначеними для користувача інтерфейсами, порівнянними по зручності з ПК-додатками. Між тим, поштові клієнти на платформі ПК удосконаляться в іншому напрямі, додаючи до свого інтерфейса, наприклад, можливості інстант-месенджера і датчика онлайнової присутності. Як далеко зайдуть інтегровані клієнти, об'єднуючи найкраще, що є в e-mail, IM і мобільній телефонії (використовуючи VоIP, щоб додати голосові можливості)? Гонка почалася.

Легко побачити, як Веб-2.0 змінює звичні «адресні книги». Адресна книга для Веба 2.0 використовує локальну базу контактів на ПК або телефонів для запам'ятовування тих контактів, які ви спеціально відзначили для збереження. Між тим Gmail-подібний веб-агент пам'ятає всі повідомлення, отримані або відіслані всі адреси, всі телефони і на основі евристики соціальних мереж намагається вирішити, які саме альтернативи вам запропонувати, коли в локальній базі потрібного контакту немає. За відсутності потрібної відповіді система може задіювати соціальну мережу більшого масштабу.

Текстовий процесор для Веба 2.0 підтримуватиме спільне редагування в стилі Wiki. Але окрім цього він же надає широкі можливості форматування, яке ми звикли чекати від ПК-додатків. Writely — хороший приклад подібного застосування, хоча мейнстримом такий підхід поки не назвеш.

Але революція Веб-2.0 не обмежується ПК-додатками. Salesforce.com демонструє, як використовувати веб-сервер для розповсюдження ПЗ в якості корпоративного сервісу (CRM).

Завдяки новим гравцям потенціал Веба 2.0 буде розкритий повністю. Але успіху доб'ються ті компанії, які не тільки навчаться створювати нові інтерфейси, але і (завдяки архітектурі взаємодії) отримають в своє розпорядження спільно підготовлені дані.


Що повинні уміти компанії у Вебі 2.0?


Ми відзначили деякі принципові особливості Веба 2.0, але кожен наведений приклад ілюстрував лише одні положення, тоді як інші при цьому упускалися. Давайте спробуємо підсумовувати найважливіші моменти для компаній Веб-2.0:

• недорогі масштабовані сервіси, а не коробкове ПЗ;

• контроль над унікальними, складними для відтворення джерелами даних, які можуть бути збагачені за рахунок користувачів;

• відношення до користувачів як до співрозробників;

• залучення колективного розуму;

• охоплення «довгого хвоста» за рахунок самообслуговування користувачів;

• софт повинен працювати поверх пристроїв;

• спрощення моделі розробки інтерфейсів, що призначені для користувача, та спрощення бізнес-моделі.

І коли ви наступного разу почуєте про Веб 2.0 — звіртеся з цим списком. Чим більше пунктів виконано, тим більше компанія відповідає концепції Веба 2.0. Втім, не варто забувати, що дійсна майстерність в одній з областей може стати вигіднішою, ніж невеликі уміння в кожній із семи.


Підходи до проектування Веба 2.0


В книзі «Зразкова мова» Христофор Олександр (Christopher Alexander) описує формат для стислого опису рішень архітектурних проблем. Він пише: «Кожний зразок описує проблему, яка повторюється знову і знову в нашому оточені, а пізніше пропонує суть рішення цієї проблеми, таким чином, що ви можете використовувати це рішення мільйон разів або без повторного його виконання.»

Довгий хвіст. Маленькі сайти створюють більшу частину контента інтернета; вузькі ніші створюють велику частину інтернет можливих додатків.

Порада: заохочуйте самостійність користувачів і забезпечуйте алгоритмічне управління даними зі свого боку — це дозволить охопити веб цілком, не тільки центр, але й краї, не тільки голову, але й хвіст.

Дані — це наступний Intel Inside. Додатки все більше залежать від даних.

Порада: для отримання конкурентної переваги відшукайте унікальне, важке для відтворення джерело даних.

Цінність, принесена користувачами. Ключ до успішної конкуренції на ринку інтернет-додатків — збагачення власних даних силами користувачів.

Порада: не обмежуйте свою «архітектуру взаємодії» розробкою софтвера. Явно і неявно залучайте користувачів до процесу поліпшення вашого додатку.

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

Порада: зробіть так, щоб зростання ваших даних було побічним ефектом використання додатку.

Деякі права збереження. Захист інтелектуальної власності обмежує повторне використання і перешкоджає експериментам.

Порада: якщо користь забезпечуються сумісним використанням, то забезпечте, наскільки це можливо, слабкий захист вашій ІС. Проектуйте їх з урахуванням «покращеності» і «переробленості».

Безконечна бета. Коли пристрої і програми підключені до Інтернету, додатки перестають бути артефактами і перетворюються на сервіси.

Порада: не намагайтеся упакувати нові властивості в реліз, замість цього додавайте їх по мірі готовності в поточну версію. Зробіть зі своїх користувачів тестерів, здатних відгукнутися в реальному часі, і стежте за їх реакцією.

Кооперація замість контролю. Додатки Веба 2.0 побудовані як мережа сервісів, що працюють спільно.

Порада: відкривайте інтерфейси вебу, забезпечте синдикацію контента і використовуйте чужі веб-сервіси, якщо це потрібно. Використовуйте спрощені моделі для програмування та побудови вільно-зв'язаних систем.

Програми працюють поверх пристроїв. ПК не є єдиним пристроєм, на якому можуть виконуватися інтернет-додатки, а додаток, обмежений одним пристроєм, менш цінний, ніж його універсальний конкурент.

Порада: проектуйте додаток так, щоб він міг працювати на кишенькових пристроях, ПК та інтернет-серверах.


Загрузка...