[Silesia] Monitoring projektów otwartych

Kamil Gałuszka galuszkak at gmail.com
Sun Jun 23 19:56:45 UTC 2013


O, paradoksalnie leciutko zahaczyłeś o mój temat pracy dyplomowej którą
tworzę i kończę. Chętnie podzielę się nieco wiedzą jaką nabywam. Mam
nadzieję, że nikt się nie obrazi jeśli trochę zboczę z tematu ale mimo
wszystko robię coś lekko podobnego.

Otóż tworzę narzędzie ale w nieco innych celach ale związane z projektami
Open Source i monitorowaniem ich repozytoriów na GitHub. Wykorzystuje do
tego obecnie GitHub API v3.

Otóż moje narzędzie co prawda nie analizuje bugzilli itd ale próbuję
rozwiązać problemy pod tytułem:
*Jak dojrzały jest ten projekt?
*Jakie ma wsparcie?
* Czy nadaje się do zastosowań biznesowych.
* Jak wyglądają różne metryki w tym projekcie (długość życia błędu, długość
przyjmowania poprawek od zewnętrznych developerów etc.)

Otóż obecnie mierzę różne metryki (ilość commitów, ilość watcherów, ilość
maintainerów, ilość forków, ilość pull requestów (zamkniętych, otwartych,
przyjętych), ilość issues (zamkniętych/otwartych) itd itd i mierzę sobie
różne metryki (np jaka jest średnia długość od wysłania do zmergowania
danego pull requesta, jak długo jest obsługiwane issue (w dniach)) itd.
Generalnie zbieram różne relewantne dane o repozytorium i staram się uczyć
o pewnych zależnościach w projektach open source. Jest to praca inż i
niestety na razie nie jest jakaś super, ale obecnie zbieram i oglądam sobie
różne dane i obecnie staram się dopasować najlepsze algorytmy żeby
najwięcej wyciągnąć z tych danych (assocjacji, korelacji, powiązań) oraz
labeluje sobie jej w skali 0-100 i zamieniam na 5 wartości dyskretnych 0-4
(zależy mi na tym, żeby mieć dwie różne metryki mimo, że reprezentują
teoretycznie to samo bo wynikiem mojego algorytmu ma być klasyfikacja
dyskretna projektu).

Końcowym efektem jak zbiorę odpowiednią ilość danych uczących stuninguje
całość ma być możliwość oceniania dojrzałości projektu na podstawie danych
zebranych z GitHub.

Jak zakończę pisać pracę i będę miał w miarę zaawansowanego toola
to chętnie się podzielę (obecnie jest raczej raczkująca sprawa.) Generalnie
na dziś mogę powiedzieć, że moim największym ograniczeniem jest ratelimit
do zapytań githuba (5000 na h po 100 obiektów w kolekcji na zapytanie).
Więc liczę, że jak nazbieram więcej danych z różnych projektów to zrobi się
ciekawie.

Za to mogę dać wam linka do ciekawej literatury. Co roku organizowana jest
w San Francisco świetna konferencja MSR (Mining Software Repositories):
http://2013.msrconf.org/index.php

W tym roku wiem, że analizowali min dane z StackOverflow (jestem
niesamowicie ciekaw co wyszło z tego challenge-a ale nie miałem czasu
czytać).

Tutaj prezentacje min z ubiegłego roku:
http://ieeexplore.ieee.org/xpl/mostRecentIssue.jsp?punumber=6220358

Pozdrawiam
Kamil Gałuszka


W dniu 23 czerwca 2013 21:31 użytkownik Filip Kłębczyk
<fklebczyk at gmail.com>napisał:

> Witam,
>
> W nawiązaniu do rozmowy w ostatni czwartek kolegi (z góry przepraszam, ale
> wyleciało mi imię), który opowiadał o swoich bojach na bugzilli pewnej
> przeglądarki w związku z dyskusyjnym, niejasno opisanym w ustawieniach,
> ficzerem bezpieczeństwa pt. prześlij co oglądasz do pewnej korporacji a ona
> Ci powie czy to bezpieczne, przyszedł mi pewien pomysł.
> Nie widziałem, ani nie słyszałem o takim projekcie, który by monitorował
> otwartość różnych projektów open source i bycie fair wobec ich użytkowników
> czy deweloperów. Trochę się słyszy, że w niektórych projektach nieźle się
> wyrabia, pewne sprawy zamiata się pod dywan lub usuwa politycznie
> niewygodnych kontrybutorów. Jest też wiele projektów, które co prawda
> udostępniają kod, ale z duchem otwartości i przejrzystym procesem rozwoju
> niewiele mają wspólnego (swego czasu spotkałem się z takim terminem "Source
> Open" albo "Tada! source"). Co prawda w świecie otwartych projektów i
> danych zawsze można zrobić forka, gdy źle się dzieje (LibreOffice i
> OpenOffice, MariaDB i MySQL itd.), ale w praktyce nie jest to takie proste,
> szczególnie gdy mamy do czynienia z dużymi projektami i subtelnymi
> przegięciami, jak przypadek, który pokazał nam ostatnio kolega. Stąd idea
> serwisu internetowego, będącego rodzajem katalogu, gdzie z jednej strony
> będzie można wyszukać po nazwie projekt open source i przed zaangażowaniem
> w niego dowiedzieć się czy przypadkiem nie będziemy brali udział w jakimś
> wątpliwym przedsięwzięciu, a z drugiej zgłosić i opisać (tu jednak
> obowiązkowe citation needed jak w Wikipedii dla celów weryfikacyjnych i
> zapobieganiu oczernianiu) jeśli spotkamy się z właśnie z dziwnymi
> przypadkami.
> Ideę tę przegadałem przy okazji z jednym dosyć zasłużonym i doświadczonym
> kontrybutorem wielu projektów open source i stwierdził, że rzeczywiście
> czegoś takiego nie ma a swego czasu rolę takiego bezpiecznika spełniały
> komentarze na Freshmeat. Zasugerował też, że taki serwis mógłby
> funkcjonować trochę jak GPL violations tyle, że nie skupiałby się na
> łamaniu licencji przez vendorów a właśnie na wskazywaniu różnych przegięć w
> projektach. Moim zdaniem to ma głęboki sens w czasach, gdy motta typu
> "don't be evil" coraz bardziej rozmijają się z faktycznymi krokami a nasza
> prywatność jest zewsząd atakowana (lub co gorsza inwigilowana w ramach
> różnych PRISMów). Poza tym taki projekt (jeśli zyskałbym na popularności)
> mógłby podnieść jakość funkcjonowania projektów open source.
>
> Co sądzicie? Zapraszam do wymiany zdań na IRCu i w kolejny czwartek live w
> HS.
>
> Pozdrawiam,
> Filip
>
> ______________________________**_________________
> Silesia mailing list
> Silesia at lists.hackerspace.pl
> https://lists.hackerspace.pl/**mailman/listinfo/silesia<https://lists.hackerspace.pl/mailman/listinfo/silesia>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.hs-silesia.pl/archives/open/attachments/20130623/311632a4/attachment.html>


More information about the Open mailing list