Jak promować projekt open source?

29

Po pierwsze przepraszam, że jest to niewłaściwa sekcja sieci, aby opublikować to pytanie. Jeśli tak, prosimy o przeniesienie go w bardziej odpowiednie miejsce ...

Pytanie: Chciałbym usłyszeć twoje pomysły dotyczące sposobów uruchamiania i prowadzenia projektów typu open source. Mam projekt systemu zarządzania treścią typu open source i tutaj pojawiają się pytania: Jak powinienem postępować? Czy mam wymyślić realną wersję pre-alpha z działającymi front-endami i back-endami, a następnie ogłosić projekt publicznie? Czy powinienem to ogłosić od samego początku? Jako programista wiem, że należy używać systemu kontroli wersji, takiego jak Git lub SVN, co robię, nie ma tam żadnych problemów. Warto też pamiętać o testach jednostkowych, które, szczerze mówiąc, wcale mnie nie interesują ... Zarządzanie projektami - w najlepszym wypadku jestem początkujący. Techniki kodowania i doświadczenia, takie jak programowanie Agile, to coś, co chcę odkryć ...

Krótko mówiąc, wszelkie pomysły na programistę, który jest nowy w świecie open source, są mile widziane.

Shahriyar Imanov
źródło
1
Dodatek: Proszę odpowiedzieć, jeśli masz doświadczenie w projektach na dużą skalę / projektach typu open source i staraj się nie przedstawiać hipotetycznych / teoretycznych pomysłów, ale praktyczne, sprawdzone.
Shahriyar Imanov
Zacznij kodować coś, co rozwiązuje problem. Po rozwiązaniu tego problemu w najbardziej podstawowy sposób; znajdź sieć osób, które mają wspólny problem i poproś ich o wypróbowanie. „Jeśli go zbudujesz, przyjdą”.
Jake Berger

Odpowiedzi:

31

Chciałbym przestać pisać takie rzeczy:

Dodatek: Proszę odpowiedzieć, jeśli masz doświadczenie w projektach na dużą skalę / projektach typu open source i staraj się nie przedstawiać hipotetycznych / teoretycznych pomysłów, ale praktyczne, sprawdzone.

Tego rodzaju arogancka postawa zabija więcej projektów typu open source niż cokolwiek innego. Open source to mniej o źródle, a więcej o współpracy. Witamy każdego, kto chce pomóc, nawet jeśli nie ma praktycznego doświadczenia, aby to zrobić - jak zapewne wiesz, pomaganie projektom typu open source w zdobywaniu doświadczenia jest powszechną praktyką.

Drugi punkt to nie kłopotanie się promocją, jeśli nie masz działającego kodu. Przejdź do sourceforge lub Google Code lub gdziekolwiek i zobacz morze martwych projektów z niczym więcej niż kilkoma liniami kodu i wieloma dobrymi intencjami. Najpierw kod, później mów.

Najlepszą promocją jest mieć „klienta”: kogoś, kto używa Twojego produktu, aby ludzie mogli zobaczyć, że jest on faktycznie produkowany. Jeśli jest to CMS: użyj go na przykład na stronie projektu.

Jeśli masz to wszystko, najlepiej postawić na promocję ustnie. Poproś znajomych, aby na przykład wykorzystali Twój projekt na swoich stronach internetowych. Bloguj na ten temat i prześlij artykuł do witryn agregujących, takich jak Digg lub Slashdot, ale nie rób tego, jeśli projekt nie jest gotowy na najwyższy czas. Nikt nie chce czytać o oprogramowaniu vapourware.

Powodzenia w twoim projekcie.

Vitor Py
źródło
To był mój pomysł: wymyślić coś realnego, solidnego, aby ludzie mogli zobaczyć to w akcji i poczuć, że coś rzeczywistego jest na miejscu. Jednak mój przyjaciel zasugerował, aby zaprosić innych deweloperów od pierwszego dnia, aby później uniknąć wielu zmian w mapie drogowej.
Shahriyar Imanov
11
@Shehi Dlaczego ktoś miałby dołączyć do projektu bez jednego wiersza kodu napisanego i po prostu vaporware? Widziałem projekty, w których działające produkty walczą o zdobycie większej liczby programistów. Nie marnowałbym czasu na szukanie programistów bez czegoś do pokazania.
Vitor Py
4

Twoje pytanie jest niejasne, ale postaram się odpowiedzieć najlepiej jak potrafię. Zakładam, że chcesz przyciągnąć programistów do projektu, abyś nie był jedyną osobą pracującą nad projektem?

W takim przypadku prawdopodobnie będziesz chciał założyć konto na Github i lub Source forge, aby każdy mógł mieć do niego dostęp i dokonywać zmian. Na początek będziesz jedynym programistą, który nad tym pracuje, więc nie musisz się martwić o zarządzanie projektem, ale gdy tylko zaangażowanych będzie wiele osób, będziesz chciał zainicjować recenzje kodu, ustalić cele itp.

Cele można łączyć w system śledzenia problemów, taki jak Bugzilla, dodawać je jako błędy, które muszą zostać naprawione, i pozwolić ludziom na przypisanie się do nich lub wysłanie e-maila do centralnej osoby, która przydziela ludzi do problemów.

Będziesz chciał przyciągnąć tłum deweloperów, więc będziesz potrzebować strony internetowej opisującej projekt i tam, gdzie widać, że będzie się rozwijał w krótkim i średnim okresie, a także zrzuty ekranu itp.

Blog / Twitter projektu, który pozwala użytkownikom śledzić, gdzie jesteś, jeśli jest to również przydatne.

Omar Kooheji
źródło
Aby odpowiedzieć na pierwsze pytanie: Tak, taka jest intencja.
Shahriyar Imanov
4

Jeśli go nie przeczytałeś, proponuję Katedrę i Bazar Raymonda i zwrócę szczególną uwagę na jego doświadczenie z Fetchmail.

Na podstawie tego i własnego doświadczenia sugeruję, aby opublikować kod, gdy tylko rozwiąże on problem, który mogą mieć inne osoby . Tak, powinieneś użyć kontroli źródła głównego strumienia i umieścić ją gdzieś na serwerze. Musisz wybrać licencję, a może to być wielka sprawa w zależności od twoich celów. Ale pod względem tego, co publikować i kiedy: „wypuszczaj wcześnie, wypuszczaj często”.

Scott Whitlock
źródło
Sprawdzę to. Dzięki!
Shahriyar Imanov