Тренды веб-разработки
Путь от CMS к платформе
Воинов Александр
СИИС 2015
Группа компаний
более чем 390`000 человеко/часов веб-опыта
~ 200 человеко/лет
● Вордпресс
● Друпал
● Ява
● Не надо изобретать велосипед
● Что такое контент
● CMS это круто
● CMF ещё круче
● Сдвиг парадигмы
Запуск продукта «всего» за 3652 дня:
Почему срываются дедлайны / Мегамозг
Во время первой попытки реанимации он начал переписывать движок с нуля,
сфокусировавшись на создании привлекательного пользовательского интерфейса. Также
была реализована гибкая система аутентификации и авторизации, которая позволяла
использовать разные роли и регулировать уровень доступа. Также в новой системе была
отличная лента активностей, но проблема заключалась в том,
что CMS не умела работать с контентом!
Я погрузился в разработку лишних фич и потерял мотивацию еще до того, как начал
работу над самым важным аспектом системы.
StageCMS
Бенедикт Дайке (Benedict Deicke)
https://stagecms.com/
http://m.megamozg.ru/company/1cloud/blog/19550/
https://medium.com/swlh/launching-a-product-in-just-3652-days-4d4e74e2dcd5#.on72uc52m
Данные -> Информация -> Суть
Эпоха контента
Инструменты работы с контентом
● Категоризация - Таксономия
● Типизация
● Связность
● Версионность
● Мультиязычность
● Инструменты вывода и отобржения
● Фильтрация и Сортировка
● Хранение
● Модерация
● Кеширование
● Разграничение доступа и Защита
● Форматы обмена (JSON, SCORM, XML)
● Форматирование wysiwyg
● Доступность (азбука брайля, звуковое воспроизведение)
● Мультимедийность
● ...
● Что такое “сайт”?
● Сдвиг парадигмы
● Информационные войны
● Бизнес кейсы
● Технологические кейсы
● Платформенный веб
● User Experience
Что такое “сайт”?
Инфо-пространство
«Сегодня информационное доминирование
— это как господство в воздухе»
Игорь Ашманов
Инфо-войны —
борьба за сознание
Positioning: The Battle for Your Mind
Jack Trout, 1980 г.
Карфаген должен быть разрушен
Катон, 200 г. до н.э.
● Много контента, вирусность
● Локализация
● Мобильные проекты
● Мейл и пуш стратегия
● Купленная активность, боты
● SEO, SMM, Social-CRM
● Персональные сообщества
Cредства ведения войны
● Битва за умы потребителя
● Максимальная локализация
● Четкое ментальное позиционирование
● Мы рядом с Вами
● Мы специально для Вас
Корпорация
Бренд → Страна → Язык → Продукт
● Каналы продаж
● Франшиза
● Парнтенрские программы
● Конфигурация предложения
● Аренда решений
Sales
● Поставка и подача контента
● Создание контента
● Релевантность и навигация
● Удержание внимания и вовлечение
● Дивергенция
Медиа
● Разграничение доступа
● Социальное взаимодействие
● Геймификация и мотивация
● Вовлечение и лояльность
● Коммуникация
● Модерация
Сообщества
● OpenSource
● Безопасность
● Модерация
● Отчуждаемость
● Специфические требования
● Интеграция с сервисами
● Централизованное управление
Государство и НКО
Портал правительства
Новосибирской области
● Миграция данных
● Интеграция с внутренними системами
● Интеграция с Active Directory
● Интеграция с ЕСИА
● Версия для слабовидящих
● Полнотекстовый поиск
● ~70 сайтов ведомств
Версия для слабовидящих
29 международных организаций
● OpenSource
● Типовые решения
● Масштабируемость
● Управление доступом
● Централизация
Образование
Сайты
факультетов
Сайты
проектов
Персональные
сайты
Модули, темы
Общий поиск
Общая база пользователей
Панель управления ✔ 5 000 сайтов
✔ 6 000 пользователей
✔ 200 000 публикаций
✔ SOA
✔ 60 сервисов
✔ 9 направлений
✔ Инжиниринговая
магистратура
Х НГУ
● UpSale, UpSale, UpSale
● Соответствие передовым трендам
● Релевантность выдачи
● Интеграция с биржами и рынками
● Интеграция с ERP, CRM
● Реклама, мониторинг, аналитика
e-Commerce
витрины
визуализация
иерархия
выкладки
гибкие
фильтры
доуточнение
выборки
сортировки
промоушен
Yandex Market Drupal Market
динамично
отзывчиво
=
Почему поиск так важен?
Качество поиска
+Полнота
Stemming
Additional
fields with tags
Релевантность
Weight of fields
Elevation
Boost
Synonyms
Sorting and boost query
On stock
To order
Not available
Sorting by
relevance
x1000
x100
Sorting and elevation
Usual results
Elevated
Don't make it on SQL
there are search engines for this
5 years experience in Drupal development:
● More than 30 projects
● Solr for more than on 15 projects
● Series of articles about Drupal + Solr
● Development of modules for search
600 часов = 3.5 месяца на один проект
● Технологический пакет
● Развертывание и управление
● Экспертиза
● Микро-сервисная архитектура
● Социальный и сервисный пакет
Стек технологий
Статический веб
1990
БРАУЗЕР
HTML
HTTP
Динамический веб1995
PHP
MYSQL
LINUX
APACHE
CMS / CMF
фреймворки2005
MODULES
THEMES
WEB SERVICES
2001 г.
Платформенный веб
2015
Разнообразие и сложность технологий резко выросли
Every web application needs a lot of things to work
Altogether called the environment
● Operational systems (CentOS, Ubuntu, RHEL, ...)
● Virtualization systems (KVM, Xen, ...)
● Container virtualization (Docker, LXC, …)
● Configuration management (Chef, Ansible, Puppet, …)
● Continuous integration and automation tools (Jenkins, Maven, …)
● Releases management tools (Capistrano, Webistrano, …)
● Web servers (Apache, Nginx, …)
● Cache storage (Memcached, Redis, …)
● Middleware (RabbitMQ, ActiveMQ, …)
● Databases (MySQL, MariaDB, MongoDB, PostgreSQL, …)
● Monitoring software applications (Nagios, NewRelic, Sensu, …)
● Version control system (Git, SVN, …)
● Backup-management systems
● Logging systems
● HTTP accelerator (Varnish)
● Code review systems (Gerrit)
● Search engines (Apache SOLR, Sphinx)
● File systems (Ceph, Glusterfs)
● Miscellaneous (CDN, OP code cache, …)
● Front-end (Bootstrap, Bower, Grunt, jQuery, AngularJS)
● …
But if a developer follows best practices workflow
then at least 4 times
And we build it with Docker
And there’s a big growing market out there
Более 1 100 000 сайтов ежедневно обращаются за
обновлениями
The market is HUGE!
~75 000 000 websites
(mostly low traffic) run on WordPress
~2 000 000 of websites
(mostly high traffic) run on Drupal
Число контрибьюторов растет
De-facto standard for blogsDe-facto standard for enterprise websites
Enterprise is a big private business
Fortune 500
● Стандартизация
● Архитектура
● Управление знаниями
● Сообщество
● Enterprise OpenSource
Drupal как платформа
Drupal это как Linux
Люди перестали писать свои операционные системы
Но продолжают писать свои собственные веб-фреймворки
Управление знаниями
Интеграция со сторонними сервисами
Правильная архитектура
● Мультиязычность
● Мультисайтинг
● Гибкая система доступов
● Масштабируемость
● Дистрибутивы
Ядро (CORE) Drupal
● 13 лет разработки (2001 г. первый релиз)
● GPL лицензия
● Более 1 100 000 сайтов ежедневно обращаются за обновлениями
● Отдельная команда безопасности (43 человека)
● Отдельная команда по документированию
● Инициативы сообщества
● 100+ релизов
● 94 коммиттера
● Более 1000 контрибьюторов
● 29 954 коммита
Модули Drupal
● 28 000+ модулей
● 35 000+ разработчиков
● Стандарты создания модулей
● Стандарты кодирования
● Стандарты тестирования
● Стандарты комментирования
● Стандарты документации
● Контриб модули с 2003 г.
● Команды мейнтейнеров модулей
● Книги по модулям!
Темы Drupal
● 2 000+ тем
● Инструменты работы с responsive design начиная с D8
● Стандарты создания тем
● Стандарты кодирования
● Стандарты документирования
● Best practices
● Наследование тем
● Отдельный шаблонизатор в Drupal 8
Конфигурирование Drupal
● Максимально гибкая настраиваемая функциональность
● Стандарты конфигурации
● Стандарты миграции
● Стандарты API
● Стандарты интеграции
Контент
● Гибкая архитектура для управления контентом
● Стандарты управления контеном
● Модули для работы с контентом (WYSIWYG, In-place edition, …)
● Интеграция с социальными сетями
● Административные темы
Процесс релиза
● Специальные модули для деплоя
● Best practices по процессу релиза
● Отдельные компании, предлагающие решения по релизу
● Специализированный хостинг
● Интеграция с серверным окружением
846 дистрибутивов ( CMS on CMF )
Комьюнити
Come for the software, stay for the community
Оффлайн встречи
Drupal - это организационная структура
● Официально 21 человек в штате
● Совет директоров + консультативный совет
● Организатор мероприятий DrupalCon
● Гранты студентам и контрибьюторам
● Ежегодно проводит финансовый аудит
● Проводятся выбор в совет директоров
● Реклама на Drupal.org
● Маркетинг Drupal
● Привлечение спонсоров на мероприятия
● Поддержка локальных мероприятий
● Проводит вебинары
● Еженедельная рассылка
● Global Training Days
Образовательная некоммерческая организация развивающая и поддерживающая
проект Drupal и сообщество
Обучение друпалу
● Обучающие сервисы (drupalize.me, beginlearningdrupal.com)
● Школы
● Друпал лаборатория
● Сертификация
● ~60 книг по друпалу
● Drupal Training Days
● Drupal Events
Кто доверяет ?
сайтов в зоне .edu на Drupal
сайтов в зоне .gov на Drupal
Drupal выбирают крупные государственные,
образовательные и международные учреждения:
User eXperience
UX
Digital customer experience delivery platform
Content is gold, but delivering the right content to the right user
at the right moment in the right format is platinum.
It's no longer just about publishing content;
it’s about managing the entire experience of a user over time.
Dries Buytaert
Как найти программистов для сайта?
Вначале найдите:
1. гроус хакера
2. маркетолога
3. интегратора
4. архитектора
5. разработчика
Микро-сервисная архитектура мира
Спасибо!
Воинов Александр
av@i20.biz
SkypeID: i20biz

Александр Воинов - Тренды Web

  • 1.
    Тренды веб-разработки Путь отCMS к платформе Воинов Александр СИИС 2015
  • 2.
    Группа компаний более чем390`000 человеко/часов веб-опыта ~ 200 человеко/лет
  • 3.
  • 4.
    ● Не надоизобретать велосипед ● Что такое контент ● CMS это круто ● CMF ещё круче ● Сдвиг парадигмы
  • 5.
    Запуск продукта «всего»за 3652 дня: Почему срываются дедлайны / Мегамозг Во время первой попытки реанимации он начал переписывать движок с нуля, сфокусировавшись на создании привлекательного пользовательского интерфейса. Также была реализована гибкая система аутентификации и авторизации, которая позволяла использовать разные роли и регулировать уровень доступа. Также в новой системе была отличная лента активностей, но проблема заключалась в том, что CMS не умела работать с контентом! Я погрузился в разработку лишних фич и потерял мотивацию еще до того, как начал работу над самым важным аспектом системы. StageCMS Бенедикт Дайке (Benedict Deicke) https://stagecms.com/ http://m.megamozg.ru/company/1cloud/blog/19550/ https://medium.com/swlh/launching-a-product-in-just-3652-days-4d4e74e2dcd5#.on72uc52m
  • 6.
  • 7.
  • 8.
    Инструменты работы сконтентом ● Категоризация - Таксономия ● Типизация ● Связность ● Версионность ● Мультиязычность ● Инструменты вывода и отобржения ● Фильтрация и Сортировка ● Хранение ● Модерация ● Кеширование ● Разграничение доступа и Защита ● Форматы обмена (JSON, SCORM, XML) ● Форматирование wysiwyg ● Доступность (азбука брайля, звуковое воспроизведение) ● Мультимедийность ● ...
  • 9.
    ● Что такое“сайт”? ● Сдвиг парадигмы ● Информационные войны ● Бизнес кейсы ● Технологические кейсы ● Платформенный веб ● User Experience
  • 10.
  • 13.
    Инфо-пространство «Сегодня информационное доминирование —это как господство в воздухе» Игорь Ашманов
  • 14.
    Инфо-войны — борьба засознание Positioning: The Battle for Your Mind Jack Trout, 1980 г. Карфаген должен быть разрушен Катон, 200 г. до н.э.
  • 16.
    ● Много контента,вирусность ● Локализация ● Мобильные проекты ● Мейл и пуш стратегия ● Купленная активность, боты ● SEO, SMM, Social-CRM ● Персональные сообщества Cредства ведения войны
  • 17.
    ● Битва заумы потребителя ● Максимальная локализация ● Четкое ментальное позиционирование ● Мы рядом с Вами ● Мы специально для Вас Корпорация Бренд → Страна → Язык → Продукт
  • 18.
    ● Каналы продаж ●Франшиза ● Парнтенрские программы ● Конфигурация предложения ● Аренда решений Sales
  • 19.
    ● Поставка иподача контента ● Создание контента ● Релевантность и навигация ● Удержание внимания и вовлечение ● Дивергенция Медиа
  • 20.
    ● Разграничение доступа ●Социальное взаимодействие ● Геймификация и мотивация ● Вовлечение и лояльность ● Коммуникация ● Модерация Сообщества
  • 21.
    ● OpenSource ● Безопасность ●Модерация ● Отчуждаемость ● Специфические требования ● Интеграция с сервисами ● Централизованное управление Государство и НКО
  • 23.
    Портал правительства Новосибирской области ●Миграция данных ● Интеграция с внутренними системами ● Интеграция с Active Directory ● Интеграция с ЕСИА ● Версия для слабовидящих ● Полнотекстовый поиск ● ~70 сайтов ведомств
  • 24.
  • 25.
  • 26.
    ● OpenSource ● Типовыерешения ● Масштабируемость ● Управление доступом ● Централизация Образование
  • 27.
    Сайты факультетов Сайты проектов Персональные сайты Модули, темы Общий поиск Общаябаза пользователей Панель управления ✔ 5 000 сайтов ✔ 6 000 пользователей ✔ 200 000 публикаций ✔ SOA ✔ 60 сервисов ✔ 9 направлений
  • 28.
  • 29.
    ● UpSale, UpSale,UpSale ● Соответствие передовым трендам ● Релевантность выдачи ● Интеграция с биржами и рынками ● Интеграция с ERP, CRM ● Реклама, мониторинг, аналитика e-Commerce
  • 30.
  • 31.
  • 32.
    Yandex Market DrupalMarket динамично отзывчиво
  • 33.
  • 34.
    Качество поиска +Полнота Stemming Additional fields withtags Релевантность Weight of fields Elevation Boost Synonyms
  • 35.
    Sorting and boostquery On stock To order Not available Sorting by relevance x1000 x100
  • 36.
  • 37.
    Don't make iton SQL there are search engines for this
  • 38.
    5 years experiencein Drupal development: ● More than 30 projects ● Solr for more than on 15 projects ● Series of articles about Drupal + Solr ● Development of modules for search 600 часов = 3.5 месяца на один проект
  • 39.
    ● Технологический пакет ●Развертывание и управление ● Экспертиза ● Микро-сервисная архитектура ● Социальный и сервисный пакет Стек технологий
  • 40.
    Статический веб 1990 БРАУЗЕР HTML HTTP Динамический веб1995 PHP MYSQL LINUX APACHE CMS/ CMF фреймворки2005 MODULES THEMES WEB SERVICES 2001 г. Платформенный веб 2015
  • 41.
    Разнообразие и сложностьтехнологий резко выросли
  • 42.
    Every web applicationneeds a lot of things to work Altogether called the environment ● Operational systems (CentOS, Ubuntu, RHEL, ...) ● Virtualization systems (KVM, Xen, ...) ● Container virtualization (Docker, LXC, …) ● Configuration management (Chef, Ansible, Puppet, …) ● Continuous integration and automation tools (Jenkins, Maven, …) ● Releases management tools (Capistrano, Webistrano, …) ● Web servers (Apache, Nginx, …) ● Cache storage (Memcached, Redis, …) ● Middleware (RabbitMQ, ActiveMQ, …) ● Databases (MySQL, MariaDB, MongoDB, PostgreSQL, …) ● Monitoring software applications (Nagios, NewRelic, Sensu, …) ● Version control system (Git, SVN, …) ● Backup-management systems ● Logging systems ● HTTP accelerator (Varnish) ● Code review systems (Gerrit) ● Search engines (Apache SOLR, Sphinx) ● File systems (Ceph, Glusterfs) ● Miscellaneous (CDN, OP code cache, …) ● Front-end (Bootstrap, Bower, Grunt, jQuery, AngularJS) ● …
  • 43.
    But if adeveloper follows best practices workflow then at least 4 times
  • 44.
    And we buildit with Docker
  • 45.
    And there’s abig growing market out there
  • 46.
    Более 1 100000 сайтов ежедневно обращаются за обновлениями
  • 47.
    The market isHUGE! ~75 000 000 websites (mostly low traffic) run on WordPress ~2 000 000 of websites (mostly high traffic) run on Drupal
  • 48.
  • 50.
    De-facto standard forblogsDe-facto standard for enterprise websites
  • 51.
    Enterprise is abig private business Fortune 500
  • 52.
    ● Стандартизация ● Архитектура ●Управление знаниями ● Сообщество ● Enterprise OpenSource Drupal как платформа
  • 53.
    Drupal это какLinux Люди перестали писать свои операционные системы Но продолжают писать свои собственные веб-фреймворки
  • 54.
  • 55.
  • 56.
    Правильная архитектура ● Мультиязычность ●Мультисайтинг ● Гибкая система доступов ● Масштабируемость ● Дистрибутивы
  • 57.
    Ядро (CORE) Drupal ●13 лет разработки (2001 г. первый релиз) ● GPL лицензия ● Более 1 100 000 сайтов ежедневно обращаются за обновлениями ● Отдельная команда безопасности (43 человека) ● Отдельная команда по документированию ● Инициативы сообщества ● 100+ релизов ● 94 коммиттера ● Более 1000 контрибьюторов ● 29 954 коммита
  • 58.
    Модули Drupal ● 28000+ модулей ● 35 000+ разработчиков ● Стандарты создания модулей ● Стандарты кодирования ● Стандарты тестирования ● Стандарты комментирования ● Стандарты документации ● Контриб модули с 2003 г. ● Команды мейнтейнеров модулей ● Книги по модулям!
  • 59.
    Темы Drupal ● 2000+ тем ● Инструменты работы с responsive design начиная с D8 ● Стандарты создания тем ● Стандарты кодирования ● Стандарты документирования ● Best practices ● Наследование тем ● Отдельный шаблонизатор в Drupal 8
  • 60.
    Конфигурирование Drupal ● Максимальногибкая настраиваемая функциональность ● Стандарты конфигурации ● Стандарты миграции ● Стандарты API ● Стандарты интеграции
  • 61.
    Контент ● Гибкая архитектурадля управления контентом ● Стандарты управления контеном ● Модули для работы с контентом (WYSIWYG, In-place edition, …) ● Интеграция с социальными сетями ● Административные темы
  • 62.
    Процесс релиза ● Специальныемодули для деплоя ● Best practices по процессу релиза ● Отдельные компании, предлагающие решения по релизу ● Специализированный хостинг ● Интеграция с серверным окружением
  • 63.
  • 64.
    Комьюнити Come for thesoftware, stay for the community
  • 65.
  • 66.
    Drupal - этоорганизационная структура
  • 67.
    ● Официально 21человек в штате ● Совет директоров + консультативный совет ● Организатор мероприятий DrupalCon ● Гранты студентам и контрибьюторам ● Ежегодно проводит финансовый аудит ● Проводятся выбор в совет директоров ● Реклама на Drupal.org ● Маркетинг Drupal ● Привлечение спонсоров на мероприятия ● Поддержка локальных мероприятий ● Проводит вебинары ● Еженедельная рассылка ● Global Training Days Образовательная некоммерческая организация развивающая и поддерживающая проект Drupal и сообщество
  • 68.
    Обучение друпалу ● Обучающиесервисы (drupalize.me, beginlearningdrupal.com) ● Школы ● Друпал лаборатория ● Сертификация ● ~60 книг по друпалу ● Drupal Training Days ● Drupal Events
  • 69.
    Кто доверяет ? сайтовв зоне .edu на Drupal сайтов в зоне .gov на Drupal Drupal выбирают крупные государственные, образовательные и международные учреждения:
  • 70.
  • 71.
    Digital customer experiencedelivery platform Content is gold, but delivering the right content to the right user at the right moment in the right format is platinum. It's no longer just about publishing content; it’s about managing the entire experience of a user over time. Dries Buytaert
  • 74.
    Как найти программистовдля сайта? Вначале найдите: 1. гроус хакера 2. маркетолога 3. интегратора 4. архитектора 5. разработчика
  • 76.
  • 77.