Разработка с открытым исходным кодом. История OpenOffice показывает, почему лицензирование имеет значение

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

Развитие программного обеспечения с открытым исходным кодом не всегда проходит гладко, особенно когда разработка программного обеспечения связана с более широкими корпоративными стратегиями.

Действительно, сложная история и неразбериха при разработке OpenOffice, скачать русскую версию OpenOffice можно на сайте https://openoffice-pc.ru/, а также разногласия между LibreOffice и Apache OpenOffice являются полезным уроком.

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

Когда Sun Microsystems в 2000 г. представила сообществу разработчиков ПО с открытым исходным кодом программный пакет StarOffice с открытым исходным кодом, компания пообещала создать самоуправляемый фонд и передать код под контроль сообщества. Но авторские права на код остались за Sun, а управление проектом оставалось за ней.OpenOffice.org (OO.o) можно было рассматривать как проект с открытым исходным кодом только в том смысле, что исходный код был видимым. Но ни лицензирование, ни управление не были прозрачными, и последующий прогресс никогда не соответствовал амбициям разработчиков.

 

Собственность и жесткий контроль

Sun имеет давнюю традицию вносить вклад в проекты с открытым исходным кодом и извлекать из них выгоду, но всегда сохраняет за собой право собственности и жесткий контроль. Вначале Sun лицензировала код OO.o по двойной лицензии LGPL и Sun Industry Standards Source License (SISSL). SISSL была разрешающей лицензией и позволяла повторно использовать код в проприетарных продуктах третьими сторонами.

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

Код, номинально переданный в дар проекту под лицензией с авторским левом, был передан IBM в качестве основы для Lotus Symphony, что не входило в планы разработчиков. IBM не вносила поправок в код.

Управление OO.o оставалось внутри компании. Исправление ошибки было медленным и трудоемким. Авторы разочаровались, приходили и уходили.

Novell создала свою собственную ветвь OO.o, go-oo.org, для поглощения изменений, отклоненных Sun по причинам лицензирования, и эта ветка стала установкой по умолчанию для всех дистрибутивов GNU/Linux.

Взносы сторонних разработчиков прекратились, и OO.o так и не добился того прогресса, которого от него ожидали.

 

Солнце садится

Когда в 2010 году Sun вошла в состав Oracle, OpenOffice.org не входил в число приоритетов компании.

После нескольких месяцев уловок со стороны Oracle и StarDivision сообщество сделало радикальный шаг, основав Document Foundation, по-настоящему независимую некоммерческую организацию по модели, обещанной Sun в начале проекта, и разработало код для создания LibreOffice.

Document Foundation был шансом исправить некоторые недостатки прошлого и создать настоящее сообщество обмена кодами.

Через шесть месяцев после объявления о выходе из состава LibreOffice Oracle объявила о своем намерении передать авторские права и товарный знак OpenOffice.org Apache Software Foundation. Этот подход также представляет собой улучшение предыдущего режима.

IBM поддержала этот шаг и объявила о своем намерении в будущем выпустить «идентичный выпуск кода Apache OpenOffice под лицензией Apache», но опасность репликации кода под другой лицензией заключалась в том, что это настраивало сообщество против сообщества, лицензию против лицензии, и Apache OpenOffice против LibreOffice.

LibreOffice предложила участие как IBM, так и Oracle и была готова перелицензировать код под слабой лицензией с авторским левом, Mozilla Public License (MPL), чтобы упростить задачу.

Но ее достижения были отвергнуты, и ветвь Apache стала излюбленным маршрутом IBM. Теперь было два офисных пакета, и у обоих возникали все возрастающие проблемы с перелицензированием программного обеспечения.

 

Переход Apache OpenOffice

Остаточная проблема LibreOffice заключается в том, что, хотя она предпочитает режим лицензирования с авторским левом, авторские права на код, унаследованный от Oracle-Sun, по-прежнему принадлежат Oracle.

Таким образом, разработчики LibreOffice рассматривают возможность переустановки кода LibreOffice на основе перелицензированного кода Apache, поскольку лицензия Apache позволяет повторно выпускать код под другими лицензиями.

