Dlaczego programistom podoba się pomysł open source? Nie mówię o twórcach tych projektów, oczywiście, że zyskują sławę, ale mówię ogólnie o branży, dlaczego tak bardzo lubimy koncepcję otwartego oprogramowania, skoro ma ona tak zły wpływ na przemysł?
Po pierwsze, projekty takie jak wordpress i inne CMS, zabierają wiele zewnętrznych zleceń, w których klienci chcą blogu lub prostej strony internetowej. Po drugie, projekty takie jak Railsy i inne biblioteki i interfejsy API powodują, że wielu programistów przestaje działać i zmniejszają popyt na programistów, ponieważ teraz dzięki tym interfejsom API typu open source jeden programista może robić rzeczy, które robiło 10 programistów. I wreszcie, dzięki oprogramowaniu typu open source, takim jak Notepad ++, ludzie czują się zabawnie, kiedy proszą ich o zakup oprogramowania.
Pytanie brzmi: dlaczego nadal lubimy open source, jeśli to nas czyni biednymi? Prawdopodobnie moje życie programisty byłoby trudniejsze, ale przynajmniej mogę na tym zarabiać. Ale teraz bardziej przypomina maszynę zastępującą człowieka, zabawne jest to, że tworzymy te „maszyny”, które same się zastępują.
Powiedzmy, że jeśli wymyśliłeś narzędzie, nie musisz się nim dzielić, to nadal pomoże tobie i twojej firmie. Nawet bez tych narzędzi open source inni programiści będą żyć, ponieważ nadal mają pracę, która przynosi pieniądze.
źródło
Odpowiedzi:
Dlaczego lubimy sprzęt towarowy?
Intel i Dell powstrzymały mnie od pobierania opłat za składanie własnych komputerów i tworzenie własnych płytek drukowanych.
Języki wysokiego poziomu oznaczają, że nie mogę wystawić rachunku za 2 tygodnie pracy za prostą funkcję drukarki napisaną w asemblerze.
I wreszcie Internet oznacza, że ludzie mogą po prostu zadawać pytania za darmo, a ktoś odpowie na nie, zamiast płacić mi za pisanie książek i prowadzenie zajęć.
Właśnie spędziłem kilka dni instalując i ucząc się scipy + numpy + skimage, co oznacza, że udało mi się napisać procesor obrazu w ciągu jednego dnia. To sprawia, że jestem cenniejszy dla akcjonariuszy mojej firmy, niż gdybym spędził tygodnie pracy, analizując matematykę wszystkich oryginalnych artykułów, a następnie kodując wszystko w C ++.
źródło
Czy masz jakieś statystyki, które to pokazują? W rzeczywistości, zgodnie z paradoksem Jevonsa , powinny one powodować większy popyt na programistów.
Ponadto istnieje wiele osób przyczyniających się do otwartego oprogramowania i wolnego oprogramowania, które otrzymują za to wynagrodzenie.
źródło
Powyżej i poza odpowiedzią Martina:
Otwarte źródło oznacza, że masz możliwość pracy nad projektami, nad którymi najprawdopodobniej nie miałbyś szansy pracować, gdybyś po prostu trzymał się tego, co zrobiłeś zawodowo. W tym są dwie ogromne korzyści:
Oba te elementy sprawiają, że jesteś lepszym programistą i bardziej wartościowy dla Twojej firmy.
źródło
źródło
The majority of open source projects are libraries/frameworks which still require developers in order to incorporate them into products.
bardzo prawda.Twoje stanowisko przypomina mi Nowy wspaniały świat . W tej książce sztucznie wstrzymali rozwój naukowy i technologiczny, aby ludzie nie stracili pracy, a status nie straciłby quo .
Mimo to jeden z twoich punktów zwrócił moją uwagę:
Moim zdaniem to rozumowanie jest błędne i oto dlaczego:
Następnie rozwiń ten punkt, aby uwzględnić inne biblioteki i interfejsy API:
Ponownie moja odpowiedź:
źródło
Przydatnym eksperymentem myślowym jest praca wstecz. Po co zatrzymywać się we frameworku internetowym, a co gdyby wszystko musiało być ręcznie kodowane w asemblerze? Ile by to było programistów? Niewiele, ponieważ opracowanie większości rzeczy byłoby zbyt drogie i zajęłoby zbyt wiele czasu.
Posiadanie dużej ilości oprogramowania do zbudowania za darmo rozszerza rynek, na który możesz dotrzeć. Jak duży jest rynek programu C, który piszesz w ciągu dnia? Nie zbyt duży. Jak duży jest rynek witryny internetowej, na którą możesz zarobić cały dzień dzięki darmowym programom? Z łatwością w dziesiątkach milionów.
źródło
Wygląda na to, że obawiasz się, że w pewnym momencie całe oprogramowanie zostanie napisane i zabraknie nam pracy. W rzeczywistości jest odwrotnie. Oprogramowanie nigdy tak naprawdę nie jest „gotowe”, dopóki nie będzie już używane. Im więcej oprogramowania, tym więcej oprogramowania trzeba utrzymywać, ulepszać i rekombinować w nowy i interesujący sposób.
Co więcej, zwiększona dostępność oprogramowania tworzy więcej klientów, a nie mniej. Narzędzia takie jak MySQL i PostgreSQL otwierają moc baz danych dla milionów ludzi i organizacji, które mogą nigdy nie korzystać z bazy danych, gdyby musieli kupić licencję od Oracle. Sieć z pewnością byłaby o wiele mniejsza i mniej przydatna, gdyby nie narzędzia takie jak serwer WWW Apache, a to oznaczałoby o wiele mniej zadań dla twórców stron internetowych.
źródło
Po przeczytaniu pytania przypomniałem sobie strach, który rozprzestrzeniał się na moim miejscu w latach 90., że komputer odbierze im pracę!
Open source i większych społeczności programistów ma kluczowe znaczenie dla wielu powodów;
źródło
Jedną z rzeczy związanych z otwartym oprogramowaniem jest dzielenie się pomysłami / kodem. Z perspektywy rozwoju może być dobrym doświadczeniem w uczeniu się, patrząc na kod innej osoby i ucząc się, jak to działa lub przyczyniając się do projektu open source. Widzę wiele możliwości uczenia się i rozwoju. Nie rozumiem więc, jak mogłoby to być negatywne z perspektywy rozwoju.
Ale z biznesowego punktu widzenia mogą mieć zdecydowanie negatywne konsekwencje. Jeśli sprzedaję produkt dla X, a następnie istnieje projekt open source, który jest bezpłatny (załóżmy, że jest równy), to nie mam działalności.
Nic nigdy nie jest za darmo. Nawet przy projektach typu open source ludzie poświęcili czas na wyprodukowanie czegoś, być może byli gotowi to zrobić, ale czas wciąż był spędzony. Więc to miecz z podwójną krawędzią. Ilekroć coś jest darmowe, obniży wartość rynku, dla którego został opracowany. Po co płacić za coś, kiedy jest bezpłatne? Może to spowodować utratę pracy lub wyschnięcie niektórych rynków.
Ale może także odrzucić innowacje. Może posunąć przemysł do przodu, może pobudzić wzrost i dalsze innowacje.
W końcu wydaje mi się, że jest środek. Z pewnością nie chcemy rozdawać wszystkiego za darmo jako formy programowania socjalizmu. Ale połączenie otwartego i biznesowego źródła utrzyma branżę w zdrowiu i innowacyjności.
źródło
Nadal potrzeba programisty do obsługi tych narzędzi i bibliotek typu open source. Podobnie jak w innych dziedzinach, skala jest większa. Nie jest już niemożliwe budowanie drapaczy chmur, ale nadal wymaga to inżynierów i pracowników. Podobnie, instalacja Wordpressa to 5 minut, ale jeśli chcesz coś spersonalizowanego, nadal wymaga programisty (czy to zwykła zmiana CSS, większość nieprogramiści nie jest w stanie tego zrobić, ponieważ to nie jest ich zawód). Być może nikt nie zatrudni cię do napisania silnika blogów, ale zawsze jest coś do zrobienia. Zadania, które te projekty open source upraszczają lub eliminują, nie zajmują dużo czasu, więc firmy będą robić inne rzeczy i zatrudniają cię do rzeczywistych zadań. Czemu? Ponieważ każdy chce się rozwijać, aby konkurować z innymi. Oznacza to, że będą inwestować w IT, ponieważ ma w sobie wartość biznesową.
źródło
Zaczynasz pytanie pisząc:
Ale oczywiście, to jest właśnie twórcy oprogramowania open source, że sprawa: jeśli nie napisać i udostępnić kod, to nie istnieje; a jeśli tak, to tak, bez względu na to, czego inni mogą chcieć I wielu - powiedziałbym, jeśli nie wszyscy, to prawie wszyscy - czerpią z tego więcej niż sławę.
Oczywiście, niektórzy ludzie zarabiają pieniądze na pisaniu oprogramowania typu open source, albo bezpośrednio (np. Piszą oprogramowanie, a następnie sprzedają wsparcie dla niego) lub pośrednio, ponieważ pracują dla firmy, która płaci im za napisanie (co ogólnie oznacza, że firma coś dostaje więcej niż sławę). Ale wiele oprogramowania typu open source zostało napisane na użytek pisarza, przez ludzi, którzy chcą po prostu „podrapać się”: czerpią użyteczność tylko z istnienia oprogramowania, a wszelkie ulepszenia wprowadzone przez innych są po prostu dodatkowym atutem na początek.
Powiedzmy na przykład, że chcę bloga. Powiedzmy, że chcę, aby mój blog miał zestaw funkcji, których żadne istniejące darmowe oprogramowanie blogowe nie zapewnia od razu po wyjęciu z pudełka (ponieważ wtedy mogę po prostu pobrać oprogramowanie i zainstalować je i gotowe).
Jedną rzeczą, którą mógłbym zrobić, to kupić platformę blogową o zamkniętym źródle, jeśli taka będzie odpowiednia na rynku, i być może zapłacić osobom sprzedającym ją dodatkowo za dodanie funkcji, których potrzebuję. Ponieważ jednak znam trochę Perla i PHP, mam jeszcze kilka opcji:
Mógłbym napisać od podstaw własne oprogramowanie blogowe i zachować je dla siebie.
Mógłbym napisać od podstaw własne oprogramowanie blogowe i wydać je jako oprogramowanie typu open source.
Mógłbym pobrać platformę blogową typu open source i dodać potrzebne mi funkcje (i jeśli chcę i / lub wymaga tego licencja, wypuszczam dodatki jako open source).
(Oczywiście, jeśli moje własne umiejętności programistyczne nie były wystarczająco dobre lub jeśli czułem, że jestem zbyt zajęty, aby tracić czas na taką pracę, mógłbym również zatrudnić kogoś innego, aby zajął się którąkolwiek z tych rzeczy.)
Oczywiście ostatnia opcja będzie prawdopodobnie najłatwiejsza z trzech, jeśli istnieje jakiekolwiek oprogramowanie typu open source, które zbliży się nawet do tego, czego potrzebuję. Ale nawet jeśli nie ma, dlaczego miałbym wybrać opcję 1 zamiast opcji 2?
Pamiętaj, że nie interesuję się sprzedażą blogów ani oprogramowaniem do blogowania innym ludziom - to żmudna i nudna praca, a nie interes, w który się zajmuję. Chcę tylko blogu dla siebie, który ma zestaw funkcji, których potrzebuję . Nic też nie tracę, jeśli ktoś inny używa tego samego oprogramowania do tworzenia własnego bloga; jeśli cokolwiek, jeśli ich blog jest interesujący, właśnie zyskałem coś do przeczytania. Zatem przejście z opcji 1 nie daje mi nic ponad opcję 2.
Z drugiej strony, jeśli wybiorę opcję 2, a ktoś inny zdecyduje się na korzystanie z oprogramowania na swoim blogu, prawdopodobnie będą chcieli korzystać z niektórych funkcji, o które nie zawracałem sobie głowy. A jeśli wdrożą te funkcje i udostępnią je ( albo dlatego, że wymaga tego moja licencja, albo po prostu dlatego, że rozumowali w taki sam sposób jak ja), w końcu mogę znaleźć niektóre z nich przydatne na moim blogu. A może znajdą też błędy, które przegapiłem i naprawię je, co oznacza, że dostaję też poprawkę za darmo.
Dlatego właśnie działa gospodarka open source . Nie chodzi o nieopłacanych programistów piszących niepotrzebne oprogramowanie, a następnie rozdających je „tylko dla sławy”. Raczej chodzi o ludzi, którzy piszą oprogramowanie, które jest dla nich przydatne i dzielą się nimi z innymi, aby ci inni mogli z kolei udostępnić im swoje ulepszenia.
źródło
Nie mam żadnych liczb, ale podejrzewam, że jest o wiele więcej programistów dzisiaj niż jeszcze 10 lat temu. Będąc w pracy związanej z IT od kilku dziesięcioleci, powiedziałbym, że Open Source wydaje się tu pozostać i jest bardziej korzystny niż szkodliwy.
Sam Open Source nie jest bardziej szkodliwy niż (powiedzmy) PHP lub Ruby. Oba, nawiasem mówiąc, języki Open Source. Kiedyś, jeśli cofniesz się wystarczająco daleko, kompilatory taht (i tłumacze) były czymś, za co trzeba było zapłacić, ale w dzisiejszych czasach można uzyskać przyzwoite kompilatory za darmo. Wydaje się, że nie zatrzymał działalności polegającej na „pisaniu komercyjnych kompilatorów” (ale nie wiem, czy wzrosła, zmniejszyła się lub pozostała taka sama przez jakiś czas).
źródło
To nie jest głupie pytanie. Mógłbym argumentować, że nie ma potrzeby pisania przydatnego oprogramowania do sprzedaży, ponieważ prawdopodobnie istnieje już darmowa alternatywa open source. Jeśli tak nie jest, być może wkrótce moje oprogramowanie będzie dobre.
Rzeczywistość nie jest taka. Pamiętam, że w późnych latach 80. i wczesnych 90. istniała już duża ilość wolnego oprogramowania. Zobacz przykładowy artykuł na temat Freda Fisha. Miałem własne dystrybucje, ale najwyraźniej nie były wystarczająco ważne, aby uzasadnić artykuł na wiki;)
Ale dla pieniędzy oprogramowanie nadal się pojawia i przynosi zysk. Pracuję jako programista i zarabiam na tym uzasadnioną skórkę. Czasami otwarte oprogramowanie pomogło mi w rozwoju firmy, nigdy nie było problemu, więc w sumie jest to korzystne.
źródło
Richard Stallman, założyciel Free Software Foundation, zostało wyjaśniając dla dekad dlaczego jesteś w błędzie. Linux, Firefox, MySQL oraz sama koncepcja i kultura Open Software istnieją tylko dlatego, że wiele osób uważa te argumenty za przekonujące. Przeczytaj o tym na stronie internetowej FSF (przewiń w dół do „Łatwo odrzuconych zastrzeżeń”, aby uzyskać odpowiedzi na swoje pytanie).
http://www.gnu.org/gnu/manifesto.html
źródło
Myślę, że jego „LOGIKA BIZNESOWA” ma największe znaczenie i przynosi pieniądze.
Więc pozwól ludziom zbudować świat open source, a ty martwisz się, jak zrobisz z tego dobry biznes.
źródło
Wydaje się, że założeniem tego pytania jest to, że jedynym powodem do napisania kodu jest fortuna lub sława; ale w rzeczywistości istnieje jeszcze jeden powód, aby pisać kod, tworzyć oprogramowanie lub wymyślać jakąkolwiek nową technologię ... mianowicie uczynić życie ludzi lepszym, wydajniejszym i wydajniejszym!
źródło
Jeśli chcesz zbudować wysokiej jakości oprogramowanie, znajdziesz bezpłatne oprogramowanie typu open source. Jeśli twój produkt jest dobry, sprzedaje się. Pamiętaj, że produkt, który sprzedajesz, może mieć dowolną formę, na przykład Software As A Service (SAAS) lub Platform As A Service (PAAS).
Opracowując produkt, chcesz wydać ograniczone zasoby (czas i pieniądze) na zwiększenie wartości produktu, a nie na pisanie kodu (szablonu). Projekty open source zwykle wytwarzają oprogramowanie wysokiej jakości, ponieważ są otwarte. Więcej programistów może przeglądać kod źródłowy i dodawać poprawki zawierające poprawki błędów, optymalizacje lub więcej funkcji. Nie zyskujesz tego luksusu, kupując oprogramowanie do wykorzystania w swoich produktach. Nie twierdzę, że kupowanie oprogramowania jest złe. Jest źle, gdy nie wolno ci patrzeć na jego kod źródłowy, aby zobaczyć, jak to działa lub go naprawić. I wiele razy wiąże się to z drogim i niskiej jakości pakietem wsparcia i / lub z zależnościami od drogich komponentów innych firm (koszmar, gdy martwisz się całkowitym kosztem posiadania).
Teraz należy wprowadzić rozróżnienie między licencjami typu copyleft, takimi jak GNU GPL, a bardziej liberalnymi licencjami, takimi jak licencja MIT. Mają różne cele. Licencje Copyleft wymagają, aby dystrybuując swój produkt, musisz zapewnić pełny dostęp do kodu źródłowego i pozwolić innym na modyfikowanie go według własnego uznania. Myślę, że to dobra rzecz, ale trudniej jest zarabiać na swojej pracy. Właśnie dlatego najbardziej udane projekty open source są licencjonowane na podstawie zezwolenia permisywnego (MIT, BSD, Apache, MPL itp.) Niż licencje copyleft, takie jak GPL lub AGPL. W przypadku licencji copyleft zazwyczaj trudniej jest chronić swoje korzyści handlowe, ale zależy to od modelu biznesowego. Inną rzeczą, którą zaobserwowałem, jest to, że komponenty wydane na licencji copyleft są zwykle izolowane, gdy są zintegrowane w systemie, dzięki czemu nie „
Osobiście wierzę we wszystkie powyższe modele, ponieważ, tak jak w naturze, zawsze istnieje więcej niż jeden sposób, aby coś osiągnąć i musisz wybrać model, który dobrze spełnia twoje zadanie.
źródło