Jak przekonać moją firmę do udziału w Open-Source?


11

Próbuję przekonać firmę, dla której pracuję, do wniesienia wkładu w oprogramowanie typu open source, a konkretnie do zbudowania biblioteki / komponentu dla aplikacji internetowych ASP.NET. Zbliża się „Dzień Innowacji”, w którym możemy pracować nad własnymi osobistymi projektami zwierząt domowych w pracy, podobnymi do zasad Google dotyczących jednego dnia w tygodniu, z wyjątkiem tego, że nasz jest raz w miesiącu :-), i mam pomysł, że chcę otwarte źródło.

Inne firmy to robią, np. Headspring Systems ( http://automapper.codeplex.com - patrz baner u góry).

Co mam im powiedzieć? Jakie korzyści mogę im przekazać, które byłyby korzystne dla firmy? Wspomniałem już o możliwym narażeniu naszej firmy i reputacji itp., A także o przyciągnięciu najlepszych programistów, gdy następnym razem pójdziemy na szał rekrutacyjny. Ale jakie inne argumenty mogę przedstawić?

Aktualizacja: Firma, dla której pracuję, jest firmą programistyczną, która głównie tworzy aplikacje internetowe w ASP.NET i MS Stack. Naszymi klientami są głównie NHS (sektor zdrowia publicznego w Wielkiej Brytanii).


1
Znajdź istniejący projekt open source, który modyfikujesz. To, co wydasz, musi być open source. Prawdopodobnie jest już coś, co może być przydatne, ale po prostu wymaga dostosowania w celu dopasowania do potrzeb Twojej firmy.
Macneil,

1
Czy Twoja firma jest firmą technologiczną - np. Czy rozwijasz i sprzedajesz technologię? Myślę, że łatwiej jest argumentować w firmie technologicznej, ponieważ masz motyw zysku, aby rozwijać określone platformy; na przykład Engine Yard zatrudnił programistów JRuby do ogólnego rozwoju ekosystemu Ruby, ponieważ przyniesie im to więcej działalności. Jeśli Twoja firma jest użytkownikiem technologii, myślę, że przedstawiłeś najlepsze argumenty.
Jeremy,

1
@Jeremy: Tak, przepraszam, prawdopodobnie powinienem wspomnieć, że jesteśmy firmą programistyczną, która głównie tworzy aplikacje internetowe w ASP.NET i na stosie Microsoft.
Niedziela Ironfoot,

Macneil, który należy dodać jako odpowiedź, a nie komentarz.
Peter Boughton,

@Peter: Dzięki, chociaż mam wątpliwości, że to właściwie argument, który należy przedstawić firmie. Więcej tylko specjalnych okoliczności. W środowisku akademickim często budujemy oprogramowanie typu open source, abyśmy mogli zwiększyć wpływ i uniemożliwić różnym podmiotom administracyjnym przejęcie kontroli nad naszym kodem. Znam profesorów, którzy mają patenty na swoją pracę, mimo że protestowali!
Macneil,

Odpowiedzi:


11

Musisz zrobić uzasadnienie biznesowe. Robiłem to już wcześniej, argumentując, że własność intelektualna, którą będziemy pozyskiwać na zasadach otwartych, nie była podstawowym zasobem biznesowym (nie różnicowała nas), ale poprzez udostępnienie kodu stworzylibyśmy kanał marketingowy dla użytkownicy tego kodu open source, którzy również są naszymi docelowymi odbiorcami.

Możesz użyć tej teorii: „ Commoditize Your Complementy


„własność intelektualna, którą stanowilibyśmy jako open source, nie była kluczowym zasobem biznesowym (nie wyróżniała nas)”… i to są kluczowe kryteria, które mogą pomóc ci ustalić, czy jest ona odpowiednia dla open source.
Paul Draper,

2

Komponent Open Source ma sens, jeśli - i tylko jeśli - pielęgnujesz projekt i budujesz społeczność. Akceptuj raporty błędów, naprawiaj błędy i regularnie wprowadzaj nowe wersje. Jeśli to zrobisz, podobnie jak zrobiły to Eclipse i Mozilla, możesz zebrać korzyści.

Jeśli tego nie zrobisz, doświadczeni ludzie będą mogli wyczuć milę, którą właśnie zrzuciłeś z bazy kodu, mając nadzieję, że inni wykonają za ciebie pracę.


Nie spodziewalibyśmy się, że inni ludzie wykonają całą pracę. Prawdopodobnie opracowalibyśmy ten komponent w pełni, a następnie open-source, pozwalając innym na czerpanie z niego korzyści, lub dalej go rozwijać, jeśli chcą.
Niedziela Ironfoot,

Ale czy zachowałbyś to wtedy?

1

Cóż, jednym z największych argumentów przemawiających za otwartym oprogramowaniem jest to, że inni mogą się do niego przyczynić, myśląc, że jeden programista nie może mieć nadziei na wykrycie i naprawienie 1000 błędów w swoim programie, ale 1000 programistów może. Oprócz wszystkich wymienionych korzyści, jest to oczywiście wybór do opracowania oprogramowania bootstrap, które w pewien sposób pomaga Twojej firmie.

To także daje ci władzę. Być może trochę go rozciągam, ale jeśli twój pomysł jest wystarczająco innowacyjny, możesz stworzyć nowy standard, który muszą spełnić inni. Oznacza to, że każdy, kto chce zrobić cokolwiek z twoim oprogramowaniem do celów komercyjnych, musi najpierw cię o to zapytać, co oznacza, że ​​możesz rzucić kilka krzywych, które mówią, że gdy kod jest otwarty, użycie standardu do celów komercyjnych wymaga niewielkiego wkładu, który wcale nie jest nierozsądne, więc ma potencjał także na późniejszych etapach.


Ograniczanie komercyjnego wykorzystania kodu jest niezgodne z zasadami zarówno Open Source Initiative, jak i Free Software Foundation. W większości przypadków sądzę, że spowodowałoby to więcej problemów w społeczności, niż byłoby to warte. Jeśli naprawdę chcesz, aby tysiąc programistów patrzyło na kod, użyj licencji certyfikowanej przez OSI.
David Thornley,

Jesteś tego pewien? Zrozumiałem, że licencja Open Source pozwala każdemu na swobodne oglądanie kodu, ale nie mówi nic o produktach wytworzonych z takiego kodu.
Neil

Jestem tego całkowicie pewien i wspomniałem o inicjatywie Open Source i ich licencjach, aby uniknąć typowego zamieszania. „Open Source” to niejednoznaczne zdanie. Jednym ze znaczeń jest to, że możesz uzyskać źródło, niezależnie od tego, co możesz z nim zrobić. Jedna jest licencjonowana z licencjami certyfikowanymi przez OSI, i to zwykle oznacza, jeśli fraza jest pisana wielkimi literami. Jeśli chcesz zaangażować społeczność, skorzystaj z definicji OSI. Znacznie mniej osób będzie zainteresowanych pomocą w czymkolwiek, co nie jest objęte licencją typu OSI.
David Thornley,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.