Temat: Rzeczywiste projekty c++
Krzysztof W.:
Moim zdaniem tutaj też trzeba postawić granicę pomiędzy "hobbystycznym" OpenSource gdzie wspomniane zagrożenia istnieją, a poważnymi projektami OS z wsparciem firm zarabiających na supporcie i innych usługach związanych z danym oprogramowaniem. Np właśnie OpenCV jest wspierane zarówno przez firmę bezpośrednio zajmującą się jego rozwojem (Willowgarage), jak i w jego rozwój jest zaangażowanych wielu partnerów (m.in. Intel).
To prawda. OpenCV wspierany jest przez Intela. Dla mojego obecnego zleceniodawcy to jednak nie ma żadnego znaczenia. Nie może być open source i koniec. Z bibliotek komercyjnych Intela IPP za to mogę korzystać. Przedstawiam tu stanowisko firmy, a nie moje. Ja osobiście korzystam z open source. Zwracam jednak uwagę, że nie wszystkie firmy z tego korzystają. Trzeba mieć to na uwadze w fazie wybierania projektów bądź projektowania oprogramowania. Może się okazać, że nasze założenia (użycie bibliotek os) mogą być złe. Dla przykładu, mamy gotową funkcję do robienia jakiś złożonych operacji w jakimś pakiecie open source. Jej napisanie od podstaw zajęłoby wiele osobogodzin. Zakładamy użycie open source i zleceniodawcy mówimy, że wykonamy coś w określonym czasie, który nie uwzględnia napisania tej funkcji, a jedynie użycie gotowca. Bez "dogadania" szczegółów tj. czy możemy wspomagać się open source, czy nie, jesteśmy w plecy. Na pewno nie dotrzymamy terminu, jeśli zleceniodawca nagle powie, że nie możemy użyć open source. Jeśli zleceniodawca jest mało zorientowany w IT, wtedy to przejdzie.
Poza tym czasem dostęp do źródeł to najbardziej dalekowzroczna wersja supportu, komercyjne biblioteki i ich autorzy też nie są "wieczni", a ich rezygnacja ze rozwoju/wsparcia często oznacza znacznie szybszy upadek projektu niż przy OS.
Tutaj się całkowicie nie zgadzam. Mam zupełnie inne podejście. Jeśli już z czegoś korzystam, to nie chce mi się "grzebać" we wnętrzu tego rozwiązania. Nie lubię modyfikować nie swojego kodu w dużym projekcie. Lubię "czarnoskrzynkowe" podejście. Oczywiście nie mówię tu o modyfikacjach w stylu "a jeszcze podzielę wynik przez siedem". Projekty open source można podglądać w trakcie uczenia się programowania.
Wszystkie komercyjne projekty, których używam są "wieczne". To, że wymieniają się programiści tworzący rozwiązanie, nie oznacza zaprzestania projektu. Dla mnie to raczej dopływ nowych rozwiązań, innego myślenia itd. Często open source jest fazą wstępną jakiegoś komercyjnego projektu. Można się na to złapać.
Nie mniej jednak chyba zbaczamy z tematu rozmowy :)