Jakie są największe bariery w pokonywaniu ścieżki MOTU / dewelopera? [Zamknięte]

26

Dla tych, którzy nie są MOTU (ludzie, którzy utrzymują repozytoria oprogramowania Universe i Multiverse ) i nie mają planów dotyczących odmiany „Będę ubiegać się o MOTU przed datą $”:

Co powstrzymuje ciebie i innych takich jak ty przed próbą zostania MOTU? Co sprawia, że ​​myślisz, że nie możesz zostać jednym z nich?

Mam na myśli zarówno bariery społeczne, jak i technologiczne.

EDYCJA: Mówię tylko MOTU, ponieważ jest to dość ogólna grupa, ale „dlaczego nie pakujesz / łatasz i nie zamierzasz w końcu próbować praw do przesyłania?” jest jeszcze bardziej ogólną wersją.

maco
źródło
7
Zrób z MOTU link do wiki.ubuntu.com/MOTU dla osób, które nie wiedzą, co to jest (jak ja)
Steve Armstrong
1
Zgadzam się, że link byłby pomocny. Jednak biorąc pod uwagę, że to pytanie dotyczy tego, dlaczego ludzie nie są częścią jakiejś konkretnej rzeczy, lepiej byłoby wyjaśnić żargon w pytaniu.
moberley,
@moberley: MOTU to programiści, którzy mogą przesyłać pakiety do sekcji wszechświata (i multiwersum) archiwów Ubuntu.
txwikinger
Zapomnienie o odnowieniu członkostwa w ubuntu-dev i ubuntu-coredev i niepotrzebne poświęcenie czasu na ponowne przejście przez ten proces jest powodem, dla którego nie jestem już MOTU / coredev ;-)
ℝaphink
1
Konwersja do Wiki Wiki ze względu na styl pytania.
Marco Ceppi

Odpowiedzi:

11

Zapewnij lepszą dokumentację.

Brałem udział w tygodniach programistów na sesjach IRC związanych z pakowaniem i materiałami MOTU (już dwa razy) i odkryłem, że podczas tych sesji zazwyczaj nie rozumiesz tego procesu. Ale jeśli spojrzysz na strony wiki Ubuntu dwa tygodnie później, nie możesz już zebrać wszystkich elementów. Strony te są często listami punktowanymi od osób, które już dokładnie rozumieją ten proces. Ale to nie wystarczy, aby treść była zrozumiała dla początkujących.

Może więc powinieneś postarać się, aby strony wiki z dokumentacją wyjaśniły proces, narzędzia i osoby zaangażowane bardziej szczegółowo. Lub nawet z pełnymi przykładami. Podczas sesji IRC zawsze pojawiają się powtarzalne przykłady, być może te mają znaczenie dla stron wiki.

Bananeweizen
źródło
2
Zgadzam się, że strony wiki nie są bardzo pomocne. Uważam, że filmy Daniela Holbacha na YouTube są najbardziej pomocne, kiedy zaczynałem. Czy dzienniki sesji IRC są publikowane na wiki?
maco
14

Myślę, że największą barierą techniczną jest umiejętność tworzenia pakietów Debiana. Chociaż utworzenie działającego pakietu jest stosunkowo proste, o wiele trudniej jest utworzyć pakiety zgodne ze standardem Debian i Ubuntu. Ponadto przewodniki dotyczące tworzenia pakietów zwykle dotyczą sytuacji, w której kod źródłowy wymaga kompilacji. Może to być mylące dla aplikacji napisanych w tłumaczonych językach.

Największą barierą społeczną jest prawdopodobnie umiejętność przesyłania pakietów do repozytoriów wszechświatowych / wieloświatowych. O wiele łatwiej jest po prostu stworzyć własny ppa i przesłać tam pakiety.

dv3500ea
źródło
11

W dzisiejszych czasach ludzie lubią składki drive-by .

20 lat temu zwykle koncentrowałbyś dużo energii na projekcie dla zwierząt domowych, gdybyś go miał. Dziś odwiedzasz dziesiątki stron internetowych dziennie, a istnieje wiele sieci społecznościowych lub innych społeczności, w których możesz przyczyniać się do stron wiki, forów i innych rzeczy. Wprawdzie przyczyniło się to do zwiększenia liczby osób, ale także do osób oczekujących niskich barier (wystarczy kliknąć stronę, aby ją edytować). W przeciwnym razie mogą zwrócić się do innych społeczności.

