• Richard Barfoot (Styczeń 2008)

18.01.2008 11:06, autor artykułu: Tłumaczenie: Sebastian Rosa
odsłon: 3304, powiększ obrazki, wersja do wydruku,

Na początek, mógłbyś się przedstawić? Gdzie mieszkasz i jak rozpoczęła się Twoja przygoda z Amigą?

Raczej zaliczam się do typowych, angielskich użytkowników Amigi: zbliżam się do 40-tki, posiadam rodzinę, pracę i wszystko to, co jest z tym powiązane. Przez 10 lat nauczałem nowoczesnych języków, lecz obecnie pracuję jako nauczyciel w ICT, w rodzinnym mieście Shakespeare'a Stratford nad rzeką Avon.

Wychowałem się w czasach komputerów 8-bitowych, lecz możliwości dostępnej w latach 80-tych A500 sprawiły, że dosłownie oniemiałem. Skok z 8-miu do 16-stu bitów był najprawdopodobniej największym przełomem technologicznym jaki kiedykolwiek widzieliśmy. To chyba właśnie to, te pierwsze zachłyśnięcie się możliwościami, sprawiło, że nadal tkwię przy tej umierającej platformie (nadal jednak darzę także sentymentem Orica, a więc zapewne jestem odosobnionym przypadkiem). Od tamtej pory interesuję się Amigą, a od pięciu lat jestem posiadaczem AmigaOne SE.

Dlaczego i w jakich okolicznościach zostałeś programistą? Czy to był sposób na to, aby robić coś innego, coś dla innych? A może po prostu lubisz/lubiłeś uczyć się języków programowania albo potrzebowałeś programu, którego nikt przed Tobą jeszcze nie stworzył?

Gdy miałem 12 lat zacząłem bawić się w programowanie (głównie BASIC i proste rzeczy w C). Nigdy jednak nie udało mi się stworzyć żadnego większego programu. Kilka lat temu zapisałem się na studia magisterskie na uniwersytecie, gdzie nauczyłem się "poprawnie" używać języka C. Początkowo MindSpace planowany był dla Linuksa, lecz za sprawą konkursu zorganizowanego przez Elwooda rozpocząłem projekt w wersji dla Amigi. Ani na jedną, ani na drugą platformę raczej nie było małego, łatwego w użyciu narzędzia do kreślenia schematów. Dobrym pomysłem wydawało się więc stworzenie go. W pracy zawodowej tworzę wiele diagramów, schematów, map myśli. Dostępne dla Linuksa narzędzia nie podobały mi się, a AmigaOS 4.0 w ogóle nie posiadał czegoś takiego (gdy zaczynałem projekt, Draw Studio nie działało na tym systemie prawidłowo). Po dwóch latach pracy, MindSpace nabrał kształtów i nadaje się do rozsądnego użytkowania.

Jak już wspomniałeś, amigowa wersja MindSpace narodziła się głównie w wyniku chęci wzięcia udziału w konkursie zorganizowanym prawie trzy lata temu przez serwis IntuitionBase. Nie wygrałeś, lecz zająłeś drugie miejsce, co jest równie dobrym osiągnięciem. Czy było trudno wyrobić się z projektem na czas, czy też w ogóle się tym faktem nie przejmowałeś? Czy było coś, co specjalnie Cię motywowało?

Hehe. Z konkursem była ciekawa historia. Jak to bywa, tylko dwa projekty zostały nadesłane na konkurs: RockBeat Jamesa Carrolla oraz mój MindSpace. Ze swoim programem spóźniłem się jeden dzień, głównie z powodu zamieszania jakie powstało. Nie określono dokładnie czy termin nadsyłania prac dotyczył północy rozpoczynającej czy kończącej dzień.

Elwood zgodził się jednak, aby MindSpace zajął drugie miejsce. Poprosiłem go jednocześnie, aby nagrodę, która mi przypadła przeznaczył na szczytny cel. Dostępna wtedy wersja 0.2 programu była tak niemiłosiernie prymitywna, że tak czy owak, przegrałaby z RockBeat.

Rozwój programu w tamtym czasie był znacznie szybszy. Zawodowo pracowałem nie na cały etat, a w dodatku projekt MindSpace wykorzystałem na studiach, o których wspominałem. Nie było więc trudno przekonać żonę, że "robię coś bo muszę". Teraz jest mi znacznie trudniej znaleźć czas. Pracuję na pełen etat, a żona wie, że studia skończyłem!

