думаю достаточный повод для обсуждения.
Компания “Ключевые Решения” выпустила первую публичную версию системы управления контентом Hivurt под открытой лицензией (ZPL). Описание и прочие характеристики мы выкладываем на сайтах по мере готовности. Сейчас как раз период подготовки.
За время своей работы мы столкнулись с некоторыми вещами которые казались не очевидными, но в конце-концов решающими. Их и хочу описать и обсудить.[cut]
По нашему мнениею рынок интернет-разработки сейчас делится на 2 части, первая это Верхний рынок иначе Корпоративный, тут в основном играют значительную роль решения на основе Java/Oracle, .NET/MS Something 200X и в основном закрытые разработки. Характеризуется высокой проработанностью процессов и более надежными решениями.
Второй это Нижний/Частный рынок, небольших веб сайтов и интернет-решений, характиризующийся практически полным отсутствием методик. Технологии PHP/Perl/MySQL. Поставщиков куча, а гарантий и надежности 0 (ноль). В 90% случаев новый Исполнитель приносит новую технологию, в остальных 10% они не используются вообще.
И эта ситуация очень характерна для Российского (русскоязычного) рынка. За время перемен и высоких рисков сложилась обстановка когда планировать было бессмысленно, да и частного бизнеса планирущего постепенный рост практически не было. Сейчас больше компаний хотят долгосрочные решения, а им в ответ предлагается наугад из шапки вытягивать что-то самопальное или на не предназначеном для этого технологий. Да и поставщиков решений которые делают продукт с расчетом, что он будет долгое время поддерживаться не много (я имею ввиду не тех кто готов долго стричь деньги).
Мы понимаем, что компании которые формируют спрос все же смогут добиться своего и кто-то начнет делать такие решения. Что им надо:
- Ориентация не на уникальные разовые решения, а возможность постоянного увленичения спектра возможностей без существенного роста сложности системы, но без ущемления возможности их добавления
- Уменьшение стоимости смены поставщика решений
- Возможность быстрого использования готовых компонент в разных сферах деятельности
- Ориентация на открытые стандарты
- Максимальная независимость от среды использования и существующих решений с простой интеграцией
- Возможность использования накопленного опыта разработчиков и в других сферах
- Низкая стоимость внедрения для конечного пользователя, низкая стоимость рабочего места
Мы предлагаем в качестве основы использовать:
1. Язык программирования Python, как язык высокого уровня позволяющий высокую скорость разработки и работающий на всех распространенных платформах:
- Операционные системы Windows, Linux, Mac OS X, FreeBSD
- Большое сообщество разработчиков и количество готовых продуктов
- Поддержка со стороны больших компаний (Google, IBM, все основные поставщики Linux-дистрибутивов)
- Докуменация, среда разработки, большая база готовых библиотек и решений
- Ориентация на совместную разработку
2. База данных Postgres, характеристики:
- Возможности сопоставимые с коммерческими, но с нулевой стоимостью лицензии
- Возможность использования в коммерческих приложениях — наличие доступных систем резервного копирования, кластеризации
- Распространнение, используется в 1С
3. Сервер приложений Zope 3 с готовым и описанным процессом разработки и следующими характеристиками:
- Компонентная архитектура, позволяющая снизить сложность системы
- Описанные и надежные процессы разработки доступные для внедрения в небольших коллективах
- Высокая степень документированности и готовые решения для гарантирования качества продукции
- Независимость написания компонентов от контекста их использования
Еще раз отдельно отмечаю, что компонентная архитектура лажащая в основе Zope 3 позволяет получать продукт максимальная сложность которого будет приближена к сложности максимального компонента.
Но какие проблемы есть у Zope 3:
- Отсутствие русскоязычной документации. Ключевые Решения эту проблему решают, мы имеем почти готовый перевод книги Web Component Development with Zope 3. И имеем еще один курс по Zope 3 который превратился в полноценную книгу. Пишет лучший специалист по этой технологии в русскоязычном мире - Андрей Орлов
- Отсутствие готовых решений “из коробки”, которые можно было бы поставить и потестировать. Для этого мы и сделали Hivurt
- Банально, но это название. Поэтому мы предлагаем и использовать Hivurt
Что еще:
- Продукт SQLTools который позволяет делать потрясающую интеграцию с базами данных
- Системы тестирования (в первую очередь в самом сервере Zope 3), юнит тесты, интеграционные, функциональные. Возможности поднятия/завершения контекстов
- Проработанный процесс разработки и развертывания
- Многолетний опыт работы с i18n и l10n (интернационализацией и локализацией)
- Юникод, стандарты, коннекторы к базам данных, система безопасности (был был даже грант ЕвроПарламента), кросс-платформенность, высокая производительность, кластеризация… короче большое и продуманное решение.
Какие проблемы:
- Мало людей которые пока еще знают. Думаю тут та же ситуация что и с Java, людей не хватает, но зато Python все же более простой язык в обучении.
- Более высокий порог вхождения (может работать студент начиная с 3-4 курса), считаю это даже преимуществом. Все же бизнес-решения должны делать люди владеющие предметом. Хуже то, что умные люди вынуждены пользоваться массовыми решениями на PHP.
- Малое количество поставщиков решений. Тут могу сказать только одно, до тех пор пока моду на технологии в России и Украине будут задавать огрызки проектов двухлетней свежести из Европы и США отобранные у индусов, то ничего нельзя будет поделать, все равно будут более популярны PHP или даже Visual Basic. Но те кто собирается создавать новые готовые продукты, у них хотя бы будет альтернатива. Zope рынок уже достаточно большой и до нас эта волна когда-нибудь докатится.
А почему не?
Языки:
- Java более тяжелый рынок, и все же там будут выигрывать крупные компании. Так же требуют более тяжелых ресурсов для разворачивания
- Ruby даже отдаленно подобного решения сопоставимого с Zope. Ruby on Rails находится на гораздо более ранней ветке эволюции чем Zope.
- PHP не бизнес-решения, хотя из-за очень низкого порога вхождения очень популярен.
- Perl, меньше всего предназначен для совместной работы, ООП реализуется сложнее. База продуктов низкого качества с непонятной поддержкой. Python в этом смысле очень выигрывает, один из основных законов не писать еще раз то, что уже написанно.
Базы данных:
- MySQL, можно использовать, но более слабый чем Postgres и не такой производительный. Кроме того тут помогает 1С, который выбрала его в качестве основы новых версий. Так что популярность будет расти и дальше.
- Любая другая база данных… Проблем нет использовать любую, коннекторы есть ко всему что существует. Кроме того Zope имеет объектно-оринетированную базу данных внутри.
В общем я предлагаю обсудить возможность создания и совместной работы с Hivurt и формировании такого рынка.
Какие цели ставлю:
- получить возможность создания open source платформы с большим количеством участников
- участие в формирующемся рынке стабильных долгосрончный решений для бизнеса
- получение прибыли и интересных проектов
Чего хочу от тех людей которые читают эту статью?
1. Ваша заинтересованность
2. Помощь в правильной оценке ситуации и рисках
3. Рекомендации по привлечению новых участников
4. Помощь и рекомендации по поиску клиентов и источников финансирования разработки Hivurt
5. И самое главное — возможность совместного участия.
[/cut]
В качестве первого взноса со своей стороны мы делаем релиз под открытой лицензией нашего продукта.




