Model rozwoju wolnego oprogramowania: katedra i bazar

Model rozwoju wolnego oprogramowania

Model rozwoju wolnego oprogramowania

Katedra i bazar to dokument typu manifest opracowany przez Erica S. Raymonda w 1.998 roku, aby spróbować wyjaśnić z jego własnej perspektywy i doświadczenia (Fetchmail Development) co on rozumiał o pomyślnym stworzeniu i ewolucji Linuksa i powiązanych z nim programów, zwłaszcza z perspektywy różnicy pomiędzy modelami rozwoju oprogramowania, które osobiście nazwał: Model Katedry i Model Bazaru.

W tej publikacji przedstawimy analizę i podsumowanie tego manifestu, tak popularnego wśród twórców Ruchu Wolnego Oprogramowania. Który jest ogólnie dostępny i dostępny w wielu częściach sieci, ale można go pobrać z następującego łącza internetowego, aby uzyskać do niego szybszy dostęp: Katedra i bazar.

Wprowadzenie do katedry i bazaru

WSTĘP

Wspomniany materiał „Katedra i bazar” przedstawia nam wizję, że w świecie inżynierii oprogramowania istnieją „dwa zupełnie różne style rozwoju, model katedralny, mający zastosowanie do większości osiągnięć w świecie komercyjnego oprogramowania, w porównaniu z modelem bazarowym, bardziej typowym dla świata Linuksa ”.

Podkreślając, że te 2 modele wywodzą się z przeciwnych punktów wyjścia dotyczących natury procesu debugowania oprogramowaniaoraz jego szczególnej teorii na temat tego, co nazwał prawem Linusa, w którym stwierdzono, co następuje: „przy wystarczającej liczbie oczu wszystkie błędy są nieistotne” lub innymi słowy: „przy wystarczającej liczbie oczu wszystkie błędy są drobiazgami”.

I akcentuje słowo Hacker, które moim zdaniem autor określił jako rodzaj Użytkownika wysokiego poziomu, zdolnego do zrozumienia i efektywnego wykorzystania programuoraz do wykrywania, sugerowania lub wdrażania poprawek lub modyfikacji skutecznej formy i treści dla całej społeczności użytkowników.

W innych literaturach to słowo lub pojęcie zwane Hacker odnosi się do:

«eksperta, pasjonata określonego obszaru tematycznego, zwłaszcza obszaru technologicznego, którego celem jest wykorzystanie tej wiedzy w dobroczynnych celach. To ta osoba, zwykle profesjonalista w danej dziedzinie wiedzy, która jest pasjonatem wiedzy, odkrywania i uczenia się nowych rzeczy oraz rozumienia ich działania, dochodzenia do jej doskonalenia dzięki skutecznym sugestiom i propozycjom, zawsze z intencją dzielenia się wiedzą lub unikania awarii lub wadliwego działania przedmiotu badań.

Co jest bardziej uniwersalną i realną koncepcją, ponieważ we wszystkich obszarach ludzkiej wiedzy istnieją „hakerzy”.

Przesłanki rozwoju wolnego oprogramowania

DESARROLLO

Spośród wielu, którzy przeczytali takie materiały, z pewnością wielu zgodzi się, że idea „Linux jest wywrotowy” jest tam jasno wyrażona. Ale dlaczego?

Ponieważ do tego momentu istniał plik wielość znormalizowanych metod lub modeli rozwoju oprogramowania opartych na „bardziej scentralizowanym i planowanym podejściu od początku” ponieważ czynność tworzenia oprogramowania została odebrana jako coś związanego z czymś, co prowadzi do „pewnej krytycznej złożoności”.

I że pomimo faktu, że świat Uniksa już istniał, składający się z małych narzędzi, szybkiego prototypowania i programowania ewolucyjnego, Pojawienie się filozofii rozwoju wolnego oprogramowania pod Linuksem przeniosło sprawę na inny poziom wyrafinowania.