Dlatego powinieneś szukać barier w procesie MOTU. Pamiętam projekt GroundControl, aby obniżyć barierę dla wkładu łatek w projektach hostowanych przez starter. Być może potrzebujesz podobnych nowych narzędzi, więc nowi kandydaci do MOTU nie muszą majstrować przy wielu narzędziach wiersza poleceń. Chociaż obecne narzędzia mogą być potężne, prawdopodobnie potrzeba dużo energii, aby nauczyć się ich prawidłowego używania.

Bananeweizen
źródło
3
Nie wiem, czy podoba mi się pomysł ludzi, którzy nie mogą korzystać z pakietów obsługujących powłokę, ponieważ skrypty powłoki są ważną częścią tworzenia pakietów (tzn. Istnieją skrypty powłoki, które należy napisać / zmodyfikować, aby utworzyć wiele pakietów praca).
maco
@maco: Chcesz zdobyć nowych współpracowników, czy nie? Jeśli tak, powinieneś zaakceptować fakt, że procesy mogą wymagać zmiany (a nie tylko osób zaangażowanych w procesy). Elitarne myślenie wykluczy dużą część potencjalnej społeczności. A jeśli chcesz rozpoczynać starania, aby rozpocząć, wiersz polecenia jest na ogół bardzo złym narzędziem do obsługi tego.
Bananeweizen
1
To tak, jakby powiedzieć: „musisz znać trochę C, aby napisać łatkę na jądro” jest elitarne. Musisz po prostu wiedzieć, jak działa wiersz poleceń, aby pisać skrypty wchodzące w skład pakietu. Nawet gdybyś miał GUI do tworzenia pakietu, skończyłoby się to pęczkiem pól tekstowych „wpisz tutaj skrypt powłoki postinst”.
maco
1
Mój komentarz nie dotyczył technicznych potrzeb. Spróbuję przeformułować (nie jestem rodzimym językiem angielskim): Najpierw poprosisz o dodatkowych współpracowników. Potem czytam w twoim komentarzu: Jeśli nie możesz pisać skryptów powłoki, musisz być głupi, aby wziąć udział w pakowaniu. To mnie denerwuje. Nadal uważam, że twoje założenia są błędne. Do czasu kontroli naziemnej wszyscy musieli znać systemy kontroli wersji, aby móc załatać jakiś projekt w LP. Zamiast ułatwiać kontrolę wersji, GC sprzeciwił się jednemu przypadkowi łatania i usunął potrzebę posiadania wiedzy na temat systemów kontroli wersji.
Bananeweizen
1
Nigdzie nie powiedziałem „głupi”. Powiedziałem, że to niezbędna umiejętność. Dla każdego nieco złożonego pakietu będziesz musiał napisać skrypt powłoki. Niewiedza (która nie nauczyła się jeszcze pewnych umiejętności) i inteligencja w żadnym wypadku nie są takie same.
maco
9

Największą barierą, jaką znalazłem, jest strona programisty Ubuntu: http://www.ubuntu.com/community/get-involved/developers

Tak wiele razy z entuzjazmem postanowiłem wnieść co najmniej 1 łatkę do Ubuntu ... więc przechodzę do naturalnego miejsca na stronie ... i gubię się w morzu dokumentacji. Kilka godzin później wciąż nie mam pojęcia, po co mam pisać łatkę. Kiedy przeglądam błędy Ubuntu, często znajduję łatki ... wiele z nich po prostu siedzi nieużywanych.

Jeśli chodzi o pakiety, próbowałem dowiedzieć się, jak je tworzyć, to naprawdę mylące. Próbowałem także zaangażować się w Launch Pad, ale interfejs jest o wiele bardziej złożony niż Source Forge, nie mogłem uzyskać własnego kodu na LP. Dla nowego użytkownika jest to bardzo trudne.

Greg
źródło
2
Tak, w projekcie startera występuje problem. Na LP nie ma rzeczy oczywistych. To proste, ale trzeba go często szukać. Nowi użytkownicy szybko się gubią. Potrzebuje przeprojektowania, aby stało się bardziej oczywiste i proste jak GitHub.
Owais Lone,
8

Bycie MOTU to odpowiedzialność .

