Большинство тех программ, которые сегодня продаются и покупаются на рынке или скачиваются с Интернета, находятся в скомпилированном виде. То есть, код такой программы (исходный код), который создал разработчик, обрабатывается специальной программой-компилятором, в результате чего код преобразовывается в понятный для компьютера. (Если вы интересуетесь подробностями этого процесса, можете изучить статью по данной теме, под названием «Как реализовывается программирование на С»).
После того, как программа откомпилирована, очень трудно модифицировать эту версию, а еще труднее узнать, как разработчик осуществил разные части этой программы. Для большинства производителей программного обеспечения это является большим преимуществом, так как не дает возможности фирмам-конкурентам узнать исходный код программы и использовать его в собственных разработках. Также это позволяет усилить контроль над качеством и функциональными характеристиками, свойственными конкретному лицензионному товару.
Что касается программ с открытым исходным кодом (англ. open source software), то это полная противоположность вышеупомянутых программных продуктов. Здесь исходный код свободно распространяется вместе с откомпилированной копией. К тому же разработчики приветствуют модификацию или улучшение возможностей программы сообразно тем требованиям, которые эта программа призвана удовлетворять. Разработчики считают, что именно использование открытого исходного кода поможет в будущем усовершенствовать их системы, избавится от существующих недостатков и сделать их полезнее. И все это благодаря свободному доступу всех желающих к исходному коду программы.
Для того, чтобы программа считалась такой, которая имеет открытый исходный код, она должна соответствовать неким критериям. А именно:
— программа должна быть легко доступна (она также может быть составляющей коммерческого пакета программ);
— вместе с программой должен находиться исходный код;
— любой заинтересованный человек может без проблем редактировать этот код;
— уже измененные копии программы точно также как и оригиналы, должны свободно распространятся, если они не являются частью сборника программных продуктов разных разработчиков;
— лицензия не должна требовать исключения других программных обеспечений.
В пример kompik63.ru хочет привести одну реальную историю, когда открытый исходных код получил всемирное распространение. В 1991 году один студент Хельсинского университета (Финляндия), Линус Торвальдс, заявил о создании новой операционной системы Linux, основанной на Minix, что является производной от Unix. Он выпустил первую версию Linux 0.02 под открытой лицензией General Public License. В этом соглашении находилось толковое юридическое определение продукта с его открытым исходным кодом. Программа быстро распространилась по всему миру, и множество людей стали ее использовать. Среди них оказалось большое количество программистов, которые сами были способны вносить некие коррективы в исходный код системы. На протяжение последующих трех лет Торвальдс собирал эти модификации и дополнения к базовой версии программы и уже в 1994 году он разработал т выпустил новую улучшенную версию Linux 1.0.
Некоторые потребители, которые хотят использовать открытый исходный код в своих разработках, обеспокоены отсутствием технической поддержки и какой-либо гарантии. Поскольку лицензия такого программного обеспечения предполагает осуществление модификаций и изменений исходного кода, то поддерживать эти системы стает почти невозможным. Вот именно поэтому компания Red Hat Software, которая была создана в 1994 году и создала «Официальный Red Hat Linux», успешно продает эти бесплатные программные продукты. Секрет их успеха в том, что в пакет к самой программе они добавляют также и техническую поддержу, и гарантию. Для большинства потребителей эти факторы будут играть решающую роль, когда есть выбор: либо приобрести лицензионную версию Linux, либо скачать ее бесплатную версию.
Red Hat Linux не единственная компания, которая пошла по пути создания пакетов Linux, которые предназначены для перепродаж. Некоторые компании комплектуют эти пакеты дополнительными программами.
Самыми популярными среди программного обеспечения, которое основывается на применении открытого исходного кода, являются Linux, Mozilla, Apache, PERL и PNG.
Хех. Не только мы (пользователи) радуемся этому. Но и СБ ручки потирает в сторону открытого кода.