Podczas W świecie prywatnego rozwoju oprogramowania zostało to zrobione w „cichy i pełen szacunku sposób”tak jak budowana jest katedra, w świecie tworzenia wolnego oprogramowania (Linux) zostało to zrobione w „hałaśliwy sposób i z wieloma planami (ścieżkami) i podejściami (propozycjami)”, tak jak na wielkim bazarze.

Ten wspaniały manifest daje nam kilka przesłanek do skondensowania wyrażonych w nim idei w odniesieniu do modelu rozwoju wolnego oprogramowania, którymi są:

Lokal 1: Katedra i Bazar

POMIESZCZENIE # 1

WSZYSTKIE DOBRE MIEJSCA PRACY W OPROGRAMOWANIU ZACZYNAJĄ SIĘ OD PROBLEMU OSOBISTEGO PROBLEMU DEWELOPERA.

Co jest niezaprzeczalną rzeczywistością, ponieważ Wielu z tych, którzy zajmują się tworzeniem wolnego oprogramowania, zwykle rozpoczyna pracę z powodu potrzeby rozwiązania osobistego, zbiorowego lub grupowego problemu.lub w celu optymalizacji procesu już wykonanego w wolniejszy i / lub powtarzalny sposób, który często staje się wyczerpujący i / lub nudny dla tych, którzy w nim uczestniczą, starając się zmaksymalizować czas i wysiłek zaangażowanych osób.

Lokal 2: Katedra i Bazar

POMIESZCZENIE # 2

DOBRY PROGRAMISTY WIEM, CO NAPISAĆ. NAJWIĘKSZA WIEDZA, CO NAPISAĆ I PONOWNIE UŻYWAĆ.

Każdy programista wie, że rozpoczynanie od zera nie jest niczym złym ani niepotrzebnym, jeśli chodzi o tworzenie programu lub aplikacji. Jednak dla wielu początkujących i dla innych, którzy mają już odpowiednią wiedzę, dobrze wiadomo, że czasami ponowne „wynalezienie koła” nie jest zbyt wydajne, ale lepiej go po prostu zoptymalizować i dostosować do własnych potrzeb. Oznacza to, że lepiej jest przepisać i przyswoić cały możliwy kod od innych ekspertów w dziedzinie, która dotyczy nas, aby rozwiązać nasz własny rozwój oprogramowania.

Lokal 3: Katedra i Bazar

POMIESZCZENIE # 3

„POMYŚL O WYRZUCENIU CO NAJMNIEJ JEDNEGO - ZROBISZ SIĘ NA KAŻDYM CZASIE”.

Dobry programista musi wiedzieć, jak szczegółowo słuchać tego, co mówią, sugerują lub proponują użytkownicy jego opracowań, ponieważ program, który już działa, może nadal stać się czymś bardzo dużym, mimo że jest funkcjonalny, czymś, co traci północ, funkcjonalny potwór, który robi wszystko dla każdego, a z kolei coś nieprzyjemnego. Dlatego zawsze dobrą praktyką jest słuchanie, aby wrócić do korzeni, odzyskać utraconych użytkowników, dodać nowe funkcje, usunąć niepotrzebne, zmniejszyć rozmiar programu, uczynić go bardziej szczegółowym i ogólnym.

Lokal 4: Katedra i Bazar

POMIESZCZENIE # 4

JEŚLI MASZ WŁAŚCIWE PODEJŚCIE, CIEKAWE PROBLEMY ZNAJDUJĄ CIĘ.

Dobra zmiana nastawienia i terminowość może oznaczać radykalną zmianę dla każdego programisty lub twórcy oprogramowania w ich obecnych lub nowych rozwiązaniach, co z kolei oznacza nowe korzyści czasu, pieniędzy lub komfortu dla użytkowników ich produktów. Szukaj innowacyjnych sposobów rozwiązywania problemów, które pojawiają się we właściwym kierunku.

Lokal 5: Katedra i Bazar

POMIESZCZENIE # 5

Gdy program już cię nie interesuje, Twoim ostatnim obowiązkiem jest przekazanie go kompetentnemu następcy.

