Wywiad z Carstenem Haitzlerem

Wywiad z Carstenem Haitzlerem

Artykuł pierwszy raz został opublikowany w numerze 33. Dragonia Magazine w listopadzie 2009 roku.

Carsten Haitzler – założyciel projektu Enlightenment, znany także jako Rasterman, pracował nad wieloma różnymi projektami związanymi z Open Source. Dzisiaj dzieli się z nami swoimi doświadczeniami i pasją, jaką ciągle żywi do Wolnego Oprogramowania.

Paulina Budzoń: Powiedz nam kilka słów o sobie.
Carsten Haitzler: Dużą część muszę pominąć. Zajmuję się programowaniem związanym z Linuksem i Open Source od jakichś 13 lat. Zawodowo od 12. Samym programowaniem zajmowałem się dużo wcześniej. Nigdy nie przechodziłem przez ten cały proces posiadania komputera z DOS-em. Z Commodore vic20, c64 i Amigi przeszedłem od razu na komputer z Linuksem, dlatego często mam inne spojrzenie na niektóre rzeczy. Uważam, że częstotliwość ma znaczenie. Uważam, że pamięć ma znaczenie. Wydajność jest dla mnie najważniejsza. To nic dziwnego zobaczyć mnie stukającego
w jakieś małe urządzonko z Linuksem.
Mieszkałem w wielu krajach, na kilku kontynentach. Poznałem przy tym kilka języków (tych ludzkich).
Uważam, że świat to fascynujące miejsce.

PB: Twoje doświadczenie zawodowe jest bardzo bogate: pracowałeś dla Red Hata, VA Linux Systems, Fluffy Spider Technologies – czy możesz nam powiedzieć nad czym pracujesz teraz?
CH: Pracowałem nie tylko tam – również w Va Linux Japan, Morgan Stanley, Openmoko. Aktualnie zajmuję się konsultingiem i staram się jak mogę, żeby programowanie oraz produkt, który otrzymuje użytkownik małych urządzeń dotykowych, był jak najprostszy i jak najlepszy. Nie mogę niestety rozmawiać o tym, czym się zajmuję w tym momencie, ponieważ projekt jest ciągle w fazie rozwoju i nie jest dostępy publicznie. Ale kiedy nadejdzie odpowiedni czas, wszystko się wyjaśni.

PB: Jak zaczął się projekt Enlightenment? Jak narodził się ten pomysł?
CH: W przeciwieństwie do większości oprogramowania Open Source ten projekt nie jest politycznym ,,polem minowym”. Powstał, żeby zaspokoić pewną potrzebę – polegała ona na tym, że mój pulpit był brzydki. Wręcz obrzydliwy. Wiedziałem, że mój komputer i X11 może być lepszy. Byłem świadom tego, co X-y potrafią. Ludzie używali wielu rzeczy (libpxm na przykład) do zapisywania, ładowania, wyświetlania itp. obrazków, które były koszmarne, jeśli chodzi o wydajność, nie wspominając o ograniczonej przestrzeni kolorów (jak paleta 256 kolorów dla xpm, chociaż Gimp lubi tworzyć xpmy, które przekraczają ten limit 256, to oryginalnie xpm miał tylko 256 kolorów,
co było prawie sensowne, mimo że wyglądało koszmarnie). Jeśli cały dzień siedzę przed ekranem, to chcę, żeby wyglądał dobrze. Chcę mieć możliwość ustawienia go w taki sposób, żeby wyglądał tak, jak mi się w danym momencie umyśli, a nie móc tylko zmienić kolor i czcionkę. Chcę móc ustawić przyciski jako świecące kuleczki albo po prostu nudne szare guziki… albo cokolwiek. Enlightenment powstało jako (i ciągle jest) menedżer okien. Taki, który może więcej. Uruchamia aplikacje, zarządza nimi, przełącza między nimi a e17 także zarządza plikami. Ale to nie wszystko, co E potrafi. Ale wszystko inne to ,,inny projekt” i może, ale nie musi, podchodzić pod szeroki wachlarz E.

PB: Planujecie wypuścić kiedyś stabilną wersję e17?
CH: Tak. Stworzyliśmy listę ToDo. Jest nawet opublikowana na naszym TracWiki. Kiedy odznaczymy wszystkie punkty z planu wydania, przyjdzie czas na wersję alpha. Betę wydamy, kiedy poprawimy błędy znalezione w alphie, a wydanie stabilne po poprawieniu błędów z bety. Wszystko podzielone jest na zadania.

