• Chris Young (listopad 2008)

21.11.2008 08:47, autor artykułu: Jacek "Deftronic" Kapitkowski
odsłon: 2084, powiększ obrazki, wersja do wydruku,

Czy mógłbyś się przedstawić i krótko opowiedzieć czym się zajmujesz?

Nazywam się Chris Young. Mieszkam w dosyć spokojnym miejscu w Wielkiej Brytanii, w miejscowości Bedfordshire. Nieoficjalnie pełnię funkcję "Joint Software Manager" w grupie programistycznej Unsatisfactory Software, cokolwiek ta nazwa znaczy (tak na marginesie, to nie jest to, z czego się utrzymuję). Popełniłem kilka programów takich jak Facts, Wet oraz wtyczki 7-Zip i (częściowo) RAR3 dla pakietu XAD. Mam na swoim koncie kilka mniej popularnych narzędzi, ale także moje najmłodsze dziecko - port NetSurf dla AmigaOS 4.x.

Jakich Amig używasz?

AmigaOne G4-XE, 800 MHz, 512 MB RAM z AmigaOS 4.1. To jedna z tych nielicznych, które mają możliwość pracować z taktowaniem 933 MHz, lecz nie odważyłbym się tak jej podkręcić! Mam również A1200 z AmigaOS 3.5, lecz nie pamiętam kiedy ją ostatni raz włączałem.

W jakich okolicznościach zainteresowałeś się Amigą?

Mój tata kupił jeden egzemplarz. W chwili gdy stał nie używany, przejmowałem go głównie, aby pograć w "Lemmings". Wkrótce nabyłem swój własny i tak nakręciła się ta machina.

Czym jest NetSurf?

NetSurf to szybka, oparta na kodzie open source, przeglądarka internetowa obsługująca CSS, która pierwotnie powstała dla systemu operacyjnego RISC (wykorzystywany w komputerach Archimedes/RiscPC autorstwa firmy Acorn, które były popularne w szkołach w Wielkiej Brytanii - historia tego systemu i komputera bardzo przypominają realia Amigi).

Pracowałeś nad portem w tajemnicy. Od jak dawna?

To chyba jedna z najsłabiej utrzymanych tajemnic świata! Prace rozpocząłem w lipcu.

Dlaczego NetSurf? Co jest w nim takiego nadzwyczajnego, co sprawiło, że postanowiłeś się nim zająć?

Kilka lat temu przygotowałem port emulatora o nazwie "ArcEm" (więcej) i działał na nim NetSurf pod kontrolą RISC OS (raczej wolno, ale działał). Następnie ktoś w jednym z wielu podobnych wątków na forum AmigaWorld.net zapytał "dlaczego ktoś tego nie przeportuje". Do tego momentu, pomimo tego, że programu używałem i nawet kiedyś przyglądałem się jego źródłom, nie zdawałem sobie nawet sprawy jak łatwo jest przenosić kod NetSurf pomiędzy różnymi platformami. Edgar Schwan bardzo szybko przygotował kompilację dla AmigaOS 4.x pod środowisko X11, więc pomyślałem, że przyjrzę się temu. Spodziewałem się, że projekt skończy tak jak wiele innych - na stale powiększającej się górze oprogramowania, które zacząłem pisać/portować, aby wkrótce porzucić prace. Niemniej uzyskana pomoc z listy dyskusyjnej dla deweloperów była bardzo pomocna i nie zajęło zbyt wiele czasu pomyślne skompilowanie programu oraz dodanie bardzo prostego GUI do jego obsługi.

Jakie dodatkowe funkcje planujesz dodać do portu NetSurf, czego na próżno szukać w oryginale?

Ostatnia wersja beta zawiera w zasadzie wszystko, czego można się spodziewać. Wysoki priorytet postawiłem na wyszukiwanie tekstu oraz na bardzo użyteczną funkcję wczytywania plików z dysków lokalnych. W wersji, którą obecnie skompilowałem dodane zostało menu kontekstowe. Moduł ustawień również wymaga sporo pracy (obecnie ustawienie zmienia się modyfikując plik tekstowy). Poza tym jest mnóstwo błędów i rozwiązań tymczasowych, które muszą być poprawione (np. ramki otwierają się w osobnych oknach).

Jak według Ciebie, amigowa wersja NetSurf wyewoluuje ponad oryginał?

Gdy już wszystkie zakładane funkcje będą działały prawidłowo i bezbłędnie, program raczej będzie podążał zgodnie ze ścieżką rozwoju oryginalnego kodu.

Jak przedstawia się obsługa Flasha? Już działa, będzie działać?

W tej chwili nie działa. Wraz z tym jak Flash przeszedł na open source, a jego biblioteki są już dostępne, jestem pewien, że w przyszłości obsługa tego elementu będzie dodana. Niemniej jednak, jest to funkcjonalność, która będzie musiała być dodana na poziomie oryginalnego kodu, tak więc nie ja się będę tym zajmował.