Cóż, oczywiście powód nr 1 nie ma wystarczającej wiedzy technicznej, a powodem nr 2 jest posiadanie miliardów rzeczy, które wolisz robić. Ale wśród docelowych odbiorców myślę, że głównym powodem jest odpowiedzialność.

Jeśli skompiluję pakiet dla siebie, nikogo innego nie obchodzi, czy przestrzegam zasad technicznych i prawnych. Nikt nie przyjdzie do mnie, oczekując, że spakuję nowszą wersję. Nikt nie poprosi mnie o naprawienie błędów.

Jeśli prześlę paczkę do ppa, kilka osób może się tym przejmować. Ale oczekiwania nie są tak wysokie. Mogę po prostu zniknąć i pozwolić ludziom narzekać na swoim blogu, jak smutne jest to, że pakiet nie jest dostępny dla Natty Narwhal.

Jeśli zostanę MOTU, nagle mam wielką odpowiedzialność. Użytkownicy przychodzą do mnie z raportami błędów i narzekają, jeśli nie rozwiążę ich wczoraj. Użytkownicy spodziewają się, że prześlę nową wersję pakietu, gdy tylko będzie dostępna wcześniej. Będę musiał wyjaśnić nietechnicznym użytkownikom, jak dowiedzieć się, co zrobili źle. W przeciwieństwie do publikowania na forum, nie powinienem ignorować pytań, na które nie mam ochoty odpowiadać. A inni programiści mogą pójść za mną, ponieważ coś pomieszałem - może to być zastraszające.

A co zyskuję?

  • Niewyraźne uczucie, że pomagałem ludziom. To może mieć znaczenie. Ale jeśli taka jest moja główna motywacja, jak oprogramowanie do pakowania może się równać z pomaganiem w kuchni zupowej lub opiekowaniem się dziećmi sąsiada po emigracji?

  • Punktor na moim CV? Meh, uczestnictwo w FOSS jako programista będzie o wiele bardziej doceniane. (Daje to doświadczenie w zarządzaniu projektami i długoterminowej konserwacji, których trudno jest uczyć na kursach uniwersyteckich.) W rzeczywistości bycie DD / MOTU wygląda podejrzliwie na wielu pracodawców, którzy patrzą na pracowników zaangażowanych w politykę (jesteś otwarcie udzielając politycznego wsparcia FOSS).

  • Poczucie satysfakcji? Znacznie mniej niż pisanie własnego programu od zera. Programowanie jest o wiele bardziej kreatywne niż pakowanie. Jest w tym duże poczucie osiągnięcia. Istnieją prawa do przechwalania się. Ale w opakowaniu? To obowiązek. To nie jest efektowne.

(To powyżej „ja” trzeciej osoby. Myślę, że podane przeze mnie powody dotyczą większości ludzi, ale w różnym zakresie. Osobiście chodzi głównie o miliard rzeczy, które wolałbym robić, i opakowania, które nie mają poczucia kreatywności.)

(Z ciekawości, czy Ubuntu nie ma siły roboczej?)

Gilles „SO- przestań być zły”
źródło
1
Tak. Czy widziałeś naszego robaka błędów?
maco
@maco: Na stronie MOTU łatwo widzę, czym jest MOTU i jak mogę się nim stać. Nic nie widzę w „Wujek Ubuntu potrzebuje Ciebie!”. Nie sądzę, że bugtracker mówi wiele zwykłym użytkownikom; na przykład wiele niezamkniętych błędów może oznaczać wielu użytkowników zgłaszających i uruchamiających, którzy nie publikują wystarczających informacji do odtworzenia błędu.
Gilles 'SO - przestań być zły'
Muszę całkowicie zgodzić się z Gillesem. Gdybym miał więcej czasu, by poświęcić się oprogramowaniu typu open source, mam kilka projektów, które chciałbym zaprogramować.
Javier Rivera,
Istnieje wiele takich błędów, ale w końcu zostają one zamknięte z powodu braku aktywności. Na Launchpad jest ~ 2000 błędów z łatkami. Operacja Cleansweep polegała na przejrzeniu i przejrzeniu łat i wysłaniu ich w górę, jeśli jest dobra, a odrzuceniu, jeśli jest zła. Jeśli są dobre i nie powinni czekać całego cyklu wydań, aby przejść przez kolejne wydania, muszą zostać spakowane. Chociaż wielu ma lata. Nie nadążamy za stawką, którą są przesyłane.
maco
4