PB: Na waszym TracWiki znajduje się informacja, że planujecie wydać wydać betę w październiku, a wersję finalną na Święta – myślisz, że to się uda? Mamy się spodziewać wspaniałego prezentu na Święta?
CH: To nie ja to tam umieściłem. I byłem całkowicie przeciw umieszczaniu tam tego. Kiedy nie ma się konkretnych środków, ludzi i czasu, którzy będą nad czymś pracować, (dla przykładu: masz jedną osobę, która pracuje 10 godzin w tygodniu), niemożliwym jest stworzenie planu. Nawet zgadywanie czasu potrzebnego na każde zadanie jest
w najlepszym wypadku trudne, a w najgorszym całkowicie błędne.
Przykładowo, to może być dobry sposób na oszacowanie: a / b = c, gdzie:
c – czas do ukończenia,
a – ilość pracy, którą trzeba wykonać (w godzinach)
b – dostępne zasoby (godziny, które ludzie przeznaczą)
Nie znamy b. b to może być 10 godzin od jednego gościa w 1 tygodniu, 2 od innego, 20 od trzeciego i 0 od wielu innych przez kilka tygodni. Nie znamy tej wartości. A stworzenie planu czasowego bez niej jest niemożliwe. Ale nalegali, żeby to tam i tak wkleić. Tyle mam do powiedzenia na ten temat. Nikt nie płaci za wydanie e17. To praca z miłości, w każdej wolnej chwili jaką mogę znaleźć. A dla wielu z nas wolny czas to rzadkość.

PB: Jak namówiłbyś użytkowników do przejścia na Enlightenment? Jakie ciekawe możliwości Enlightenment oferuje użytkownikom?
CH: Cóż, powiedziałbym to, co zawsze mówię. Wybierzcie to, co najlepiej się wam spisuje. Enlightenment dla mnie jest najlepsze. Do tego, jest wyjątkowo elastyczne i ma duże możliwości konfiguracji, a to są rzeczy, które są dla mnie naprawdę ważne. Enlightenment prawdopodobnie będzie mało opcję, której szukacie lub potrzebujecie albo postawi was przed sytuacją w stylu ,,nie wiedziałem, że to można zrobić!”. Przy tym, jest w miarę małe i szybkie, biorąc pod uwagę to, ile potrafi. Wspominałem już wcześniej o częstotliwości i pamięci – w to wierzą także inni deweloperzy Enlightenment.
Jeżeli chcesz mieć więcej kontroli, więcej opcji, więcej możliwości, więcej wolnego procesora i RAM-u dostępnych dla innych rzeczy, to Enlightenment może być dla Ciebie. Drzewo w SVN jest całkiem stabilne. Używam go codziennie – i robię tak od lat. Robimy częste snapshoty co 1-3 miesiące, więc zawsze można też ściągnąć któryś z nich.

PB: Czy można jakoś pomóc projektowi Enlightenment?
CH :Oczywiście. Można pomóc posunąć do przodu listę ToDo. Jeżeli ktoś umie programować, na wiki dla wszystkich dostępna jest lista na ten temat. Jeżeli ktoś nie umie programować, naszej stronie przydałyby się częstsze aktualizacje i podsumowania tego, co znajduje się w SVN. My, programiści, zajmujemy się kodem, nie marketingiem :)

