[Home Page]

Akademický projekt GaMa slouží a vychovává

Povídáme si s ing. Alešem Čepkem, CSc., docentem ČVUT, katedry mapování a kartografie o projektu GaMa.

Co je to vlastně za projekt?

Je to projekt zaměřený na vyrovnání sítí. Mám-li začít hovořit o projektu GaMa, musím se vrátit k tomu, co mi bylo inspirací. Byla to moje osobní zkušenost, kterou jsem získal ve VÚGTK ve výzkumném oddělení ing. Františka Charamzy, CSc., který vytvořil programový systém GEODET. Jedním z programů tohoto systému byl program GETU03 pro vyrovnání místní trigonometrické sítě. Tvrdím, že GEODET byl projekt, který ve své době neměl konkurenci. Dodnes se tu a tam objeví někdo, kdo mi říká, že s ním počítá a vyrovnává sítě. Když přišla první PC, komunikovala v textovém režimu. GEODET byl psán ve Fortranu 77 a komunikoval také pouze na textové úrovni. VÚGTK ale přestal tento projekt podporovat (tuším, že ve VÚGTK prioritu tehdy mělo tzv. ASŘP - "automatizovaný systém řízení socialistického podniku") a systém GEODET proto již nereagoval na nástup platformy Windows.

Na naší fakultě v rámci toho, co učím (informatika, programování) jsem se dostal k jazyku, který se jmenuje C++. Jde o jeden z nejmohutnějších programovacích jazyků současnosti, podporující technologii, které se říká objektové programování. Klíčovým pojmem je OBJEKT. Vytváříme SW, kde spolu komunikují objekty. Moje snaha byla oprášit to, co jsem se naučil u ing. Charamzy (připomenu alespoň aplikace ortogonalizačních algoritmů ve vyrovnávacím počtu) a zároveň na příkladu vyrovnání sítě demonstrovat možnosti a sílu objektového programování. To bylo tedy stručně řečeno motivací pro vznik projektu GaMa, byl pojmenován jako zkratka ze slov geodezie a mapování.

Jsou do projektu zapojeni studenti?

Projekt GaMa vznikl v letech 1998/99. První student, který se mnou spolupracoval, byl ing. Jiří Veselý (na náš obor se přihlásil již jako absolvent elektrotechnické fakulty a dnes pracuje u ing. Poláčka ve Správě centrálních databází ZÚ). Jirka u mne dělal diplomku a v jejím rámci napsal pro projekt GaMa knihovnu C++ tříd pro výpočty přibližných souřadnic. "Přibližky" jsou poněkud opomíjené, ale z programátorského hlediska rozhodně zajímavé téma - a mají velice podstatnou roli. Mimochodem, jeho "přibližky" byly též inspirovány GEODETem - protínání z určujících prvků, kde určujícím prvkem je vnější směrník, úhel, délka mezi dvojicí měřených bodů atd. Je to trošku jiné pojetí, než se běžně učí třeba u nás na škole.

Jak řešíte autorská práva k SW?

Pro další rozvoj projektu bylo důležité to, že jsme se s Jirkou Veselým, který byl prvním spoluautorem, domluvili, že naše řešení zveřejníme pod GNU licencí (GNU je rekurzní zkratka GNU is Not Unix). Duchovním otcem GNU je Richard Stallman, který vycházel z přesvědčení, že SW má být volně šiřitelný, právě tak jako myšlenky se mají šířit volně, bez omezení, bez licence a že SW má být k dispozici včetně zdrojových kódů.

Licencí GNU je několik variant, základní myšlenka je zjednodušeně řečeno tato: kdokoliv si může vzít příslušný zdrojový kód, může jej používat, dokonce jej může využívat i pro komerční účely, může jej modifikovat, ale nesmí upřít autorská práva původním autorům. Tzn. pokud já vezmu nějaký SW, mohu do něj zasáhnout, ale musí být ve zdrojovém kódu uvedeno, kdo je původním autorem a že já jsem přidal tu a tu činnost, provedl ty a ty úpravy. Licence GNU slouží lidem, kteří chtějí poskytnout svůj SW zdarma k volnému použití a zabraňuje, aby je nikdo nemohl připravit o jejich duševní vlastnictví, nenechal si je patentovat a následně autorům neznemožnil používat jejich vlastní produkt.