Język , moim głównym problemem jest to, że wciąż nie jestem wystarczająco pewny języka angielskiego, dlatego nie mogę łatwo zrozumieć, co inni programiści próbują mi powiedzieć

chilicuil
źródło
3

Co powstrzymuje mnie przed zostaniem MOTU?

Eventuntough Ubuntu jest bardzo fajną społecznością (jeszcze nie płonęły mnie pytania n00bie). Myślę, że jest niewiele / niekompletna dokumentacja na temat procesu pakowania (nawet Nowy Przewodnik Opiekunów Debiana jest pełen „ten temat jest poza zakresem wierszy tego dokumentu). Jeśli weźmiesz ten fakt i pomyślisz o ludziach, których pierwszym językiem nie jest angielski (jak ja), proces jest jeszcze trudniejszy i bardziej gotycki.

Z prostą, konkretną dokumentacją, wszystko byłoby łatwiejsze dla nas wszystkich, ale ludzie, którzy mają umiejętności techniczne do napisania tej dokumentacji, są zbyt zajęci, aby to zrobić.

josernestodavila
źródło
3

Myślę, że jest kilka powodów. Myślę też, że przyczyny są często indywidualne.

Jednym z problemów w tym momencie jest zmiana całego systemu MOTU. Uważam, że zmiany mogą być mylące i zostały wdrożone bardziej na liniach technologicznych i niestety nie w pełni zaangażowały społeczność (być może dlatego, że są mylące).

Myślę też, że w niektórych przypadkach motywacja do bycia MOTU nie jest tak jasna, jak mogłaby być. IMHO bycie MOTU to odpowiedzialność, a nie przywilej. Nie chodzi o tytuł, ale o możliwość pomocy społeczności Ubuntu poprzez związane z nią prawa dostępu. Z tego powodu może być tak, że cały proces zatwierdzania może zostać zmodyfikowany (lub rozszerzony). MOTU zwykle nominują się, a następnie zarząd sprawdza, czy są gotowi na MOTU. Może powinno być możliwe, że rówieśnicy, którzy uważają, że ktoś jest gotowy na MOTU, będą w stanie wyznaczyć tę osobę. Oznaczałoby to, że IMHO bardziej reprezentuje fakt, że nominacja ma na celu pomóc w procesie, a nie uzyskać tytuł. Rozumiem, że uczynienie tego jedynym sposobem ma również swoje problemy, dlatego raczej postrzegam to jako alternatywę niż jedyny sposób.

Wiem również, że w przeszłości występowały pewne problemy z ludźmi bardziej skupionymi na KDE. Miejmy nadzieję, że problemy te zostały rozwiązane, ale być może byłoby dobrze, gdyby to również było szerzej znane.

Oczywiście to tylko kilka problemów, które zauważyłem. Ludzie są różni i będą widzieć różne rzeczy lub inaczej będą na nie wpływać. Tak więc tezy mogą nie zatrzymać wszystkich, ani nie są jedynymi przyczynami tego problemu.

txwikinger
źródło
Sponsorzy powinni mówić osobom, których pakiety sponsorują, gdy myślą, że są gotowi, „hej, może powinieneś złożyć podanie”, ale nie wiem, jak często to się zdarza. Zasugerowałem, aby zgłosić się do jednej osoby, której byłem mentorem, ale on zmienił skupienie na inne obszary rozwoju.
maco
Nadal jest różnica, gdy sponsor każe komuś złożyć wniosek, lub osoba ta jest nominowana przez sponsora.
txwikinger
Co? Sponsorzy nie nominują ludzi, sponsorzy opowiadają się za samonominacją sponsora.
lfaraone
lfaraone: txwikinger sugeruje, że sponsorzy powinni być w stanie nominować ludzi. Stało się to raz. Niektórzy ludzie utworzyli stronę wiki dla Sarah Hobbs, wysłali e-mail do TB i dali referencje, i tak do tego momentu, gdy pojawiło się wyraźne poparcie, potem pojawiła się na spotkaniu IRC, aby zrobić ostatni krok.
maco
2
@Ifaraone: Sugeruję, że niektórzy dobrzy ludzie nie sami się nominują i dlatego ich tracimy. W końcu dobry człowiek, który zostanie MOTU, wygrywa dla Ubuntu, może powinniśmy o tym pomyśleć.
txwikinger
2

