Моят опит с отворен код е значително по-скромен: няколко програмки, които написах за удоволствие, защото ми беше интересно, след което ги пуснах свободни за всеки, който би имал полза от тях (имаше) и един малко по-голям проект, от който имах нужда, беше полезен не само за мен и също го направих достъпен, защото не вярвам че от него мога да печеля достатъчно. А, и един превод, по който отдавна не съм правил нищо; сега не ми е това.
Тоест, моята мотивация да пиша отворен код е интереса ми към технологиите и желанието да си играя с тях, комбинирано с факта, че създадения продукт не е с невиждана комерсиална стойност и не мога да си позволя да се занимавам с него като основен бизнес.
Наистина, не мога да си позволя да отделям от основното си време и да пиша код със скоростта, с която бълвам в основната си работа, но за сметка на това мога да си позволя да изпипвам програмите си. (И тук една от основните разлики с комерсиалния продукт - винаги можеш да си сложиш най-новата версия, не е нужно да преценяваш струват ли си допълнителните разходи.)
Определено смятам, че отворен код не трябва да се пише пряко сили и против волята, парите или времето на хората. Щом имаш други грижи, можеш единствено да поговориш с другите, да им дадеш идея-две, да опишеш накратко алгоритъм ... такива неща.
Дотук не казах нещо много важно. Проектите с отворен код се делят на три основни класа: солови програми с един-двама програмисти + може би още няколко, които помагат рядко с бъгфиксове; средни продукти (да кажем до десет програмисти) и големи, колективни проекти (gcc, KDE, apache, Linux-ядрото), разработвани от десетки, понякога дори сотици програмисти.
За личната мотивация на всеки от участниците вече казах горе-долу как е според мен, искам само да добавя, че при някои от средните и повечето от големите проекти често има класическо финансиране/заплащане; тези продукти имат и комерсиална стойност, постигана обикновено като се предлагат специални възможности/поддръжка.
Проблемите в развитието на отворения код имат общо с развитието на затворения код. Нямам време да пиша подробно, но искам да посоча няколко ключови проблема:
- малките проекти обикновено нямат добра документация, а понякога нямат дори добра вътрешна структура
- трудно е да се направи хубаво обобщение на проблема, затова са почти винаги тясно специализирани
- малко хора просто не могат да направят голямо решение. При изпълнени горните условия се получава нещо като верижна реакция - големият продукт е полезен на много хора, съответно повече хора работят по него, той става още по-добър, още повече хора могат да го използват и подобряват и така
Разбира се, за всякакви проекти има място под слънцето. Просто се опитах някакси да обясня защо някои програмисти са разочаровани от отворения код. В него, както във всяка човешка дейност трябва да има изгода за извършващия я. Понякога тя е самия продукт, понякога е отношението на околните, понякога парите им . Най-добре е комбинацията  
|