С перелицензированием исходной базы кода OpenOffice.org на лицензию Apache License 2.0 компанией Oracle, — говорили они, — мы теперь можем постепенно переустанавливать наш собственный код поверх этого, чтобы предложить выбор лицензирования, который не только включают LGPLv3, но также любые из GPLv3.0 +, LGPLv3.0 + и AGPLv3.0 +, которые допускаются MPLv2 +.

«Это также позволит нам включать любые полезные улучшения, которые время от времени становятся доступными по этой лицензии».

Для этого есть веская причина, как заявляют разработчики: «Поскольку мы конкурируем с нашим собственным кодом, лицензированным по бесполезно разрешительной лицензии, MPL дает некоторые преимущества в привлечении коммерческих поставщиков, распространении в магазинах приложений Apple и Microsoft, а также по мере развития наших портов Android и iPhone на планшетах и ​​мобильных устройствах «.

Двойное лицензирование в рамках LGPLv3 + и Mplv2 + позволяет переносить LibreOffice в магазины приложений, которые по извращенным причинам разрешают код под лицензией MPL с авторским левом, но не допускают код под лицензией GPL с авторским левом.

 

Проблемы Apache OpenOffice

Однако у Apache OpenOffice есть свои особенности: текущий выпуск Apache OpenOffice основан на последнем выпуске Oracle OpenOffice.org. Но с тех пор IBM пожертвовала код Lotus Symphony для Apache с намерением интегрировать Apache OpenOffice и Lotus Symphony, который основан на более старых версиях OpenOffice.org и включает несколько лет адаптации IBM.

Следующая версия Apache OpenOffice, вероятно, будет сильно отличаться от текущей версии Apache OpenOffice, и различия, вероятно, будут касаться самого кода, потому что Lotus Symphony никогда не был открытым исходным кодом, и код никогда не выпускался в апстриме.

По сути, и Apache OpenOffice, и LibreOffice имеют одну и ту же проблему — перебазирование кода, чтобы исправить унаследованную амбивалентность в лицензировании.

Последний поворот в наследстве OpenOffice.org заключается в том, что текущий выпуск Unbreakable Linux от Oracle, который является клоном Red Hat Enterprise Linux, включает LibreOffice, ответвление сообщества OpenOffice.org , в качестве предпочтительного офиса. пакет повышения производительности, а не Apache OpenOffice, официальная версия кода, которым он когда-то владел.



2020-09-29T11:11:30
Kali Linux

Как найти длину списка в Python

Списки являются одним из наиболее часто используемых типов данных в Python и используются для хранения коллекций элементов одного типа.

В этой статье показано, как определить длину списка.

 

Функция len()

Python имеет встроенную функцию len(), которая возвращает длину заданного объекта. Объектом может быть список, кортеж, строка, словарь и т. д.

Синтаксис функции len() следующий:

len(list)


 

Функция принимает только один аргумент. Возвращаемое значение — целое число, которое представляет собой количество элементов в списке.

Вот пример:

cities = ['Krasnodar', 'Moscow', 'Ekaterinburg', 'Rostov']



list_len = len(cities)



print("The list has {0} elements.".format(list_len))


 

The list has 4 elements.


 

Использование цикла

Другой способ узнать длину списка — использовать цикл for. Это работает путем установки счетчика и перебора всех элементов списка. На каждой итерации текущее значение counterпеременной увеличивается на единицу.

Ниже приведен пример кода, который показывает, как с помощью цикла for найти количество элементов в заданном списке :

cities = ['Krasnodar', 'Moscow', 'Ekaterinburg', 'Rostov']

counter = 0



for capital in cities:

  counter = counter + 1



print("The list has {0} elements.".format(counter))


 

The list has 4 elements.


 

Этот метод не очень питонический. Вы всегда должны предпочесть использовать функцию len().

 

Вывод

Чтобы узнать длину списка в списке Python, используйте функцию len().

