MeshCore rozwój oprogramowania open source
Jak społeczność MeshCore współpracuje nad rozwojem oprogramowania open source: licencjonowanie, wkład i proces rozwoju
Dlaczego MeshCore jest oprogramowaniem typu open source?
MeshCore jest oprogramowaniem typu open source: pełny kod źródłowy jest publicznie dostępny w GitHub. Każdy może przeglądać, używać, modyfikować i ulepszać kod. Jest to świadomy wybór zapewniający przejrzystość, bezpieczeństwo i rozwój zorientowany na społeczność.
Open source oznacza nie tylko dostępność kodu, ale także aktywną społeczność programistów, użytkowników i entuzjastów współpracujących nad ulepszeniami. Każdy może wnieść swój wkład: od zgłaszania błędów po wdrażanie nowych funkcji.
Na tej stronie wyjaśniono, jak działa proces tworzenia oprogramowania typu open source, w jaki sposób możesz wnieść swój wkład i jakie są korzyści.
Licencja i filozofia
Licencja MIT (permisywna)
Oprogramowanie sprzętowe MeshCore korzysta z licencji MIT – jednej z najbardziej liberalnych licencji typu open source. Kodu możesz używać w dowolnym celu, także komercyjnym.
Wolności: używanie, kopiowanie, modyfikowanie, rozpowszechnianie, udzielanie sublicencji
GPL dla niektórych komponentów
Niektóre części korzystają z licencji GPL (copyleft). Jeśli używasz tych komponentów we własnym projekcie, musisz także udostępnić swój kod jako open source na licencji GPL.
Copyleft: Dzieła pochodne również muszą być objęte licencją GPL
Filozofia otwartego oprogramowania
MeshCore obejmuje zasady open source: przejrzystość, współpracę, własność społeczności. Sieć należy do wszystkich, a nie do jednej firmy czy organizacji.
Sposoby wnoszenia wkładu
Nie musisz być doświadczonym programistą, aby wnieść swój wkład. Istnieją sposoby na każdy poziom:
Raporty o błędach
Zgłaszaj błędy, awarie lub dziwne zachowania za pośrednictwem GitHub Issues. Dobre raporty o błędach ogromnie pomagają.
Dokumentacja
Ulepszaj dokumentację, pisz tutoriale, twórz przewodniki wideo. Dokumentacja jest tak samo ważna jak kod.
Testowanie
Testuj nowe wersje, wypróbuj przypadki Edge, sprawdź działanie poprawek. Testerzy są kluczowi.
Prześlij kod
Naprawiaj błędy, wdrażaj funkcje, optymalizuj wydajność. Każda prośba o ściągnięcie jest mile widziana.
Projekt interfejsu użytkownika/UX
Ulepsz interfejs aplikacji, twórz makiety nowych funkcji, testuj użyteczność.
Tłumaczenia
Przetłumacz aplikację, oprogramowanie sprzętowe i dokumentację na inne języki. Pomóż udostępnić MeshCore na całym świecie.
Przepływ prac programistycznych
Forkuj repozytorium
Utwórz rozwidlenie repozytorium MeshCore na GitHubie. To jest Twój własny egzemplarz, na którym możesz swobodnie eksperymentować.
Utwórz oddział
Utwórz nową gałąź dla swojej funkcji lub poprawki błędu. Używaj opisowych nazw, takich jak „fix-routing-bug” lub „add-telemetry-sensor”.
Napisz kod i przetestuj
Wprowadź zmianę i dokładnie przetestuj. Upewnij się, że istniejąca funkcjonalność nadal działa. Dodaj komentarze do złożonego kodu.
Prześlij żądanie ściągnięcia
Prześlij żądanie ściągnięcia do głównego repozytorium. Opisz, co zmieniłeś i dlaczego. Link do odpowiednich zagadnień.
Przegląd kodu i połączenie
Opiekunowie sprawdzają Twój kod, przekazują opinie i łączą się po zatwierdzeniu. Proces ten może być iteracyjny i obejmować wiele rund przeglądu.
Korzyści z otwartego oprogramowania
Bezpieczeństwo
Każdy może sprawdzić kod. Żadnych ukrytych backdoorów i naruszeń prywatności.
Szybka innowacja
Wnoszą swój wkład setki programistów na całym świecie. Innowacje zachodzą znacznie szybciej niż przy zamkniętym źródle.
Własność wspólnotowa
Projekt należy do społeczności, a nie do jednej firmy. Będzie działać tak długo, jak będą tego chcieli użytkownicy.
Platforma edukacyjna
Ucz się z kodu, eksperymentuj, doskonal swoje umiejętności. Open source to świetny sposób na naukę.
Możliwość adaptacji
Dostosuj oprogramowanie do konkretnego przypadku użycia. Brak blokady dostawcy.
Bezpłatny
Żadnych opłat licencyjnych, żadnych subskrypcji. Całkowicie darmowy, teraz i zawsze.
Często zadawane pytania
Czy muszę znać C++, aby wziąć udział w projekcie?
Nie koniecznie. Możesz wnosić raporty o błędach, dokumentację, testy i tłumaczenia bez żadnej wiedzy programistycznej. Aby móc tworzyć kod, potrzebujesz wiedzy na temat C/C++.
Kto decyduje, które funkcje są akceptowane?
Główni opiekunowie przeglądają żądania ściągnięcia i decydują o akceptacji. Sprawdzają jakość kodu, zgodność z historią wydań i czy nie psuje istniejącej funkcjonalności.
Czy mogę wykorzystać kod w moim produkcie komercyjnym?
Tak, licencja MIT pozwala na wykorzystanie komercyjne. Pamiętaj, że niektóre komponenty są objęte licencją GPL, co wymaga również otwarcia kodu źródłowego.
Jak często sprawdzane są żądania ściągnięcia?
Opiekunowie starają się odpowiadać na żądania ściągnięcia w ciągu 1-2 tygodni. W okresach zwiększonego ruchu może to potrwać dłużej. Cierpliwość jest ważna.
Czy istnieje czat społeczności programistów?
Tak, istnieje aktywna grupa Telegram, w której programiści i użytkownicy zadają pytania, dzielą się pomysłami i współpracują.
Czy mogę utworzyć widelec i dodać własne funkcje?
Absolutnie. Na tym polega cały sens open source. Możesz stworzyć fork, dodać funkcje i wnieść wkład do kodu źródłowego MeshCore zgodnie z warunkami licencji.
Zostań częścią społeczności
MeshCore rozwija się dzięki wkładowi społeczności. Każda drobnostka jest pomocna: od prostego raportu o błędzie po wdrożenie dużej funkcji. Dołącz do społeczności!