Wspomniałeś, że w pracy zawodowej masz do czynienia z diagramami i mapami myśli. Narzędzia, których używasz, są zapewne o wiele bardziej zaawansowane. Czy próbujesz MindSpace upodobnić do czegoś, czy też jest to całkowicie Twoja własna koncepcja opierająca się jedynie na ogólnym pomyśle i zarysie innych narzędzi? A może MindSpace posiada pewne cechy, z których jesteś szczególnie dumny, gdyż inne programy ich nie mają?

Inspiration to jeden z programów dla Windowsa, którego używam w pracy. Jest dosyć popularny w angielskich szkołach. Poza tym jest prosty i szybki w użyciu. Lubię także FreeMind oparty na Java, niemniej wynik pracy przy nim uzyskany nie jest przyjemny dla oka. Wiem o istnieniu naprawdę zaawansowanych narzędzi istniejących dla systemu Windows, lecz nie używałem ich zbyt wiele i wątpię, czy większość z ich skomplikowanych cech jest w ogóle wykorzystywana. Celem, który przyświecał MindSpace, było stworzenie programu, który będzie łączył w sobie możliwości FreeMind i Inspiration, lecz z odrobiną mojej własnej inwencji. Elementem, z którego najbardziej jestem zadowolony, a który stanowi mocny punkt programu, są banki MSO. Pozwalają one tworzyć własne grupy obiektów, które można zapisać i wykorzystać w przyszłych schematach. Przypomina to nieco wycięcie tzw. brusha w programie malarskim, z tą jednak różnicą, że w "banku" można przechowywać grupy obiektów należące do jednego rodzaju. Bankami można też łatwo wymieniać się z innymi użytkownikami. Dla przykładu, pierwsza wersja MindSpace dostarczana jest wraz z bankiem obiektów nutowych oraz sprzętu komputerowego. Stworzone one zostały przez użytkowników programu. Mam nadzieję, że więcej użytkowników nadeśle banki obiektów, które będzie można dołączyć do przyszłych wersji programu.

Nie licząc tego, co możemy przeczytać na stronie programu (procedury wygładzania, obracanie obiektów, obsługa datatypów), czego możemy spodziewać się w kolejnych wersjach MindSpace? Czy jest coś, co chciałbyś dodać do programu?

Informacje na stronie są bardzo nieaktualne. Większość elementów wspomnianych tam jako "plany na przyszłość" już została zaimplementowana: obracanie obiektów i obsługa datatypów jest dostępna od jakiegoś czasu. MindSpace potrafi zapisywać projekty jako obrazki w formacie IFF i w tym celu wykorzystuje systemowe procedury. Do zapisu w formatach PNG, PDF i PS wykorzystywane są jednak narzędzia z pakietu svgtools. Powienienem dodać systemowe procedury zapisu do tych formatów, jak również do formatu JPG oraz EPS (ten ostatni umożliwiłby wstawianie rysunków z MindSpace w dokumenty programów Final Writer i WordWorth).

Procedury wygładzania to po części taki "hack". Opierają się one na datatypie SVG, który nie działa na AmigaOS 4.0 Final. Napisanie moich własnych procedur jest nie na moje siły, więc w tej kwestii nie ma co liczyć na wiele. Musimy cierpliwie czekać albo na uaktualnienie datatypu SVG, albo uaktualnienie Cairo, który jednocześnie stanie się znacznie bardziej przystępny dla programistów.

Co do przyszłości, niewiele pozostaje do zrobienia jeśli chodzi o MindSpace 1: w zasadzie to program jest ukończony - pozwala mi zrobić to, czego potrzebuję oraz posiada wiele cech, które oryginalnie nigdy nie były planowane. To oznacza, że całą pracę mogę zacząć ponownie od początku: MindSpace 2 raczej będzie czymś w rodzaju programu InkScape niż narzędziem do rysowania map myśli. Mam nadzieję, że jeżeli wszystko dobrze sobie rozplanuję i zaprojektuję, dla AmigaOS 4.0 ma szansę pojawić się namiastka aplikacji do rysowania wektorowego.

Czy MindSpace ma szansę zaistnieć dla innych systemów (AmigaOS 3.x, MorphOS, AROS)? W przeszłości wspominałeś o wersji 68k, lecz chyba ten pomysł został porzucony.