Wielu programistów lub programistów, a także innych technologów, nierzadko chce poświęcić nowy czas nowym projektom. Ale w świecie Wolnego Oprogramowania założeniem jest przekazanie pałeczki, są inni, którzy chcieliby kontynuować rozwój swoich już porzuconych produktów, dla których muszą pozwolić każdemu na hackowanie (ulepszanie) programu dla siebie lub dla korzyści społeczności użytkowników programu.

Lokal 6: Katedra i Bazar

POMIESZCZENIE # 6

TRAKTOWANIE UŻYTKOWNIKÓW JAKO WSPÓŁPRACUJĄCYCH TO MNIEJ SKOMPLIKOWANY SPOSÓB SZYBKIEGO USPRAWNIENIA I SKUTECZNEGO DEBUGOWANIA PROGRAMU.

Ponieważ „bezpłatne” jest często interpretowane jako „bezpłatne” w rozwoju Wolnego Oprogramowania, wielu programistów ma tendencję do łączenia się w grupy, aby uniknąć nieodpłatnego zużycia, poprzez sprzymierzenie się z innymi programistami lub zaawansowanymi użytkownikami ich opracowań, kontynuowanie tego samego lub dla innych kontynuuj je, w zamian za otrzymanie „kredytów” na rozwój przyszłych innowacji kodu i upewnienie się, że przyszłe zmiany formalnie obejmują niektóre licencje, aby uniknąć ich niewłaściwego wykorzystania.

Lokal 7: Katedra i Bazar

POMIESZCZENIE # 7

WYDANIE WKRÓTCE. URUCHAMIAJ CZĘSTO. I SŁUCHAJ SWOICH UŻYTKOWNIKÓW.

W przeciwieństwie do świata tworzenia oprogramowania własnościowego, w wolnym oprogramowaniu często jest tak, że dużo i szybko znaczy lepiej. Ponieważ szeroka baza użytkowników i programistów, którzy zwykle używają i rozwijają program w społeczności i z kolei wchodzą w interakcję ze sobą, w celu przekazywania swoich wątpliwości, sugestii, propozycji, skarg i / lub roszczeń, może stać się cennym źródłem wiedzy do szybkiego rozwijać program w kierunku dojrzałych etapów rozwoju.

Lokal 8: Katedra i Bazar

POMIESZCZENIE # 8

Mając wystarczającą bazę testerów i autorów, prawie wszystkie problemy zostaną szybko zidentyfikowane, a ich rozwiązanie będzie dla kogoś oczywiste.

Materiał kończy się skłonieniem czytelnika do wniosku, że metoda wytwarzania oprogramowania oparta na modelu bazarowym jest bardzo skuteczna. Ponieważ im więcej mocy, wolności lub wiedzy programista zapewnia Użytkownikom o swoim programie, tym więcej mogą wnieść genialne pomysły lub pożyteczne zmiany, tylko w celu zbiorowej korzyści.

I jest to przyjemnie wyrażone w poniższym fragmencie materiału:

"Myślę, że to jest podstawowa różnica między stylami katedralnym i bazarowym. Zgodnie ze sposobem, w jaki katedra patrzy na programowanie, błędy i problemy rozwojowe są zjawiskami podstępnymi, głębokimi i pokręconymi. Potrzeba miesięcy analizy ze strony niewielkiej liczby oddanych osób, aby mieć pewność, że zostały one usunięte. Stąd długie okresy wymagane do wydania nowych wersji i nieuniknione rozczarowanie, gdy te, na które czekano tak długo, nie są doskonałe.

W świetle modelu bazarowego zakłada się jednak, że błędy są zwykle drobnymi sprawami lub przynajmniej, że staną się tak szybko, gdy zostaną wystawione na oko kilku tysięcy oddanych współpracowników, aby naprawić na odwrót w każdej nowej wersji. Dlatego często publikujesz wersje, aby uzyskać jeszcze więcej poprawek, a jako korzystny efekt uboczny masz mniej do stracenia, jeśli od czasu do czasu coś zepsujesz ”.

Wnioski: Katedra i Bazar

WNIOSEK

