Dziady w wersji opensource – przygarnij zombiaka
Miesiąc listopad czy tego chcemy czy nie, siłą sugestii otoczenia zmusza nas do mimowolnych i nawet krótkich, ale jednak – wspomnień. Wspominać można też projekty opensource które przez ostatni rok nie zdołały utrzymać się na powierzchni zainteresowania społeczności i deweloperów. Choć świat przyjął gruboskórne kryterium oceny ich przydatności („jeżeli ktoś by tego chciał używać, to by program był rozwijany nadal”), to jednak przeciętny użytkownik nawet nie zdaje sobie sprawy, jakie bogactwo może się kryć w opuszczonych projektach. Nie mówiąc już o deweloperach, którzy zamiast wymyślać koło na nowo mogliby podjąć czyjeś wcześniejsze efekty pracy i doprowadzić je do świetności. I to właśnie z inicjatywą ożywiania porzuconych projektów wyszedł ostatnio Jono Bacon (tak, to ten człowiek pracujący onegdaj dla Canonical). Okazuje się, że nie on jeden.
Koncepcja i założenia jego pomysłu są proste – aby przyśpieszyć rozwój oprogramowania opensource (nie tylko ilościowy, ale przede wszystkim jakościowy) powinno się łaskawszym okiem spojrzeć na projekty opuszczone i uznane za martwe. Często są one porzucane w chwalebnej glorii granic możliwości – czy to możliwości sprzętowych czy dewelopera (umiejętności, czas, praca, rodzina, itp.). Są na tyle rozwinięte, że odpowiednia ekipa może podnieść już tylko na wyższy poziom jakości. W ten sposób zamiast 20 przeglądarek graficznych które potrafią jednie wyświetlać obrazki, możemy mieć jeden projekt ale zamiatający wszystkie dotychczasowe rozwiązania pod dywan (lub motywować kolejne do jeszcze lepszego pomysłu na całość).
No dobrze, ale jak odnaleźć się na cmentarzysku umarłych projektów? Jono zaproponował następującą rzecz – niech w źródłach programu znajdzie się plik .adopt, który powie nam, czy dany projekt wymaga nowego opiekuna i jaka jest jego ogólna kondycja. Na przykład:
[Project]
maintained = no
name = Jokosher
description = An audio multitracker built for the GNOME desktop.
category = Audio
repo = http://www.github.com/the-project
discussion = http://mymailinglist.com/jokosher
languages = Python[Contact]
name = Bob Smith
email = foo@bar.com
Mając tak oznaczone projekty w łatwy sposób można stworzyć odpowiednie narzędzia służące np. gromadzeniu informacji o porzuconych dziełach. Wystarczy przeskanować projekty np. na Githubie i zgromadzić oraz przetworzyć udostępnione w źródłach pliki .adopt. Może to mieć formę bazy online, lub dane dla jakiegoś programu – cokolwiek. Ważne, by świat opensource dowiedział się które jego dziedzictwo wymaga poratowania.
Pomysł Jono nie jest może jedyny w swoim rodzaju – od jakiegoś czasu funkcjonuje podobna baza porzuconych projektów w ramach dystrybucji Debian. Jednak to Jono zaprezentował początkową formę kodu mogącego automatycznie gromadzić z sieci informacje na temat zapomnianych źródeł. Czy to się uda? Wydaje się, że potrzebny były by jakiś sugestywny manifest który przełamałby indywidualizm wielu deweloperów.