Некоторые разработчики предположили, что Sencha решили отказаться от бесплатного распространения своих продуктов. Но это не так. Я не сразу обнаружил раздел лицензии на их сайте. А теперь подробно расскажу о них и о том, как получить лицензию GPLv3 (GNU General Public License version 3).
Лицензии
Компания Sencha на свои продукты предоставляет пять видов лицензии: Commercial License, Open Source (GPLv3) License, Trial Licensing, Custom Use Licensing, Extension Licensing.
Commercial License
Коммерческая лицензия предусматривает создание программного обеспечение с закрытым исходным кодом (в том числе коммерческое), кроме инструментария разработки, библиотек, конструкторов приложения и любое приложение, которое используется для программного обеспечения, приложения или сайты веб-разработчиков и дизайнеров. Данная лицензия предусматривает использование лицензии на каждом рабочем месте и предоставляет возможность смены пользователей лицензии каждые 6 месяцев. Также пользователи лицензии гарантирует, что третьи лица, для которых разрабатывают приложение, лицензированы для использования программного обеспечения. В некоторых случаях вы можете передать свою лицензию третьим лицам, но есть случаи когда они должны иметь свою коммерческую лицензию. В случае нарушения к вам могут предъявить обвинения в нарушении интеллектуальных прав.
У Sencha можно покупать лицензии только кратно 5, вы не можете купить 1, 3 или 7 лицензий, только 5, 10 и т.д.
Лицензия покупается на компанию и оформляется на разработчика, передать одну лицензию в другую компанию не получится. Если вы делаете приложение на заказ, то ваш заказчик так же должен купить этот пакет из 5 лицензий (которые они помечают как developer). Ещё интереснее, если вы делаете некоторое решение, которое сами продаете (не cloud, а standalone), тогда тот, кто покупает ваш продукт должен еще $3225 (для ExtJS) заплатить Sencha! Это очень круто.
Нет никакого разделения на SDK и лицензию для поставки на продакшен сервер. Всё одно, и стоит одинаково. — kibitzer
Лица, приобретая коммерческую лицензию, получают услугу по технической поддержки и обслуживанию по выбранному продукту.
В услугу «Техническая поддержка и обслуживание» входит:
- Доступ к текущей документации для программного обеспечения, в том числе учебники и примеры;
- Доступ(только для чтения) к самой последней версии исходного кода продукта;
- Круглосуточный доступ на форум технической поддержки;
- Ограниченная поддержка по Вашим запросам (стоимость запроса — 10 кредитов);
- Отдельный форум для команды разработчиков (на которых приобретены лицензии);
- Поддержка и консультация по телефону (стоимость — 25 кредитов за 30 минут). Только на английском языке;
- Удаленное решение проблемы (стоимость запроса — 25 кредитов);
- Срок реагирование на запрос 48 часов.
Кредиты — это внутренняя «валюта» для оплаты Технической поддержки. В комплект на 5 разработчиков входит 175 кредитов.
Custom Use Licensing
Лицензия включает в себя коммерческую лицензию и снятие ограничений на разработку инструментария разработки, библиотек, конструкторов приложения и любое приложение, которое используется для программного обеспечения, приложения или сайты веб-разработчиков и дизайнеров. Для получения данной лицензии необходимо обратится в один из офисов Sencha.
Extension Licensing
Лицензия для создания коммерческого расширения ExtJS, Sencha GXT, Sencha Touch, если расширение добавляет значительную ценность продукта и отличается функциональностью.
Для использование данной лицензии необходимо зарегистрироваться и выполнить ряд условий:
- Каждый разработчик, используя свое расширение должен быть обладателем коммерческой лицензии соответствующего продукта;
- Расширение не должно быть строителем приложений или сайт-строитель;
- Расширение не должно быть с той же функциональностью или потенциально конкурентным с продуктом Sencha;
- Вы должны включить логотип «Sencha» на всей документации, поставляемой с расширением;
- Лицензионное соглашение конечного пользователя (EULA) для расширения, должны быть представлены и утверждены Sencha.
Trial Licensing
Лицензия, действующая в течении 30 дней и позволяющая преобразовать ваше программное обеспечение к коммерческой лицензии. Так как разработанный продукт под лицензией GPLv3 не возможно перевести по коммерческую лицензию. При разработке необходимо соблюдать все требования коммерческой лицензии. Ваш продукт запрещено публиковать и распространять с этой лицензией.
Open Source (GPLv3) License
Это бесплатная лицензия с открытием исходных кодов, но с условием, что ваш продукт будет предоставляться по одной из лицензий свободных программ, совместимых с GPL. Так же вы можете вносить изменения в исходный код продукта Sencha. Получить её можно здесь.
Программное обеспечении Sencha
Здесь я не буду рассказывать обо всех программных продуктах Sencha (если будут желающие, могу написать отдельно статью по всем продуктам). Тут я приведу сводную таблицу наборов лицензий и стоимости (цена/количество рабочих мест) коммерческой лицензии по каждому продукту.
Название | Commercial License | Custom Use Licensing | Extension Licensing | Trial Licensing | Open Source (GPLv3) License |
---|---|---|---|---|---|
Ext JS | $3,225/5 $12,495/20 |
||||
GXT | $4,635/5 $18,075.00/20 |
||||
Touch | $3,855/5 $15,105/20 |
||||
Architect | $1,945/5 $7,595/20 |
||||
Complete | $4,825/5 $18,895/20 |
||||
Touch Bundle | $1,395/5 $4,995/20 |
Комментарии (33)
kibitzer
20.06.2015 20:13Дополню статью, точнее поясню. У Sencha можно покупать лицензии только кратно 5, вы не можете купить 1, 3 или 7 лицензий, только 5, 10 и т.д.
Лицензия покупается на компанию и оформляется на разработчика, передать одну лицензию в другую компанию не получится. Если вы делаете приложение на заказ, то ваш заказчик так же должен купить этот пакет из 5 лицензий (которые они помечают как developer). Ещё интереснее, если вы делаете некоторое решение, которое сами продаете (не cloud, а standalone), тогда тот, кто покупает ваш продукт должен еще 3тыс.$ заплатить Sencha! Это очень круто.
Нет никакого разделения на SDK и лицензию для поставки на продакшен сервер. Всё одно, и стоит одинаково (3225$).
kibitzer
20.06.2015 21:32Кто комментарий отминусовал, поясните, если не сложно. Возможно у вас есть другая информация, мне это важно, так как использую в работе ExtJS (как в компании, так и в своих проектах). Что я написал — это из общения со службой поддержки и их постам на официальном форуме.
До 2014 года, с лицензиями и их интерпретацией у Sencha было намного проще, хотя бы можно было по одной лицензии покупать. Сегодня, у меня сложилось такое впечатление, что Sencha хочет уйти из мелких проектов и остаться исключительно в корпоративных решениях.
Хорошо, что если у вас была куплена лицензия раньше (до того, как они перешли на пэки по 5 штук), то вы можете покупать новые версии (по сути апдейтить лицензии) тем кол-вом, которое раньше было куплено, т.е., если у вас была куплена 1 лицензия ExtJS 4 в 2013 году, то можно купить/продлить только 1 лицензию на ExtJS 5 (во всяком случае в прошлом году так было, думаю с 6ой так же осталось).coh
20.06.2015 21:44Все верно сказано. Правда есть у них одна расплывчатая оговорка:
In some cases, you can transfer your license to the third party,
в заметке для Consultants and Software Integrators
coh
20.06.2015 21:25Sencha начали жадничать и закручивать гайки, увеличивать стоимость лицензии. Становится накладно иметь дело с их продуктами в форме Commercial License. Про OEM лицензию маленькие стартапы теперь вовсе могут забыть. Печально, все так хорошо начиналось, на 3,4 верси можно было купить лицензию за $300-$400 без поддержки на одного разработчика.
geroy
30.06.2015 13:27Ещё интереснее, если вы делаете некоторое решение, которое сами продаете (не cloud, а standalone), тогда тот, кто покупает ваш продукт должен еще $3225 (для ExtJS) заплатить Sencha!
Это Вы где нашли в лицензии, подскажите?medved6216 Автор
02.07.2015 11:25+1Скорее всего автор имел ввиду cloud — это решение на своем сервере для массы (приобретают услугу по пользованию приложением). А standalone — это на сервере заказчика(приобретают приложение).
В лицензии написано про этот пункт:Также пользователи лицензии гарантирует, что третьи лица, для которых разрабатывают приложение, лицензированы для использования программного обеспечения. В некоторых случаях вы можете передать свою лицензию третьим лицам, но есть случаи когда они должны иметь свою коммерческую лицензию. В случае нарушения к вам могут предъявить обвинения в нарушении интеллектуальных прав.
coh
02.07.2015 17:38+1Если вы являетесь Vendor и продаете конечный продукт ( софт который не используется для разработки и т.п), клиент использует ваше решение без внесения модификаций, то клиент не должен покупать лицензию. Так отвечала техподдержка несколько раз в 2010,2012,2015 годах. После этой статьи задавали вопрос еще раз.
variable
Возможно ошибаюсь, но мне кажется с GPLv3 работает иначе.
Открывать свой код вы обязаны только если были внесены изменения в используемые библиотеки лицензированные GPL.
medved6216 Автор
Одно из фундаментальных требований GPL состоит в том, что когда вы распространяете приложение среди пользователей, вы должны предоставить им также способ получить исходный код. По GPLv3 я должен предоставить код только для своего программного продукта без библиотек Sencha(при условии, что я не вносил в них изменения).
Основы GPL
Никто не должен быть ограничен программами, которыми пользуется. Есть четыре свободы, которые должны быть у каждого пользователя:
Пользователь должен иметь возможность собрать(воспроизвести) мое ПО у себя на компьютере(сервере), а также внести изменения на свое усмотрение.
Borz
распространяется ли данная лицензия при этом и на серверную часть кода? или только на клиентскую (ту, что в браузере пашет)?
Aclz
На Ext серверный код не пишется.
Borz
я к тому, что считается это единым целым или нет.
т.е. если я сделаю админку на ExtJS, JS-код у меня для пользователя будет доступен — бери да скачивай скриптики. Но при этом серверную часть я не публикую.
Попадает ли такая схема под GPL лицензию от Sencha? Ведь по сути, без серверной части и клиентская не будет работать — откуда она будет все данные тащить?
medved6216 Автор
Нет, в данном случае — это не попадает под GPL. Вся суть GPL заключается в свободе — я должен иметь возможность скачать и воспроизвести ваш исходный код у себя. Вы можете продавать свою копию программы(это не запрещено GPL) и получать денежные средства за распространение, но не можете требовать денег с пользователей, в случае получения копии программы из других источников и/или при самостоятельной сборке.
Совместимость лицензий
merlin-vrn
А где расположена MIT в этой схеме?
medved6216 Автор
MIT — x11 лицензия
werktone
Обычно под MIT подразумевается Expat.
medved6216 Автор
ПО под лицензией MIT включает в себя Expat, Metakit, PuTTY, Mono, Ruby on Rails,Twisted, JQuery и, конечно же, X Window System (X11), для которой она и была написана.
medved6216 Автор
Да, почитав подробнее лицензию и комментарии, соглашусь с Вами. Я отношусь видно к той части разработчиков, которые считают MIT — X11, это распространенное явление.
Borz
собственно, я к тому и спросил, чтобы «для истории» тут сей нюанс засветить, а то народ часто разделяет эти стороны (как например Aclz) и думает, что лицензия только на клиента требуется.
kibitzer
Вполне можно разделять, если клиент можно представить как отдельный продукт. Вы открываете клиент, а реализацию сервисов можно сделать уже иначе и на отличной от вас платформе. К примеру, почтовые же клиенты отделены от серверов.
Если у вас нельзя отделить клиентскую часть, как законченный продукт, ну к примеру сервер у вас сам генерирует страницы, а из extjs вы используете отдельные интерфейсных компоненты, тогда надо открывать всё.
Aclz
Насколько могу судить, будет работать или нет — не является критерием. Критерий — распространяется ли серверная часть вместе с клиентской в рамках одного и того же продукта.
kibitzer
Продукт очень размытое понятие. К примеру андроид от гугл идёт как единый продукт, но содержит, как открытую часть андроида, так и проприетарные компоненты. Важно, не то, как распространяется, а можно ли считать опесорсную (gpl3) часть отдельным продуктом. И понятно, что вы её должны предоставить в открытый доступ.
Aclz
Вот вы сами говорите:
и тут же:Что мешает выпустить GPL-серверную часть, реализующую всего одну функцию из ста, предусмотренных клиентским приложением, или вообще не выпускать, сославшись на то, что на данный момент готова только клиентская часть (GPL не обязывает выпускать только 100% законченный продукт). И затем отдельно распространить проприетарный полнофункциональный вариант под своей лицензией?
kibitzer
Если в вашем проприетарном клиент-серверном приложении используется точно такой же клиент, как, открытый, то вполне. Практикуется часто, другой подход: опенсорсный сервер, а в проприетарной поставке добавляется поддержка и клиент(закрытый) для администрирования. В любом случае, тут как отреагирует Sencha и их юристы.
Тут даже интереснее, многие критикуют Sencha за двойное лицензирование, по сути у них есть ExtJS под лицензией GPL3, и есть ExtJS со своей проприетарной лицензией с совершенно другими условиями распространения. Получается, у них есть одна и та же библиотека, если вы им не платите, то ваше приложение написанное с ей использованием должно распространяться только под GPL3, а если заплатите, то уже можете распространять, как захотите. Довольно свободная интерпретация лицензии :)
Goodkat
Вообще, многие не понимают смысла GPL-лицензий, и избегают использовать GPL-компоненты при разработке, так как думают, что они должны публиковать весь исходный код.
Например:
Я программист, делаю для заказчика веб-приложение, которым будут пользоваться его клиенты.
Кто кому должен открывать исходный код веб-приложения, если оно написано на ExtJS под GPLv3-лицензией?
По GPL-лицензии разработчик — пользователю. Но кто тут пользователь? Заказчик или его клиенты?
В паре разработчик-заказчик пользователь приложения — это заказчик, он получает от меня весь проект в исходных кодах, тут проблем нет.
Но клиенты заказчика — это тоже пользователи приложения, должны они тоже иметь возможность получить исходные коды?
kibitzer
Все пользователи системы должны иметь доступ к исходникам по GPL3 (т.е. любой из клиентов заказчика может получить систему и также её распространять или модифицировать).
Но хуже другое, в том мире, где мы живем, важна интерпретация, которую Sencha дает, так как, если они захотят судиться — то ни к чему хорошему это не приведёт (тут конечно зависит, важен ли вам западный рынок и будут ли с вами связываться, скорее всего нет). А если вам важен американский рынок и ваш продукт достаточно крупный, чтобы с вами судиться, то скорее всего вы купите их коммерческие лицензии :) лишь бы не тратиться на суды и юристов.
Sencha очень вольно интерпретирует лицензии. На них активно «наезжают» пользователю, и я боюсь это приведёт к тому, что они просто перестанут новые версии под открытыми лицензиями выпускать.
Goodkat
В общем, следующий раз лучше выбирать dojo, если к веб-приложению будут иметь доступ люди извне :)
merlin-vrn
Если я делаю закрытую систему для использования двадцатью сотрудниками заказчика? Все исходные коды я ему и так по условиям договора отдам.
А вот что касается «перестанут выпускать». Почему нельзя взять исходник под GPL3 и форкнуть? Ну, будет оно называться не ExtJS, и хрен бы с ним.
kibitzer
Да, но GPL3 подразумевает, что и все пользователи вашего заказчика получат её по этой лицензии (если заказчик её не нарушает), и что они с ней могут сделать всё, что захотят (в рамках лицензии).
Взять и форкнуть — это один из мифов опенсорса. Каждую версию ExtJS форкают, всегда с громкими словами про то, что будут развивать и что настанет коммунизм. Но чтобы развивать или хотя бы просто поддерживать такой проект, как ExtJS нужна очень большая команда энтузиастов, а не пара коммитов за месяц. И разработчики ExtJS прекрасно это понимают, поэтому и держат опенсорс решение (не боятся, что кто-то форкнет и действительно составит им конкуренцию).
coh
Клиенты заказчика пользуются услугой по сети это больше похоже на SaaS в данном случае:
Это не считается распространением в GPLv3.
А вот AGPL накладывает ограничение и на SaaS
coh
Кстати, верно подмечено выше, вопреки общепринятому представлению GPL, Sencha трактует этот момент в свою пользу как передачу, стоит ли в случае чего с ними судиться стоит 100 раз подумать.