Osobiście moje małe doświadczenie w dziedzinie tworzenia wolnego oprogramowania w modelu typu Bazar daje mi następujące wnioski:

  • Użytkownicy powinni być traktowani jako nieoceniony zasób, aw najlepszym przypadku jako nieocenieni sojusznicy w ich współpracy w rozwoju produktu.
  • Każdy pomysł jest dobry lub wart zbadania, ponieważ czasami najmniej podejrzany może być świetnym rozwiązaniem lub usprawnieniem rozwoju.
  • Jest dobre lub prawdopodobne, że pierwotny pomysł oddziela, rozszerza lub odsuwa się od pierwotnej koncepcji, ale ważne jest, jak bardzo należy być skoncentrowanym na rodzaju rynku użytkowników, któremu chcesz służyć, służyć lub pomagać.
  • Aby być wydajnym i uniknąć utraty wysiłku z powodu rozproszenia.
  • Najlepsze jest mały, bezpośredni, prosty, ale skuteczny kod, który jest doceniany przez społeczność jako poprawny.
  • Program jest już dojrzały dla społeczności użytkowników, kiedy nie ma już nic do wyeliminowania, ponieważ dodawanie jest zawsze dobrą możliwością do uwzględnienia.
  • Każdy program może zostać użyty (częściowo lub w całości) do ponownego wykorzystania w funkcjach, które nie były pierwotnie pomyślane.
  • Całe Oprogramowanie musi posiadać odpowiednie licencje i środki bezpieczeństwa w celu zachowania poufności wykorzystania Danych użytkownika.
  • Nie trzeba zaczynać od zera, zawsze ktoś wymyślił coś podobnego do naszego wymyślonego pomysłu.
  • Musisz pracować nad czymś, co ci się podoba, musisz czuć pasję do rozwoju, któremu poświęcisz się w Wolnym Oprogramowaniu, aby wytworzyć wewnętrzne poczucie zjednoczenia z wypracowanym, bez osiągania skrajności rozwijania poczucia własności nad tym. .
  • Muszą istnieć doskonałe i częste środki komunikacji między programistami a użytkownikami (współpracownikami), aby praca przebiegała szybko i skutecznie się zmieniała.

Mam nadzieję, że spodobały Ci się te informacje i uznasz je za przydatne, ponieważ lektura „Katedry i bazaru” jest obowiązkową literaturą dla wszystkich, którzy programują dowolne prace rozwojowe w wolnym oprogramowaniu, bez względu na to, jak duże lub małe.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.

  1.   nascii-chłopiec powiedział

    ładne podsumowanie / opinia, zabrałbym tylko tyle obrazu «monitora z kodem», że w ogóle nie przychodzi

    1.    Po instalacji Linuksa powiedział

      Uznałem, że są one odpowiednie w przypadku rozwoju systemów i nie byłoby już właściwe ich usuwanie, ale dziękuję za uwagę!

  2.   BAJRON powiedział

    Doskonałe podsumowanie i analogia.

    1.    Po instalacji Linuksa powiedział

      Dziękuję Bayron za miły i pozytywny komentarz.

  3.   Eduardo z Trynidadu powiedział

    Niezła próba, gratulacje z powodu tego doniosłego powiadomienia. Myślę, że „W królestwie Bożym” WSZYSTKO JEST (BĘDZIE) wolne i wolne… w przeciwnym razie twórcy będą nadal męczeni lub ukrzyżowani przez wywrotowców, przez tych, którzy nie rozumieją lub nie chcą zrozumieć, że musimy „daj Cezarowi to, co należy do Cezara… a Bogu to, co należy do Boga”… Bezinteresowność (BEZPŁATNA) jest z natury boska jak światło słoneczne lub powietrze, którym oddychasz… Wolność jest konieczna, ale obecnie jest zepsuta przez RYNEK nieszczęść, takich jak autorskie oprogramowanie.

    1.    Po instalacji Linuksa powiedział

      Pozdrowienia, Eduardo de Trinidad. Dziękuję za komentarz i wkład.