2009-09-25 9 views
7

Jestem po prostu o opublikowanie projektu jako open source, i naprawdę chciałbym jakiegoś sprzężenia zwrotnego na kilka rzeczy:O czym należy pomyśleć przy tworzeniu projektu open source?

  1. Kod jest dość czysty, ale historia nie jest kontrola wersji. Błędy, kod debugowania, być może niewłaściwy kod, itp. Czy powinienem wyczyścić historię przed opublikowaniem lub importować ją do publicznego repozytorium?

  2. Czy powinienem nadać priorytet tworzeniu samouczka, wyjaśnień funkcji lub dokumentacji api?

  3. Inne myśli, które ułatwiają ludziom wejście w nowy projekt?

+0

Bardzo istotne pytanie do mnie, cieszę się, że pytasz. – mmr

Odpowiedz

9

Moim bardzo skromnym zdaniem:

1) Jeśli jesteś ustawiony na zamiar open source, być dumny ze swojego kodu. Wszyscy wiemy, że są błędy i błędy po drodze. Będzie też więcej, więc nie myśl, że nie możesz ich wyświetlić publicznie. Możesz!

2) Zdecydowanie. Prawdopodobnie w tej kolejności, ponieważ jest to kolejność, w jakiej ludzie używający twojego produktu będą je czytać. Będą musieli użyć twojego oprogramowania, zanim zdecydują się na pracę nad nim.

3) Najlepszą radą, jaką mogę dać, jest posiadanie jasnych instrukcji budowy, miejmy nadzieję, ze skryptami, aby pomóc ludziom skonfigurować środowisko. Powszechna plaga z oprogramowaniem o otwartym kodzie źródłowym wymaga od nowych programistów pobrania wielu bibliotek i skonfigurowania ich skrzynki do pracy po prostu dobrze, aby móc zbudować oprogramowanie. To dla mnie jest bardzo frustrujące i bardzo szybko może mnie zniechęcić.

Powodzenia!

1
  1. Całkowicie Twój wybór, chyba że użyłeś kodu prawa autorskiego w odniesieniu do których nie masz praw do dystrybucji lub jeśli istnieje jakiś problem z udziałem redystrybucję, kredyt, cokolwiek.

  2. Trudno powiedzieć, nie wiedząc, co to jest. Czego potrzebujesz, aby z niego skorzystać? Co chcesz najpierw zobaczyć? (Prawdopodobnie samouczek ...)

  3. Być może przykład od początku do końca, łącznie z instalacją. Być może powinieneś zadać sobie trud uruchomienia go w środowisku wirtualnym lub w nowej instalacji systemu operacyjnego, więc masz pewność, że twoje instrukcje instalacji radzą sobie ze wszystkim.

1
  1. To powinno być dość łatwe do squash niektóre zobowiązuje się razem, a wysiłek będzie warto. Deweloperzy często przeglądają historię, aby uzyskać wgląd w sposób, w jaki projekt został zaprojektowany od podstaw.
  2. Zdecydowanie. Najmniej można zrobić, aby uzyskać dokumentację taką jak Doxygen, aby wygenerować dokumentację. Tutorial jest prawdopodobnie niepotrzebny w tym momencie; społeczność napisze dla ciebie samouczki, pod warunkiem, że kod jest dobrze udokumentowany.
  3. Dobre opakowanie zawsze pomaga. Wygeneruj wstępnie skompilowane pliki binarne dla więcej niż jednej architektury, a jeśli to możliwe, twórz RPM i DEB. To znacznie obniża barierę wejścia. Nikt nie przyczynia się do oprogramowania, z którego nie korzystają. Możesz dodatkowo użyć ładnego narzędzia do śledzenia błędów, takiego jak Bugzilla, lub użyć zintegrowanego rozwiązania, takiego jak Launchpad lub Trac. Ustaw także listę mailingową i kanał IRC. Pomoże to zbudować społeczność.
+0

Nie zgadzam się z tym, że "społeczność napisze dla ciebie tutoriale". Myślę, że powinieneś przynajmniej napisać samouczek skierowany do programistów, co oznacza przeskakiwanie wielu bardzo popularnych rzeczy - takie rzeczy jak "Używamy systemu kompilacji GNU (./configure && make && make install)" zamiast wyjaśnić System budowania GNU dla kogoś, kto może go nie znać. Myślę, że ważne jest, aby mieć gotowy podstawowy kurs, który pomoże programistom zanurkować, a nie tylko napisanie dobrze udokumentowanego i czystego kodu i pozostawienie go komuś innemu, aby napisał dokumenty. –

+1

Och, miałem na myśli tutoriale użytkowania. Dla programistów instrukcje kompilacji są zdecydowanie niezbędne. – artagnon