Если у вас есть вопросы или отзывы, не стесняйтесь оставлять комментарии.



2020-09-29T09:29:17
Python

🐳 Ручной деплой Docker образов в продакшен

Когда-то в нашей стране существовали различные необычные профессии, которые теперь остались далеко в истории, но многие удалось упомянуть и запечатлеть, например, в литературных произведениях и картинах. Знаменитая картина Ильи Репина “Бурлаки на Волге” как раз показывает ту самую профессию, что была когда-то и потом просто исчезла, но память о ней осталась и по сей день.

Кто такие “Бурлаки”

В 18 веке в нашей стране имела популярность деятельность бурлаков. Бурлаками являлись наемные рабочие, которые выполняли очень тяжелую и монотонную работу. Их работа заключалась в том, чтобы вдоль берега реки тянуть судно против течения. Такая работа выполнялась с помощью специальной веревки, так называемой бечевы. Бечева обвязывалась на плечах бурлака, а другой конец цеплялся за нос корабля. Такую работу могла выполнить только группа людей, поэтому Бурлаки объединились в бригады и трудились все вместе. В каждой бригаде были свои роли ведущего, замыкающего и других. У бурлаков были даже свои собственные песни, которые они часто напевали во время работы. Их деятельность стала исчезать в тот момент, когда стало больше пароход.



2020-09-29T09:03:34
Юмор

Заказы AliExpress теперь можно будет получить на Почте России

Расширение стало возможным благодаря соглашению о совместном развитии логистики до 2025 года. Это соглашение было заключено между «Почтой России» и компанией «AliExpress Россия».

Таким образом в отделениях «Почты России» появятся фирменные постаматы. В них можно будет забирать заказы от AliExpress, не прибегая к помощи почтового оператора.

«Пилотным» городом для подобных нововведений выбран Новосибирск. Затем проект будет масштабирован на всю Россию.

Где купить антивирус Касперского по низкой цене?

Антивирусы от Касперского – это одно из лучших решений для защиты вашего компьютера, так как компания занимается разработкой антивирусов уже долгое время, и за этот промежуток разработала серьезные и инновационные продукты, как для домашних ПК, так и для корпоративных, где требуется полный контроль всех устройств, сотрудников. Только вот приобрести официально лицензионную версию может позволить себе не каждый человек, так как стоимость одного ключа активации в среднем выходит несколько тысяч рублей. Уж если речь идет об отдельных регионах России или СНГ, то там и вовсе среднестатистический пользователь не может приобрести лицензию Касперского, так как у него попросту нет лишних средств не это. Что же делать в таком случае?

Мы предлагаем вам купить для Kaspersky Internet Security ключ по выгодной цене, такой, которую вы не встретите ни на одном сайте. А что самое важное: это настоящий лицензионный код активации, который позволит вам получить все преимущества и возможности антивируса. И все что вам нужно – это зайти на сайт topsaleshop.net и приобрести его, после чего активировать в специальном окне на компьютере, установив соответствующий дистрибутив. Почему именно на этом ресурсе, спросите вы? Здесь продают ключи для разных программ, в том числе и операционной системы Windows, Microsoft Office, различных антивирусов и прочих приложений, и все они предоставляются с огромной скидкой для каждого покупателя.

Интернет-магазин существует в интернете уже несколько лет, и за этот период времени на нем было куплено несколько десятков тысяч ключей с разных уголков планеты. Люди предпочитают выбирать дешевые продукты, пренебрегая качеством, однако в этом сервисе вам гарантируют и качество, и низкий ценник. Kaspersky Internet Security – это самый популярный антивирус от Лаборатории Касперского, в котором сосредоточены лучшие технологии разработчиков и инновационные решения для обеспечения максимальной степени защиты во всех направлениях. Причем купить ключ активации можно как для компьютера, так и для смартфона, например, на базе Android. Оплата осуществляется в несколько кликов и не требует от вас никаких специфических знаний в области компьютерных систем.