My jsme začínali s tím, že píšeme stabilní knihovnu, která bude mít platnost řadu let. Tudíž jsme se rozhodli pro GNU knihovní licenci (GNU Library General Public Licence). Tato licence je nejvolnější licencí v sadě GNU licencí. Obecná GNU licence je licence, která říká, že já mohu nakládat s takto licencovaným SW jak chci, ale jestliže použiji software chráněný GNU obecnou licencí ve svém SW, pak musím celek opět zveřejnit pod GNU obecnou licencí. V tomto smyslu je ta GNU licence jedna z nejpřísnějších licencí, které jsou pro volně šiřitelný SW. Protože první verze našeho projektu byla zveřejněna pod GNU knihovní licencí, mohla firma GEPRO použít do svého vyrovnávacího programu KANET (autor Petr Doubrava) naši knihovnu GaMaLib. V tomto smyslu mohu říci, že firma GEPRO využívá naše vyrovnání. Později jsme ale přešli po dohodě se spoluautory na obecnou GNU licenci.

Jakou máte motivaci dělat něco zdarma?

Pro mne je prioritou hlavně vytvořit projekt, který bude žít vlastním životem, který se bude dál rozvíjet a o který bude zájem. Pro mne je prestižní záležitostí, že firma GEPRO používá naše řešení. Není důležité, abych mohl něco někde prodávat. Jeden z motivů, proč se snažím dělat tento úkol, je, abych měl na škole projekt, na kterém se mohou spolupodílet talentovaní studenti, kteří mají vztah k programování, k analýze datových struktur, k počítačům atd. a samozřejmě ke geodezii. Ta geodezie je tam podstatná. Samozřejmě, programátorů je po světě spousta, skvělí profesionální programátoři vycházejí například z Elektrotechnické fakulty nebo Matematicko-fyzikální fakulty UK. V obecné rovině jim pochopitelně nemůžeme konkurovat. Jim ale chybí vztah k našemu oboru a já osobně jsem skálopevně přesvědčen, že nelze oddělit náš obor od programátorského zázemí. Není možné, aby technický obor existoval, byť i jen bez uzounké vrstvy lidí, kteří SW budou sami aktivně vyvíjet. Názory na tuto věc jsou pochopitelně i opačné. Já si ale myslím, že je vhodnější mít alespoň tu malou skupinu lidí, kteří do dané problematiky vidí trochu hlouběji než běžní geodeti.

Utekli jsme od motivace studentů dost daleko.

Takže ještě k těm motivacím. Základní platformou, na které náš projekt vyvíjíme, je operační systém LINUX, což je něco, co tu nemělo obdoby a asi by to bylo na dlouhé povídání. LINUX do značné míry souvisí s fenoménem internetu - bez internetu by LINUX nevznikl, protože by nebylo možné, aby se stovky, tisíce lidí podílely na vývoji toho systému. Podstatnější než technická stránka (možnost komunikace) je, že LINUX, podobně jako internet (minimálně v období než byl zkomercionalizován), nese v sobě jakousi pečeť akademického ducha, byla tam zřetelná idea - myšlenka spolupráce. Když jsme uvažovali o tom, že zveřejníme náš projekt pod GNU licencí, pak motivací nám byl LINUX a závěrečné rozhodnutí ovlivnila tato úvaha - jestliže pracujeme se skvělým systémem, který máme rádi, který nás těší a který je z větší části zveřejněn pod GNU licencí (nejen pod ní), pak by se slušelo, abychom také přidali k pyramidě svůj malinký kamínek.

Když se ještě vrátím k LINUXu a GNU projektu, tak když se mluví o LINUXU, velice často se zapomíná na to, že LINUX by nebyl tím, čím je, kdyby nevyužil vše, co nabízel GNU projekt. To jest v první řadě překladač jazyka C, který umožnil rozvoj dalších programů, kultovní vývojové prostředí Emacs a mnoho dalších programů. Idea GNU byla naší inspirací. Velice brzy se ukázalo, že to byla velice šťastná myšlenka, protože jsme získali možnost zapojit další studenty ochotné pracovat zadarmo, jen aby mohli realizovat své tvůrčí ambice, podporovali ideu volně šiřitelného softwaru, tj. studenty pro které je možnost pracovat na takovémto projektu důležitější, než jít si vydělat nějakou tisícovku tím, že budou pomáhat při měření "geometráků".

Zatím jste představil jen jednoho ze studentů...

Další z těch studentů je Jan Pytel, jeden z nejtalentovanějších programátorů našeho oboru, který napsal první uživatelská rozhraní (WEB GaMa - je k nalezení na www stránkách gama.fsv.cvut.cz/~pytel). Každý, kdo má přístup na internet, si může vyrovnat svoji síť. Vyplní formuláře, seznam bodů, seznam měření, směry, délky, úhly a odešle údaje ke zpracování.

Jde o akademický projekt, takže nejsme vázáni na komerční úspěch, do značné míry máme větší časový prostor pro řešení. Není ale možné, aby takový projekt visel ve vzduchoprázdnu - bez zpětné vazby na uživatele, to nejde. Projekt, který by žil někde v kanceláři. Tudíž máme alespoň vyrovnání na našem serveru GaMa zveřejněno jako mailserver - poštovní službu. Nyní je to jediné základní rozhraní.

Takže kdokoli si bude moci spočítat geodetickou úlohu na vašem serveru zdarma?

To platí už dnes s tím, že základní rozhraní, které je k dispozici, je pouze přes e-mail a pro vytváření vstupních XML dávek máme jednotlivé klienty, kteří jsou vystaveni na webu v našem archivu, ale pořád to není to, co by to mělo být. Je to spíš demonstrační záležitost. Ti klienti jsou k dispozici, fungují, doposud bylo naší hlavní prioritou vyrovnání a ne tvorba uživatelského rozhraní. Plně profesionální grafické rozhraní pro platformu Windows, jak už jsem zmínil, poskytuje komerční KNET Petra Doubravy z GEPRO; na platformově nezávislém volně šiřitelném grafickém rozhraní pracuje Honza Pytel a první funkční verze by měla být k dispozici někdy na podzim.

To Vaše zadarmo najde příznivce, ale i odpůrce....

Všimněme si, že internet expandoval tak rychle, protože jeho technologie byly veřejně k dispozici komukoliv. Spousta internetových technologií vznikla na technických univerzitách a mě vždy fascinovalo, že v USA platí zásada, že co bylo pořízeno za peníze daňových poplatníků, mají mít zase všichni daňoví poplatníci zdarma. Vše, co vzniklo na univerzitách v rámci výzkumu placeného z peněz daňových poplatníků, má být tedy podle tohoto postulátu zdarma. Jestliže já dělám na škole (jsa placen z peněz daňových poplatníků) nějaké vyrovnání, všichni daňoví poplatníci je mají mít zdarma. Jsem zásadně proti tomu, abych já byl na škole placen penězi daňových poplatníků a vyvíjel SW, který budu prodávat. To považuji za nehoráznost. Já osobně v tomto projektu neumím oddělit svoji práci od svého působení na fakultě. Existují pochopitelně případy, kdy to oddělit lze, pokud se na mne například někdo obrátí s problémem a já působím v roli konzultanta apod.

Máte nějaké zahraniční ohlasy?

O stavu projektu, o výuce, o tomto zdroji inspirace pro studenty jsem přednášel na semináři FIG letos v Helsinkách. O příští spolupráci jsem tam jednal především s prof. Henrikem Haggrenem a prof. Martinem Vermeerem, který vede tamní katedru geodezie. Technical University of Helsinki nepochybně patří mezi prestižní univerzity a tak mám velkou radost, že se podařilo domluvit spolupráci a výměnu studentů. Jestli to vše půjde jak má, tak bychom tam příští rok měli poslat dva studenty (doktorandy Petra Součka a Jana Pytla).

Mnohokrát děkuji za rozhovor.

Pozn. red.:
4. 11. byla GaMa pasována (dub) na GNU package. Blahopřejeme!


Chcete si projekt GaMa sami vyzkoušet?


Zajímavé odkazy:
http://gama.fsv.cvut.cz/~cepek
http://gama.fsv.cvut.cz/~cepek/gama/index.html
http://gama.fsv.cvut.cz/~pytel
http://gama.fsv.cvut.cz/~soucek
http://gama.fsv.cvut.cz/~vesely/docs/index.shtml

Radek PETR

vyvěšeno: 3.prosinec 2001


Z časopisu Zeměměřič č. 12/2001
[Server] [Školství] [Software] [Pošta]