Nad NetSurf pracuje pewna grupa osób. Dlaczego nie zdecydowaliście się raczej wesprzeć autora OWB lub spróbować sił z nieco bardziej zaawansowanym projektem?

OWB to wspaniała przeglądarka i z całą pewnością posiada najlepszy silnik wyświetlania stron jaki mógł się trafić amigowej przeglądarce. Niemniej, program ten zaprojektowany został z myślą o urządzeniach przenośnych i dodanie jakiegokolwiek elementu wiąże się tak naprawdę z napisaniem go od początku. Silnik wyświetlania jest ukończony, lecz wolny. Samo uruchomienie OWB trwa kilka sekund. NetSurf posiada indywidualny silnik wyświetlania zaprojektowany tak, aby był bardzo szybki (programiści RISC OS są bardzo podobni do programistów AmigaOS z punktu widzenia optymalizacji kodu), lecz z punktu widzenia rozwoju tego projektu, nadal trochę mu brakuje. Zaprojektowany został z myślą o komputerach desktop, tak więc takie elementy jak książka adresów URL, menadżer pobierania plików itd. są już zaimplementowane i wymagają jedynie niewielkich dostosowań do realiów AmigaOS. W ten sposób udało mi się bardzo szybko dostosować go do stanu, w który przypomina przeglądarkę zapewniającą minimalny standard.

Sytuacja związana z przeglądarkami dla AmigaOS 4.x jest dosyć zabawna. Długo nie było nic, lecz nagle mamy ich przysłowiowe "dziesięć". Czy nie zgodzisz się ze mną, że zamiast pracować nad wieloma, programiści powinni złączyć siły i stworzyć jeden, ale dobry produkt?

Tak, ale tylko do pewnego stopnia. Jak wiadomo, odrobina konkurencji wśród przeglądarek internetowych tylko przyspiesza ich rozwój i prawdopodobnie wkrótce będziemy mieć do wyboru kilka naprawdę dobrych programów. Poza tym wydaje mi się, że deptalibyśmy sobie po piętach, gdyż wszyscy grzebalibyśmy w kodzie AWeba, jako że jest to jedyny, o którym chociaż w połowie wiemy jak działa :-)

Obecnie dla AmigaOS 4.x są trzy natywne przeglądarki i każda z nich posiada inne zalety. AWeb posiada najlepszy, bogaty w wiele funkcji interfejs użytkownika. Program jest szybki, w 100% amigowy, lecz nie obsługuje CSS. OWB z kolei, posiada najlepszy silnik wyświetlania z obsługą CSS, lecz jest wolny, a jego interfejs użytkownika bardzo prosty, minimalistyczny. NetSurf z kolei wypada gdzieś po środku - interfejs użytkownika zapewnia podstawową funkcjonalność w zakresie tego, czego może potrzebować użytkownik. Silnik wyświetlania jest szybki i obsługuje CSS. Niestety nie jest kompletny w kilku miejscach (np. na chwilę obecną brak obsługi JavaScript).

Czy są szanse na to, aby NetSurf pojawił się dla AmigaOS 3.X, MorphOS-a lub AROS-a?

Pierwotnie rozpocząłem prace nad NetSurf pisząc go w taki sposób, aby działał pod AmigaOS 3.x - to tak na wypadek, gdyby ktoś chciał go przeportować. Wkrótce jednak okazało się to mało praktyczne, gdyż wiele elementów, które chciałem zaimplementować dostępnych jest wyłącznie pod AmigaOS 4.x lub sposób ich rozwiązania był o wiele lepszy pod AmigaOS 4.x. Nie twierdzę jednak, że wersja dla AmigaOS 3.x nie jest możliwa - wymaga jednak dużo pracy. Prędkość działania NetSurf jest porównywalna z AWebem i powinna się sprawdzić pod klasycznym sprzętem na jakim działa AmigaOS 3.x. Kilka osób interesowało się już portem dla tego systemu, lecz póki co nic z tego jeszcze nie wyszło.

MorphOS i AROS mają problem z przywiązaniem do MUI jako ich natywnego interfejsu użytkownika. Kontaktowano się już ze mną w sprawie portu dla AROS-a, zaoferowałem swoją pomoc, lecz trzeba mieć świadomość, że korzystając z MUI (lub Zune) większość pracy z tym związanej trzeba wykonać samemu. Dla użytkowników MorphOS-a będzie lepiej, jeżeli będą trzymać się Sputnika. No chyba, że ktoś bardzo chce spróbować swoich sił.

Masz w planach dalszy rozwój programu Wet?

Tak, lecz na chwilę obecną odłożyłem go nieco. Zamierzam uaktualnić nieco kod odpowiedzialny za łączność z serwerami HTTP, aby był zgodny z http-handler (kod HTTP zaimplementowany w Wet nie obsługuje poprawnie HTTP/1.1). Chciałbym także stworzyć system wtyczek oparty na ARexx, aby Wet mógł pobierać dane z innych źródeł.