К оплате принимаются любые платежные системы, комиссия при этом остается на магазине, поэтому вы платите ровно столько, сколько указано на ценнике в сервисе. Также каждому пользователю предоставляется персональная скидка, которая напрямую зависит от количества покупок. Чем больше вы приобретаете товаров в этом сервисе, тем выше будет ваша скидка, и она сохраняется на постоянной основе. Все что вам нужно – это использовать единый почтовый ящик при покупке лицензионных ключей. И еще один важный момент – это отдельные акции и скидки. Примерно 1 раз в месяц могут проводиться акции, в рамках которых дополнительно снижается стоимость лицензии, например, на 10,15,20%, что в итоге еще сильнее снижает ценник.

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



2020-09-29T08:51:59
Безопасность

MikroTik HotSpot One to One NAT/Universal HotSpot NAT

MikroTik Hotspot is an awesome service that can be customized widely. When MikroTik Hotspot is enabled on an interface, it adds dynamic destination NAT rules which will redirect all HTTP and HTTPS requests from unauthorized users to the Hotspot authentication proxy. So, no user can get internet access in Hotspot network without authentication. MikroTik Hotspot also uses one to one NAT providing an IP address from selected IP Pool and this IP address handles user’s data and limitation. Sometimes we may feel that this second IP address is completely IP wasting or sometimes we see that our network block has few IP addresses to serve new clients. So, in this article we will see how to solve this MikroTik Hotspot issue in our Hotspot network.     




What is HotSpot One to One NAT? 




In a Hotspot network, a client has to get an IP address to get Hotspot Login page because without authentication client will not be able to get internet access. The IP address may be set on the client statically or may be leased from a DHCP server. The DHCP server may provide ways of binding lent IP addresses to clients MAC addresses, if required. The HotSpot system does not care how client get an address before he/she gets to the HotSpot login page.






HotSpot server automatically and transparently assigns a new IP address for an authenticated client from unused address of IP pool selected in Hotspot user profile. The users will not notice the translation because there will not be any changes in the users’ network configuration but the router itself will see completely different source IP addresses on packets sent from the clients even the firewall mangle table will see the translated address. This technique is called Hotspot one-to-one NAT or Universal Hotspot NAT. It was also known as Universal Client in earlier RouterOS version. This one to one NAT technique is completely maintained by Hotspot Server.




How to Keep Same Host and Hotspot NAT IP Address  




We usually configure Hotspot Server with Hotspot Setup wizard which will configure DHCP Server and Hotspot Server on same IP Pool and same network. So, when a client gets authenticated, he/she usually uses two IP addresses, one for Host IP address and another for Hotspot NAT IP address (Hotspot NAT IP address is denoted as to-address in MikroTik Hotspot). If we feel this is a waste of IP address, MikroTik Hotspot provides opportunity to set same Host and Hotspot NAT IP address.






The following steps will show how to setup same Host IP address and to-address in MikroTik Hotspot.




  • Login to MikroTik Router using Winbox software with full permission user.
  • Go to IP > Hotspot menu item. Hotspot window will appear.
  • Click on User Profiles tab and then double click on any created user profile.
  • Under General tab, choose none from Address Pool drop down menu.
  • Click Apply and OK button.
  • Do this for all your created user profiles including default profile.




Mikrotik Hotsopt keeping same Host and to-address




As we have set no IP Pool for Hotspot user, Hotspot Server will assign same Hotspot NAT IP address (to address) that was assigned for the Host. 




It is also possible to define separate IP network for both DHCP Server and Hotspot Server. In the next article we will see how to configure Hotspot Server with separate IP Network.




If you curious to know more about MikroTik Hotspot, search MikroTik Hotspot Server in System Zone search box and get your desired topics instantly. 




What is Hotspot one to one NAT and how to keep same Host and to-address have been discussed in this article. I hope you are now able to customize Hotspot server yourself. However, if you face any confusion about MikroTik Hotspot one to one NAT, feel free to discuss in comment or contact me from Contact page. I will try my best to stay with you.



2020-09-27T10:07:41
MikroTik Hotspot Tutorials & Guides