Opublikowałem tutaj kilka pomysłów: http://blog.mitechie.com/2010/08/24/ubuntu-help-wanted/

Jedną rzeczą, którą naprawdę chcę wydać, jest to, jak wielu programistów nie używa systemów kompilacji, które łatwo podłączają się do narzędzi do pakowania. Zajmuję się tworzeniem języka Python. Mój świat koncentruje się na setuptoolach i rozpowszechniam, i tak, mogę wziąć coś, co zbuduję, i wyeksportować, ale w jakim celu? Mam już coś do dystrybucji. Zastanawiam się, czy rozwój języków skryptowych z ich własnymi narzędziami do budowania / metodami dystrybucji powoduje brak doświadczenia i chęci zestawienia rzeczy z narzędziami do pakowania Debiana, a tym samym poziomów MOTU.

Stóg
źródło
2

Dla mnie jest to prawdopodobnie związane z czasem. Obecnie nie mam dużo czasu na inwestycje. Zacząłem od testowania błędów, ale wkrótce odkryłem, że sprawy były nieco bardziej skomplikowane. I naprawdę musisz zatopić w nim zęby.

Potem jest naprawa błędów, co wiem, że mi się spodoba. To, co powstrzymuje mnie przed udzielaniem pomocy, polega na tym, że musisz prowadzić dział rozwoju lub coś takiego. Kiedyś zacząłem pracować nad moim wycinkiem papierowym w Monitorze systemu (https://bugzilla.gnome.org/show_bug.cgi?id=611738) Więc zacząłem korzystać z kontroli naziemnej, aby pobrać wymagane źródło i dostać się tam naprawić błąd. Okazało się jednak, że nie jest to takie łatwe ze względu na zależności. Wiem, że powinienem pracować tylko nad wersją programistyczną i sprawdzać, czy jest tam naprawiona. Jednak, aby tego spróbować, musiałem pobrać źródło wielu innych pakietów gnome. Co nie jest takie łatwe z kontrolą naziemną. I prawdopodobnie powinieneś to zrobić na maszynie roboczej. Więc się tam zatrzymałem. (Znów zajęłoby mi to zbyt wiele czasu, żeby zacząć to robić)

Jeśli chodzi o pakowanie, po prostu nie jestem świadomy niczego, co wymaga pakowania. Kiedyś zrobiłem samouczek na temat pakowania i okazało się, że nie jest to zbyt trudne w przypadku małych aplikacji. Jednak nigdy nie wyszedłem szukać listy rzeczy, które wymagają pakowania, ponieważ wiem, że prawdopodobnie jest jedna ... :)

Zasadniczo więc dla mnie jest to czas, chcę pomóc, ale mam tylko kilka godzin (2 lub coś takiego) co jakiś dziwny tydzień. I w tak krótkim czasie wydaje mi się, że nie jestem w stanie zacząć od tego.

balachmar
źródło
Nie potrzebujesz źródła zależności, tylko regularne debaty. Dlaczego nie skonfigurować maszyny wirtualnej wersji deweloperskiej do pracy? W takim razie nie musisz tracić czasu na konfigurację (chociaż od lutego 2007 r. Prawie nieprzerwanie wypuszczam wersje deweloperskie ... ponad rok zanim zacząłem robić cokolwiek związanego z pakowaniem / naprawianiem błędów Ubuntu). Naprawianie błędu co tydzień przez 2 godziny jest zdecydowanie możliwe po skonfigurowaniu środowiska. Jeśli chodzi o listę rzeczy do spakowania: na Launchpadzie znajduje się tag potrzebujących. Bardzo przydatne jest również pakowanie istniejących łatek !
maco
1

Kiedy tworzę paczkę, zwykle drapię ją po części, nie dlatego, że ktoś inny chce paczki. Checkinstall jest wystarczająco dobry, aby zrobić dla mnie paczkę, a następnie mój świąd jest porysowany i nie mam osobistej motywacji, aby przejść dodatkową odległość, aby spakować go ręcznie i dowiedzieć się wszystkich zależności i rzeczy.

Sądzę więc, że nawet jeśli pakowanie do dystrybucji jest łatwe, nadal jest o wiele więcej pracy niż pakowanie dla siebie.

Ryan C. Thompson
źródło