PB: Czy możesz powiedzieć nam coś więcej na temat projektów (aktualnych i przeszłych), nad którymi pracowałeś? Który z nich był najbardziej interesujący? Uważasz, że E jest najlepszym z nich?
CH: Ummm… Cóż, pracowałem nad GNOME i GTK. Szczerze mówiąc, nie lubiłem bawić się w politykę. A było jej tam stanowczo za dużo. Wydawało się, jakby wszystko miało na celu naśladowanie Windowsa, zamiast ,,Ej, nie pokonamy ich
w ich własnej grze. Będziemy ciągle tylko do nich dobiegać. Bądźmy inni! Zróbmy coś inaczej! Miejmy jakiś własny pomysł, coś co będzie nas wyróżniać i w końcu ludzie sami do nas przyjdą, bo tam nie będą dostawać tego, czego chcą”.
Apple ma takie podejście i wychodzi na tym całkiem nieźle. W ciągu ostatnich kilku lat wiele zostało powiedziane na temat tego, jak Linux za bardzo próbuje naśladować, zamiast być oryginalnym. Mówiłem o tym już ponad 10 lat temu. Dlatego przestałem zajmować się GNOME. To nie było coś, czego chciałbym używać, a tym bardziej nie miałem zamiaru bawić się w politykę. Więc skoro mam pracować nad projektem Open Source, z którego nie będę korzystał i którego nie mogę zmienić, tak, żebym zaczął chcieć z niego korzystać to… po co to robić? To była decyzja osobista, bo po prostu nie mogłem się zgodzić z tym, jak to wszystko działa.
Pracowałem też trochę nad Debianem. Ale to nie było zbyt ekscytujące.
Pracowałem też nad Openmoko (otwarty telefon komórkowy), ale – jak możecie zobaczyć – firma praktycznie już nie działa (nie ma żadnych – możliwych do wymienienia – pracowników i teraz tylko wyprzedaje stare akcje), więc jestem zadowolony, że odszedłem stamtąd w dobrym momencie.
Robiłem też wiele innych rzeczy, ale E jest czymś, co znam, czymś, co kocham, czymś na co mam duży wpływ i przy czym nie muszę bawić się w politykę. Chciałbym, żeby E zostało dalej wolne od polityki. Kod jest walutą w świecie E. A przez kod rozumiem też stronę internetową, grafiki i wszystko, co materialnie go wspiera i sprawia, że jest coraz
lepszy. To jak plewienie nietkniętego pola. Albo chodzenie nieprzetartą ścieżką. Dawanie światu czegoś nowego, czegoś co jest lepsze. Nawet jeżeli nikt nigdy nie będzie używał E, to ono i tak będzie działać, bo będzie demonstracją pionierskich pomysłów, na temat tego co i jak można zrobić, z czego będą mogły skorzystać inne projekty.
Jestem szczęśliwym człowiekiem. Zmieniłem świat. Zrobiłem coś, żeby stał się trochę lepszy. Nawet jeśli to nie mój konkretny kod to sprawił.

PB: Co najbardziej podoba ci się w Open Source?
CH: To, że działa. Po prostu. To, że działa. Możesz porozmawiać z programistą, który napisał i zajmuje się kodem. Nie ma żadnych działów wsparcia. Żadnych czarnych skrzynek. Jeśli nie wiesz, jak coś działa… przeczytaj kod! Jeśli znajdziesz błąd, napraw go, wyślij poprawkę albo nawet udostępnij poprawioną wersję kodu i binarek. Jeżeli pierwotny
deweloper już się tym nie zajmuje, umarł albo nie chce Ci pomóc… możesz sobie pomóc SAM. A jeżeli może/chce pomóc…, rozmawiasz jak programista z programistą. Rozumiecie się wzajemnie. Coś zostaje zrobione. To dużo lepsza metoda rozwiązywania problemów. ,,Nie można” zostaje zastąpione przez ,,A jak mogę…?”. Jest powód, dla którego
to działa. Koniec końców Open Source nie jest ,,darmowe”. Też kosztuje. Tylko że kosztuje w inny sposób. Może kosztować Cię twój czas, Twoje pieniądze albo zasoby itp. Ale w końcu okazuje się, że zostałeś częścią procesu i masz wpływ na rozwój oprogramowania, na którym możesz polegać. To taki bonus.

PB: Powiedziałeś, że świat to fascynujące miejsce – co lubisz w nim bardziej: ludzi czy świat jako taki?
CH: Myślę, że oba. To, które jest bardziej fascynujące zależy od miejsca, w którym się znajdujesz. Mógłbym znaleźć tutaj zbyt wiele przykładów, dlatego nie chcę się w to wgłębiać.

PB: Dziękujemy bardzo za wywiad. To, co powiedziałeś na temat Open Source, było chyba jedną z najbardziej inspirujących rzeczy, jakie w życiu słyszałam.
CH: To ja dziękuję! Poza tym, to wszystko, to po prostu coś w co wierzę. Jestem pragmatykiem i dla mnie Open Source jest po prostu pragmatycznie lepsze. Mógłbym przytoczyć masę przykładów o tym, jak Open Source potrafi Cię uratować, kiedy zamknięte oprogramowanie Cię zawiedzie. To samo tyczy się tych, którzy to zamknięte oprogramowanie tworzą. O tym, jak Open Source po prostu sprawia, że twoje życie staje się łatwiejsze, jeżeli chcesz coś zmienić. Słyszałem 101 wymówek i powodów, dlaczego lepiej tworzyć rzeczy zamknięte. Od minimalizacji pozwów patentowych, przez brak praw do kodu, który dołączasz i na którym polegasz, po ,,przecież się pod tym podpisuję”. Prawie wszystkie z nich, to tylko sposoby na uniknięcie zmian. Bo zmiany są trudne.