Daaawno temu trwały prace nad wersją 68k. Odpowiedzialny był za to mój kolega. Pojawiły się jednak problemy z budową GUI pod AmigaOS 3.x, więc projekt został przerwany.

Odnosząc się do portu MindSpace 1 dla innych platform, dużym problemem jest brak czasu i ilość specyficznych dla AmigaOS 4.0 odwołań w kodzie programu. MindSpace 1 pozostanie programem dostępnym tylko dla AmigaOS 4.0.

W przypadku wersji drugiej przewiduję całkowite przepisanie kodu. Głównie pozbycie się abstrakcyjnych wywołań systemowych. Chcę to zrobić głównie dlatego, aby był możliwy port MindSpace na laptopa XD. Z drugiej strony będzie to także oznaczać, że wersja dla 68k stanie się realna i na pewno używalna pod UAE. Nie jestem pewien, czy jest zapotrzebowanie na taki program dla systemu MorphOS, gdyż z tego co wiem, Kronos pracuje nad swoim własnym programem o nazwie SteAmDraw. Jest to chyba bardziej odpowiednie rozwiązanie.

Czy mógłbyś podzielić się z naszymi czytelnikami informacją na temat liczby zarejestrowanych użytkowników programu? W przeciwieństwie do niezarejestrowanych, czy mogą oni w przyszłości liczyć na jakieś szczególne "korzyści"? Czy planujesz jakieś konkursy lub coś podobnego dla zarejestrowanych użytkowników?

Biorąc pod uwagę niewielką bazę użytkowników AmigaOS 4.0, jestem zadowolony z ilości osób, które zarejestrowały mój program. Znaczna większość osób zarejestrowała się głównie dlatego, aby wesprzeć prace nad projektem i nawet pewnie nie korzystają z programu zbyt często. To bardzo miłe, podobnie jak i ogólne komentarze o programie, nadsyłane raporty błędów czy przykładowe rysunki. Wszystkie pieniądze uzyskane z rejestracji programu MindSpace trafiają z powrotem do społeczności, gdyż to z nich dofinansowuje projekty dla AmigaOS 4.0 i portale internetowe.

Nie będzie już więcej żadnych wersji demonstracyjnych programu MindSpace. Wkrótce rozpocznę prace nad wersją 2. Każdy kto będzie chciał mieć wersję wolną od zgłoszonych błędów, będzie musiał program zarejestrować. Wersja 1.0 będzie rozwijana, lecz tylko w zakresie poprawek zauważonych błędów. Wersja zarejestrowana jest także bardziej stabilna od ostatniej wersji demonstracyjnej oraz posiada kilka dodatkowych elementów, takich jak lepsze możliwości zapisu i odczytu oraz bardzo wstępną, a co za tym idzie, zawodną funkcję wygładzania. Planuję również możliwość rysowania podwójnych (i więcej) linii w ramkach tekstowych (szczegóły można zobaczyć na tym obrazku).

Zbliżając się do końca, czy mógłbyś wyjaśnić pochodzenie nazwy programu? Co MindSpace dokładnie oznacza, jak rozumiesz jego nazwę lub jak powinna być rozumiana?

Jest to niejako skrócona forma wyrażenia "przestrzeń do rysowania map myśli" (z ang. "A Space to draw Mind maps"), co było niejako pierwotnym zamysłem dla tego programu. Jest to stosunkowo krótka i chwytliwa nazwa, a w dodatku może się kojarzyć z "InkScape".

Dziękuję bardzo za rozmowę. Życzę wszystkiego dobrego i powodzenia w dalszych pracach nad MindSpace.


W trakcie trwania wywiadu, autor rozpoczął już prace nad MindSpace 2. Napisał o tym kilka dodatkowych informacji, które zamieszczamy poniżej.

Rozpocząłem prace nad MindSpace 2. Program będzie umożliwiał otwarcie jednocześnie wielu dokumentów. Będą one mogły być dłuższe niż jedna strona, a GUI będzie pozwalało uzyskać kilka widoków tego samego dokumentu (zbliżenie w jednym oknie, podgląd całej strony w innym).

Praca praktycznie od zera nad MindSpace 2 ujawniła kilka błędów w kodzie MindSpace 1, które zostały poprawione i zarejestrowani użytkownicy mogą spodziewać się wersji 1.1 już w lutym. Wersja ta będzie wzbogacona także o możliwość importu pliku tekstowego do ramek (przykład na obrazku).

    
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