Wyobraźmy sobie, że pomyślnie ukończyłeś port NetSurf. Jesteś zadowolony z rezultatu. Co będzie następne? Jakim programem chciałbyś się zainteresować? A może już taki jest? Coś co będziesz portował, czy pisał od podstaw?

Nie potrafię wyobrazić sobie sytuacji, że ludzie nie będą mnie nagabywać, abym dodawał nowe elementy do tego programu, ale jeżeli już, to zajmę się programem Wet, o którym wspomniałem wcześniej. Później zobaczymy co wyjdzie. Nie zwykłem robić planów - coś we mnie drgnie i będzie się zastanawiał "a co jeżeli...". Skończy się to tym, że nie będę mógł spać przez kolejne trzy noce do chwili, gdy nie zacznę nad tym pracować po nocach.

Czy mógłbyś opowiedzieć nieco więcej na temat "stale powiększającej się góry oprogramowania, którego nie byłeś w stanie dokończyć"? Co to za programy? Które są bliskie ukończenia, a które chciałbyś ukończyć?

Szybki rzut okiem na ten katalog i widzimy:

DTZ - wspólny projekt, nad którym pracuję wraz z Russellem Gloverem i Juha Niemimaki. Planujemy przenieść dla AmigaOS 4.x niezbyt znaną, tajemniczą grę dla konsoli Saturn "Death Tank Zwei". Mamy już nadające się do czegoś techniczne demo: możesz się przemieszczać i strzelać pikselami niszcząc fragmenty losowo generowane krajobrazu.
Triffic - mały programik, który śledzi informacje na temat wycieczek. Działa on podobnie jak Wet. Na tę chwilę pobierane są dane z ostatnich ofert ze strony BBC.
Mam też kilka innych jak np. sterownik dla AmigaInput dla podłączanych pod port równoległy joypadów CD32, MailNotifyDocky, wtyczka XMP dla TuneNet, długo oczekiwana nowa wersja FactsPPC, która jednak nigdy się nie pojawi (choć prawdopodobne jest pojawienie się kompilacji dla AmigaOS 4.x starszej wersji) oraz masa innych portów (nawet przeglądarka plików AmigaGuide, choć nie wiem dlaczego). Brakuje mi cierpliwości do portów - jeśli się nie kompilują takie jakie są lub gdy ich naprawdę nie potrzebuję, to szybko porzucam temat. Z drugiej strony nie lubię takich "zwykłych" portów - zawsze staram się dodawać jakiś amigowy element, nawet jeśli to tylko zamiana jakichś kiepskich SDL-owych okien wyboru plików przez ich ASL-owy odpowiednik. Ogólnie jednak rzecz biorąc, preferuję pracę nad własnymi rzeczami. Niektóre rzeczy, które w założeniu mają być "rozszerzoną wersją portu", przeobrażają się w formy pisane od podstaw, zwłaszcza wtedy, gdy nie mogę rozszyfrować oryginalnego kodu lub nie jest on zbyt elastyczny na moje potrzeby.

Większość moich projektów zostaje wydanych w takiej bądź innej formie. Jeśli kiszą się na moim dysku, ale w jakiś sposób nadają się do użytkowania, wrzucam je na sieć z zamiarem dalszej nad nimi pracy lub dołączam kod źródłowy i wyraźnie zaznaczam, że nie będę się już tym więcej zajmował (co oczywiście nie powstrzymuje ludzi przez dalszym zgłaszaniem błędów - przysięgam, że dostaję więcej zgłoszeń odnośnie programów, którymi się już nie zajmuję).

Co sądzisz na temat całej sytuacji wokół AmigaOS 4.x i Hyperion Entertainment?

Hyperion Entertainment odwala kawał naprawdę dobrej roboty wokół AmigaOS 4.x. Wstyd tylko, że z powodów prawnych ich praca jest blokowana.

Czym interesujesz się poza Amigą? Masz jeszcze jakieś hobby?

Chciałbym powiedzieć coś nietypowego, ale prawda jest taka, że lubię czytać, spać, jeść i chodzić na kabarety. A, no i jeszcze grać na moim Wii.

Jakie są Twoje najlepsze i najgorsze amigowe wspomnienia?

Autobus oderwał mi drzwi samochodu, gdy wkładałem do środka AmigaOne. To by było to złe. O wiele więcej było dobrych wspomnień, lecz po upadku Commodore, mój optymizm jest bardzo krótkotrwały.

Czy chciałbyś coś powiedzieć na zakończenie?

Jeśli jest jakiś program, którego używasz na codzień lub bardzo często, powiedz osobie, która go stworzyła jak bardzo go lubisz. I jeszcze jedno - kupujcie SAM440 i AmigaOS 4.1.

Dziękuję za poświęcony na udzielenie odpowiedzi czas. Życzę powodzenia w pracy nad obecnymi i przyszłymi projektami.

Tłumaczenie: Sebastian Rosa

    
dodaj komentarz
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem