Jan Fiala: PSPad je koníček a ten neprodám

16. 6. 2009
Doba čtení: 8 minut

Sdílet

Jan Fiala je autorem známého českého programátorského editoru PSPad. Ten je využíván mnoha vývojáři po celém světě. Vyzpovídali jsme jeho autora a zeptali jsme se ho, zda hodlá někdy otevřít zdrojové kódy či přepsat PSPad pro Linux. Za jakou částku by Jan Fiala celý projekt prodal? Proč je to freeware?

Ako vznikol PSPad? Pamätáš si ten okamžik, kedy si ho prvýkrát skompiloval?

PSPad vzniknul někdy koncem roku 2001. První kompilace nebyl žádný slavný okamžik, v té době jsem si psal nástroj pro sebe, nepočítal jsem s tím, že budu dělat ostudu po celém světě.

Máš recept, ako spraviť slávny soft?

Co znamená slavný soft? Je to soft, který vyhraje nějakou cenu? Nebo je to soft, který je známý? V prvním případě neporadím. V tom druhém se podělit se zkušenostmi můžu. Pokud chcete, aby nějaký software byl rozšířený, je třeba komunikovat s uživateli a v rámci možností plnit jejich přání, vývoji věnovat velikou spoustu času a vydržet. Žádný soft nebude slavný za půl roku. To je moc krátká doba na to, aby se dostatečně rozšířil.

Jan Fiala o sobě…


Po studiu VUT jsem se vrhl místo na telefonní ústředny na počítače. V té době to bylo ve světě počítačů mnohem zajímavější. Byla to doba MS-DOSu, DrDosu, apod. Kdo měl 386 s matematickým koprocesorem, byl král. Pak jsem nastoupil do firmy, která se programováním živí a tam jsem dodnes. Co se týká soukromí, tak ženatý jsem a potomka už také mám.

Posledná verzia je z 2007. Zlé jazyky tvrdia, že vývoj sa zastavil. Taktiež sa často objavuješ na programátorských fórach. Netrpí tím vývoj?

Poslední plná verze je skutečně z konce roku 2007. Stydím se, ale je to tím, jak málo volného času mám. Ve fóru jsou průběžně zveřejňovány veřejné vývojové buildy, poslední je z 12.května 2009, takže vývoj se nezastavil. A ve fóru je dále vidět, že PSPad má stále uživatele, kteří si neustále vymýšlí něco nového.

Jan Fiala

Těch programátorských fór na které chodím zase tolik není. Je to takové odreagování se a vývoj tím určitě netrpí. Ale je tam krásně vidět přístup nastupující generace – všechno hned a pokud možno bez práce a nějakého přemýšlení. A pokud nedodáš hotový zdrojový kód, který si mohou přidat ke svému slepenci, který různě posbírali a sami neví, co vlastně dělá, dostaneš vynadáno.

Koľko riadkov má PSPad? Mohol by si poodhaliť nejakú časť zdrojového kódu?

Počet řádků se těžko určuje, překladač oznámí, že přeložil 367 882 řádků, ale jsou v tom komponenty a knihovny, které jsem nepsal. Takže pokud vezmu zdrojové kódy, které jsem vyprodukoval, je toho necelých 5,5 MB kódu.

Prohlédněte si část zdrojového kódu programu PSPad, která řeší autodetekci použitého kódování.

Bude PSPad open source?

Tohle je hodně častá otázka. Ale lidé, kteří se na ni ptají, si neuvědomují pár věcí. Já bych nechtěl ztratit nad projektem kontrolu. Takže kromě toho, že bych musel projekt řídit, bych musel kontrolovat i všechny změny, které se tam budou ze spousty míst provádět. V této chvíli je to pro mne časově neproveditelné. Na druhou stranu, pokud bych se někdy rozhodl vývoj ukončit, určitě bych zdrojový kód zveřejnil.

Vývoj zaberá veľa času. Čo na to manželka?

Manželka programátora to odnáší vždy. Programování, ať už jako zaměstnání nebo jako koníček, zabírá hodně času – nikdy to není hotové, pořád je co dělat. Ale nejde jen o vlastní programování. Každý den jsou to řádově hodiny strávené podporou uživatelů – odpovídáním na e-maily a dotazy ve fóru. Zopakuji, co jsem už jednou napsal – pokud chcete, aby váš projekt byl úspěšný, musíte komunikovat s uživateli a poskytovat jim podporu.

Kedy programuješ? Máš obľúbené hodiny, dni? Čo je pre teba inšpiráciou?

Nemám oblíbené hodiny, ani dny. V poslední době programuju, pokud najdu volnou chvíli. A inspirací nebo spíš hnacím motorem je pochvala uživatelů.

Na stránke máš donátorov, taktiež sa zobrazuje „Kagi donation“ pri spustení. Prináša to financie na tvorbu? Dá sa z toho platiť hypotéka?

Na stránce si každý může velmi snadno sečíst, kolik peněz z dotací přichází. KaGi fungovalo v době, kdy PayPal nepodporoval ještě ČR. V současné době je 99 % dotací zasílána přes PayPal.

Informace pro ty, kteří uvažují, že by z dotací zbohatli. Počet stažení PSPadu je kolem 60 000 měsíčně. Počet dotací měsíčně se pohybuje kolem 15. Takže počítejte s jednou dotací na 4000 uživatelů.

A jestli se z toho dá platit hypotéka? Určitě, pokud se vám ji podaří s bankou uzavřít tak, že splácíte stokoruny měsíčně.

Kedy si si uvedomil, že PSPad už nie je tvoja hračka, ale program s množstvom užívatelov?

To se velmi rychle pozná – začnou chodit e-maily s chybovými hlášeními ze všech koutů světa.

Ako vidíš pozíciu Borlandu?

V dnešní době je to spíše již Embarcadero. Delphi je krásný příklad toho, jak se dá dobrý produkt pohřbít nevhodnou obchodní strategií. Z mého pohledu má Delphi stále co nabídnout, ale je třeba se řídit požadavky trhu. Takže vývojáři v Delphi jsou spíše hledáni na udržování nebo rozvíjení existujících systémů než na tvorbu nových. Tam se na desktopu stále více uplatňuje C# (Javisti prominou).

Ešte stále pracuješ na PSPade sám? Čo znamená skratka PSPad?

Ano, PSPad je stále „one man show“. Ke jménu: PS jsou iniciály firmy, Pad je blok. V době, kdy PSPad vznikal, jsem nad jménem nepřemýšlel, ani jsem nepřemýšlel nad tím, že bych jej pustil do světa. A jakmile se něco do světa dostane, už se jméno hodně těžko mění.

Stane sa, že sám autor nevie, čo je v PSPade implementované a je príjemne prekvapený funkcionalitou?

Samozřejmě, uživatelé vždy něčím překvapí. Ale mám dobrou paměť (zatím), takže spíš překvapuji já uživatele.

Na akej zostave programuješ?

Používám notebook a zvykl jsem si i na notebookovou klávesnici. Takže bez externí klávesnice i monitoru. V současné době je to Lenovo R500.

Cítiš sa byť celebritou?

Za celebritu se nepovažuju. Ale určitě mne potěší, když vidím, kde všude na PSPad narazím, ať už osobně, nebo z reakcí uživatelů. Řekněte, nepotěšilo by vás, když vám napíší, že váš výtvor nasadili v nějaké větší firmě na 3000 stanic?

Uvažuješ nad resource editorom (RC, DFM súbory)?

RC jsou zdrojové soubory pro resource – jsou to obyčejné textové soubory, takže v PSPadu editovat jdou. DFM soubory jsou definice formulářů Delphi. Jsou uloženy v textové podobě, pokud si to uživatel přeje, takže není problém je v PSPadu editovat. Pokud by někdo chtěl editovat (i vizuálně) zkompilované resource soubory, je k dispozici spousta kvalitních nástrojů – můžeme začít např. Resource Hackerem.

PSPad má možnosť integrovať kompiler, bude aj debuger?

Zatím jsem o této možnosti neuvažoval. Debugování kódu se velmi těžko dělá obecně bez toho, že dopředu víte, co vše bude třeba.

Užívatelia požadujú rôzne funkcie IDE. Pôjde PSPad cestou IDE, alebo zostane len textovým editorom?

PSPad je obecný textový editor. IDE se týká vždy konkrétního programovacího jazyka, případně skupiny jazyků, jako .NET. Opravdu si myslíte, že je v silách jednotlivce napsat obecné IDE?

Bude niekedy verzia pro Linux?

Ne.

A čo editácia veľkých súborov?

Pro editaci velkých souborů (bavíme se o stovkách MB) není PSPad určen. Kolik lidí potřebuje tyto soubory opravdu editovat a nejen prohlížet?

Bude mať PSPad niekedy Intellisense?

Intellisense je kapitola sama pro sebe. Zkusme se zamyslet, jak fungují IDE, které opravdovou intellisense nabízejí. Už v průběhu psaní kódu probíhá na pozadí sémantická kontrola, kompilace, v paměti máte načten jmenný prostor programovacího jazyka, takže IDE ví, co v té chvíli může nabídnout. Tohle PSPad nebude umět nikdy – a nevím o podobném srovnatelném obecném editoru, který by opravdový intellisense nabízel.

A Code Folding?

Code Folding – tohle je věc, kterou musí podporovat základní komponenta. Možná to teď vypadá jako chyba, že pro PSPad jsem zvolil open-source komponentu Synedit, ale v té době to byla dobrá volba. Zatím to nevypadá, že by byl code folding do Syneditu zapracován. Objevují se náznaky řešení, ale výsledkem je hodně pomalé vykreslování, takže v současné době je to nepoužitelné.

A čo stlpcový režim ala UltraEdit?

Sloupcový režim bude. Doufám, že tato stručná odpověď stačí.

Z akých editorov čerpáš nápady? Ešte stále sa neporovnávaš s konkurenciou?

Možná to někomu bude připadat divné, ale už hodně dlouho jsem nemel spuštěný konkurenční editor, abych zjišťoval, co bych mohl udělat. Ale stačí se podívat do fóra a hned uvidíte, kde se berou nápady na nové funkce.

Dostal si niekedy zaujímavú pracovnú (finančnú) ponuku vďaka tvojím aktivitám s PSPadom?

Několik nabídek bylo. Dokonce se objevila jedna velmi zajímavá nabídka ze zahraničí na odkup celého projektu. Byla to nabídka za kompletní projekt včetně domény, programu apod. V přepočtu to dělalo asi 400 000 Kč. Údajně měl program zůstat jako freeware, ale byly tam nějaké drobnosti, které se mi nezdály. A jestli bych byl ochotny jej prodat? To opravdu nevím. Přece jen je to koníček a takové věci se neprodávají.

Čo ťa najviac trápi ako autora z hľadiska funkcionality programu?

Pořád je hodně věcí, které potřebují předělat, dodělat nebo dotáhnout do konce. Můžeme začít projekty, kde uživatelé chtějí. Podporu FTP přímo v projektu, synchronizace se serverem, více informací o jednotlivých souborech. Pokračovat můžeme nahrazováním s regulárními výrazy, kde se nahrazování nových řádků musí obcházet hledáním od konce atd. Prostě práce je stále spousta.

Načo sa môžu užívatelia tešiť v ďalšej verzii? Aké sú tvoje plány do budúcnosti?

Moje plány do budoucna nebo moje plány do budoucna s PSPadem? Co se týká PSpadu, rozhodně bych chtěl dotáhnout věci, které mi vadí a které jsou popsány o kousek výš. A uživatelům už velmi dlouho dlužím novou verzi. Takže opravím ještě nějaké nahlášené chyby, vydám novou verzi a pak začnu pracovat na nové funkčnosti.

Další věcí, která s PSPadem souvisí je zavedení bug management systému, kde by se problémy a nápady lépe evidovaly. Už jsem se po nějakých systémech díval. Teď jen najít čas na vyzkoušení a konfiguraci.

ict ve školství 24

Za čitateľov Root.cz ďakujem za rozhovor.

Poznámka: Dokument bol písaný v PSPade ;o)

Autor článku